【发布时间】:2020-08-03 02:13:11
【问题描述】:
假设我们有:
- 行向量
V,形状为(F,1),并且 - 形状为
(N, F, X, Y)的4-D张量T。
作为一个具体的例子,让N, F, X, Y = 2, 3, 2, 2。让V = [v0, v1,v2].
然后,我想将 v0 逐元素添加到内部 2x2 矩阵 T[0,0]、v1 到 T[0,1] 和 v2 到 T[0,2]。同样,我想将v0添加到T[1,0],将v1添加到T[1,1],并将v2添加到T[1,2]。
因此,在“最内层”级别,2x2 矩阵和标量之间的加法,例如T[0,0] + v0,使用广播来逐元素添加v0。然后我要做的是更普遍地将其应用于每个内部 2x2。
我尝试过使用np.einsum() 和np.tensordot(),但我无法从更基本的层面上弄清楚这些函数中的每一个实际上在做什么,所以我想要求更一步一步解释如何进行这种计算。
谢谢
【问题讨论】:
标签: python numpy matrix-multiplication tensor array-broadcasting