vandanavk commented on a change in pull request #13500: [MXNET-898] ONNX
import/export: Sample_multinomial, ONNX export: Gather, GlobalLpPool, LpPool
URL: https://github.com/apache/incubator-mxnet/pull/13500#discussion_r242664889
##########
File path: python/mxnet/contrib/onnx/mx2onnx/_op_translations.py
##########
@@ -1655,3 +1678,45 @@ def convert_size(node, **kwargs):
and return the created node.
"""
return create_basic_op_node('Size', node, kwargs)
+
+@mx_op.register("_sample_multinomial")
+def convert_multinomial(node, **kwargs):
+ """Map MXNet's multinomial operator attributes to onnx's
+ Multinomial operator and return the created node.
+ """
+ name, input_nodes, attrs = get_inputs(node, kwargs)
+ dtype = onnx.mapping.NP_TYPE_TO_TENSOR_TYPE[np.dtype(attrs.get("dtype",
'int32'))]
+ sample_size = convert_string_to_list(attrs.get("shape", '1'))
+ if len(sample_size) < 2:
+ sample_size = sample_size[-1]
+ else:
+ raise AttributeError("ONNX currently supports integer sample_size
only")
+ node = onnx.helper.make_node(
+ "Multinomial",
+ input_nodes,
+ [name],
+ dtype=dtype,
+ sample_size=sample_size,
+ name=name,
+ )
+ return [node]
+
+
+@mx_op.register("take")
+def convert_gather(node, **kwargs):
+ """Map MXNet's size_array operator attributes to onnx's Size operator
+ and return the created node.
+ """
+ name, input_nodes, attrs = get_inputs(node, kwargs)
+
+ axis = int(attrs.get('axis', '0'))
Review comment:
ONNX's documentation is not very clear about this, but their test comapre
with np.take(), so it looks like an error should be raised when the indices are
out of bounds. MXNet doesn't support 'raise' mode yet
> MXNetError: [10:36:05] src/operator/tensor/./indexing_op.h:688: Raise is
not supported for the time being...
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services