def Transpose(onnx_node, ng_inputs): # type: (NodeWrapper, List[TensorOp]) -> Op
"""Transpose the input tensor similar to numpy.transpose.
By default, reverse the dimensions, but if `perm` attribute is specified
permute the axes according to the values given.
"""
data = ng_inputs[0]
permute_axes = onnx_node.get_attribute_value('perm')
if permute_axes:
input_template = ''.join([ascii_letters[i] for i in range(len(data.axes))])
output_template = ''.join([ascii_letters[i] for i in permute_axes])
ng_op = reorder_axes(data, input_template, output_template)
else:
ng_op = ng.Transpose(data)
return cast_to_pos_axes(ng_op)
评论列表
文章目录