我在前两次分别总结了:生成随机数Tensor的几种不同方法,以及常用的Tensor运算。
这次总结的是Tensor比大小的方法。之前见过同学把所有的Tensor都转换为Numpy Array再进行比较,呃…… Tensor本身就可以进行一些比较啦,我把一些函数列出来,以供大家参考,更详细的资料大家可以去阅读官方文档。
等于
torch.equal(tensor1, tensor2) → bool
如果两个张量的尺寸和元素都相同,则返回True,否则返回False。
参数:
- tensor1 (Tensor) – 要比较的张量
- tensor2 (Tensor) – 要比较的张量
例子:
torch.equal(torch.Tensor([1, 2]), torch.Tensor([1, 2]))
True
大于
torch.gt(input, other, out=None) → Tensor
计算 input tensor > other
逐个元素比较输入张量input是否大于另外的张量或浮点数other。若大于则返回为True,否则返回False。
若张量other无法自动扩展成与输入张量input 相同尺寸,则返回为False。
参数:
- input (Tensor) – 要比较的张量
- other (Tensor or float) – 要比较的张量或浮点数
- out (Tensor, optional) – 输出张量,必须是ByteTensor或与输入张量相同。
例子:
torch.gt(torch.Tensor([[1, 2], [3, 4]]), torch.Tensor([[1, 1], [4, 4]]))
0 1
0 0
[torch.ByteTensor of size 2×2]
大于等于
torch.ge(input, other, out=None) → Tensor
计算 input tensor >= other
逐个元素比较输入张量input是否大于或等于另外的张量或浮点数other。若大于或等于则返回为True,否则返回False。
若张量other无法自动扩展成与输入张量input相同尺寸,则返回为False。
参数:
- input (Tensor) – 要比较的张量
- other (Tensor or float) – 要比较的张量或浮点数
- out (Tensor, optional) – 输出张量,必须是ByteTensor或与输入张量相同。
例子:
torch.ge(torch.Tensor([[1, 2], [3, 4]]), torch.Tensor([[1, 1], [4, 4]]))
1 1
0 1
[torch.ByteTensor of size 2×2]