为什么 torch.add 和 torch.einsum return 不同的结果?

Why do torch.add and torch.einsum return different results?

t=m+n
x=torch.einsum('xyzw,xyzw->xyzw',m,n)

当我尝试此代码时,我得到的 xt 不同,这令人惊讶。为什么会这样?

einsum 实际上是其输入的产物。它只是输出中未出现的索引的总和。

所以,

x=torch.einsum('xyzw,xyzw->xyzw',m,n)

实际上等同于

x = m * n