当前位置:网站首页>tensor.eq() tensor.item() tensor.argmax()

tensor.eq() tensor.item() tensor.argmax()

2022-08-09 10:28:00 白十月

tensor.eq()

torch.eq(input, other, *, out=None)

对两个张量Tensor进行逐元素的比较,若相同位置的两个元素相同,则返回True;若不同,返回False。

Parameters(参数):
input :必须是一个Tensor,该张量用于比较
other :可以是一个张量Tensor,也可以是一个值value
return(返回值):返回一个Boolean类型的张量,对两个张量Tensor进行逐元素的比较,若相同位置的两个元素相同,则返回True;若不同,返回False。

import torch
x = torch.tensor([[1, 2], [3, 4]])
y = torch.tensor([[1, 1], [3, 3]])
print(x)
print(y)
out = torch.eq(x, y)
print(out)
out1 = torch.eq(x, y).sum()
print(out1)
out2 = torch.eq(x, y).sum().float()
print(out2)
out3 = torch.eq(x, y).sum().item()
print(out3)

输出为:

tensor([[1, 2],
        [3, 4]])
tensor([[1, 1],
        [3, 3]])
tensor([[ True, False],
        [ True, False]])
tensor(2)
tensor(2.)
2

tensor.item()

item() 返回一个数
该方法的功能是以标准的Python数字的形式来返回这个张量的值.这个方法
只能用于只包含一个元素的张量.对于其他的张量,请查看方法tolist().

tensor.argmax()

返回输入张量中所有元素的最大值的索引。

官方文档:https://pytorch.org/docs/stable/generated/torch.argmax.html

import torch
a = torch.randn(3, 4)

torch.argmax(a)

torch.argmax(a,dim=1)

torch.argmax(a,dim=0)
tensor([[-0.0815,  0.8759, -0.1932,  0.6896],
        [-1.1432, -0.4114, -0.6331,  0.2309],
        [-0.2122,  0.2187,  0.3195, -0.7594]])
        
tensor(1)

tensor([1, 3, 2])

tensor([0, 0, 2, 0])
原网站

版权声明
本文为[白十月]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_43251493/article/details/125906614