[备忘录]pytorch中的batch Hadamard product,batch element wise product

pytorch针对batch只有矩阵乘法torch.bmm(),没有针对batch的Hadamard product,即不存在所谓的torch.bmul()之类的函数

可以使用万能的torch.einsum()公式

a=torch.arange(24).view(2, 3, 4)
b=torch.ones_like(a) * 2
bmul = torch.einsum(\'ijk,ijk->ijk\',[a,b])
print(bmul)

torch.einsum()真是神器,附两个帖子

1. einsum满足你一切需要:深度学习中的爱因斯坦求和约定

2. einsum:爱因斯坦求和约定