einsum如何与numpy广播互动?
考虑Ndarrayeinsum如何与numpy广播互动?,numpy,numpy-einsum,Numpy,Numpy Einsum,考虑Ndarrayx0=np.ones((3,3))和y0,它们具有y0.shape或者(3,3)或者(1,3)。我想要一个单一的einsum命令来计算这两个数组行的点积;在y0.shape为(1,3)的情况下,我希望在y0的第一维度上进行广播。我试过了 np.einsum('ij,ij->i',x0,y0)但这会 ValueError:(“操作数%d的标签'%s'的大小与前面的术语不匹配。”,'i',1) 在埃因苏姆有办法做到这一点吗?在这个应用程序中,einsum与numpy广播的交互似乎有
x0=np.ones((3,3))
和y0
,它们具有y0.shape
或者(3,3)或者(1,3)。我想要一个单一的einsum命令来计算这两个数组行的点积;在y0.shape
为(1,3)
的情况下,我希望在y0
的第一维度上进行广播。我试过了
np.einsum('ij,ij->i',x0,y0)
但这会
ValueError:(“操作数%d的标签'%s'的大小与前面的术语不匹配。”,'i',1)
在埃因苏姆有办法做到这一点吗?在这个应用程序中,einsum与numpy广播的交互似乎有一定的局限性:
x0+y0
在y0的形状为(1,3)时广播第一维度,但上面的einsum调用并不像我预期的那样起作用 这是一个已知的einsum
错误,请参阅。