Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何找到张量对象中每一行的最大索引?_Python_Python 3.x_Tensorflow_Pytorch - Fatal编程技术网

Python 如何找到张量对象中每一行的最大索引?

Python 如何找到张量对象中每一行的最大索引?,python,python-3.x,tensorflow,pytorch,Python,Python 3.x,Tensorflow,Pytorch,所以我创建了一个pytorch模型,对于向前传球,我应用我的向前传球方法来得到分数张量,它包含了每门课的预测分数。这个张量的形状是[100,10]。现在,我想通过将它与包含实际分数的y进行比较来获得准确度。这个张量的形状是[100]。为了比较两者,我将使用torch.mean(分数==y)并计算有多少是相同的 问题是,我需要转换分数张量,以便每行只包含每行中最高值的索引。例如,如果张量看起来像这样 tensor( [[0.3232, -0.2321, 0.2332, -0.1231, 0

所以我创建了一个pytorch模型,对于向前传球,我应用我的向前传球方法来得到分数张量,它包含了每门课的预测分数。这个张量的形状是[100,10]。现在,我想通过将它与包含实际分数的y进行比较来获得准确度。这个张量的形状是[100]。为了比较两者,我将使用
torch.mean(分数==y)
并计算有多少是相同的

问题是,我需要转换分数张量,以便每行只包含每行中最高值的索引。例如,如果张量看起来像这样

tensor(
    [[0.3232, -0.2321, 0.2332, -0.1231, 0.2435, 0.6728],

    [0.2323, -0.1231, -0.5321, -0.1452, 0.5435, 0.1722],

    [0.9823, -0.1321, -0.6433, 0.1231, 0.023, 0.0711]]
)
然后我想把它转换成这样

tensor([5, 4, 0])

我怎么能这么做

argmax
与所需的
dim
(也称为轴)一起使用

a = tensor(
    [[0.3232, -0.2321, 0.2332, -0.1231, 0.2435, 0.6728],
    [0.2323, -0.1231, -0.5321, -0.1452, 0.5435, 0.1722],
    [0.9823, -0.1321, -0.6433, 0.1231, 0.023, 0.0711]]
)

a.argmax(1)
# tensor([ 5,  4,  0])