比较与tf.arg_min的功能差异

tf.arg_min

tf.arg_min(input, dimension, output_type=tf.dtypes.int64, name=None)

更多内容详见tf.arg_min

mindspore.Tensor.argmin

mindspore.Tensor.argmin(axis=None)

更多内容详见mindspore.Tensor.argmin

使用方式

功能相同,MindSpore和TensorFlow的两接口分别通过参数axisdimension入参决定基于哪个维度返回最小值的索引。

不同点在于,默认状态下,MindSpore的axis=None,返回最小值的全局索引;TensorFlow的dimension不传入数值时,默认返回dimension=0的最小值索引。

代码示例

import mindspore as ms

a = ms.Tensor([[1, 10, 166.32, 62.3], [1, -5, 2, 200]], ms.float32)
print(a.argmin())
print(a.argmin(axis=0))
print(a.argmin(axis=1))
# output:
# 5
# [0 1 1 0]
# [0 1]

import tensorflow as tf
tf.enable_eager_execution()

b = tf.constant([[1, 10, 166.32, 62.3], [1, -5, 2, 200]])
print(tf.argmin(b).numpy())
print(tf.argmin(b, dimension=0).numpy())
print(tf.argmin(b, dimension=1).numpy())
# output:
# [0 1 1 0]
# [0 1 1 0]
# [0 1]