【发布时间】:2018-05-14 21:54:22
【问题描述】:
我有以下四个张量
- H (h, r)
- A (a, r)
- D (d, r)
- T (a, t, r)
对于a 中的每个i,都有一个对应的T[i] 形状为(t, r)。
我需要做一个np.einsum 来产生以下结果(pred):
pred = np.einsum('hr, ar, dr, tr ->hadt', H, A, D, T[0])
for i in range(a):
pred[:, i:i+1, :, :] = np.einsum('hr, ar, dr, tr ->HADT', H, A[i:i+1], D, T[i])
但是,我想在不使用 for 循环的情况下进行此计算。原因是我正在使用 autograd,它目前不适用于项目分配!
【问题讨论】:
标签: python numpy for-loop vectorization numpy-einsum