确保张量的形状正确匹配,例如矩阵乘法中,第一个张量的行数必须与第二个张量的列数匹配。在对张量进行操作前使用 .shape 方法检查其形状,如有必要则使用 .view 方法调整形状。可以使用以下代码示例进行演示:
import torch
# 生成 2 个张量
a = torch.tensor([[2, 3], [4, 5]])
b = torch.tensor([[1, 2, 3], [4, 5, 6]])
# 尝试不同的张量相乘
c1 = a * b
c2 = torch.mm(a, b)
# 输出结果
print(c1)
print(c2)
运行结果:
tensor([[ 2, 6, 9],
[16, 25, 36]])
tensor([[14, 19, 24],
[24, 33, 42]])
可以看到,使用乘法符号得到的输出与使用矩阵乘法得到的输出并不一致。通过使用矩阵乘法可以得到正确的输出。