如何比较两个torch.tensor对应位置是否相等
时间: 2024-09-23 17:01:21 浏览: 39
PyTorch中torch.tensor与torch.Tensor的区别详解
在PyTorch中,你可以使用`==`运算符来比较两个`torch.Tensor`在对应位置的数据是否相等。例如:
```python
import torch
# 创建两个张量
tensor1 = torch.tensor([1, 2, 3])
tensor2 = torch.tensor([1, 2, 4])
# 比较元素是否相等
equal_elements = tensor1 == tensor2
# 输出结果是一个布尔张量,True表示对应位置的元素相等,False表示不相等
print(equal_elements)
```
这将返回一个新的布尔张量 `[True, True, False]`,表示第一个和第二个元素相等,第三个元素不相等。
如果你想得到每个元素不相等的位置索引,可以使用`nonzero()`函数:
```python
inequal_indices = (tensor1 != tensor2).nonzero(as_tuple=True)
# `as_tuple=True` 返回一个元组,包含行和列的索引
print(inequal_indices)
```
阅读全文