torch中矩阵/张量的五种乘法【“茴”字的四种写法】

"我心想,你这样落魄的人也配考我"

"记着吧,将来考举可能用得到。”

1.*

这种就是element-wise的

2.torch.mul

也是elemenet-wise的,同*

3.torch.mm

单纯的数学上的矩阵乘法,不支持广播。也不支持tensor相乘。

4.torch.bmm

专门用来算tensor乘法,不支持矩阵乘法。

tensor相乘中size的限制是:

tensor1.size=(a,b,c)

tensor2.size=(a,c,b)

计算方式也是a个矩阵对,相互乘。

5.torch.matmul

兼有mm和bmm的功能,还支持广播。

例如:

>>> a = torch.ones(3,4)
>>> b = torch.ones(5,4,2)
>>> torch.matmul(a, b)
tensor([[[4., 4.],
         [4., 4.],
         [4., 4.]],

        [[4., 4.],
         [4., 4.],
         [4., 4.]],

        [[4., 4.],
         [4., 4.],
         [4., 4.]],

        [[4., 4.],
         [4., 4.],
         [4., 4.]],

        [[4., 4.],
         [4., 4.],
         [4., 4.]]])
原文地址:https://www.cnblogs.com/gagaein/p/14367768.html