torch.ger 的用法
torch.ger 用于实现两个 Tensor 的内积,即 ger(a,b)= a^T *b (其中 a^T 表示 a 的转置)
example:
a=torch.tensor([2,3,4,5])
b=torch.tensor([1,2,3])
c=torch.ger(a,b)
print(c)
输出c:
tensor([[ 2, 4, 6],
[ 3, 6, 9],
[ 4, 8, 12],
[ 5, 10, 15]])
a 是 14 的 Tensor,转置后形状为 41 ;b 是 13 的 Tensor,因此 c = ger(a,b) 是 43 的 Tensor
pytorch版本
查看 pytorch 官方文档可以看到, torch.ger 算子即将被删除,用 torch.outer 代替:
程序运行报错:显示torch没有outer算子
查看torch版本发现我的torch版本是1.5.0
关键点来了:
在pytorch1.7.0之后,torch.ger算子被删掉了,用torch.outer代替。
也就是说,只有pytorch1.7.0的torch.outer与torch.ger功能等价,因此torch1.5.0没有outer算子。
于是我安装了最新的torch1.8.1,当然原来的torch1.5.0也自动被uninstalled了
安装好之后,再次运行程序,没有报错,问题解决。