Numpy/Theano中的c[i,j,k] = a[i,j] * b[i,k]如何表示?

How to express c[i,j,k] = a[i,j] * b[i,k] in Numpy/Theano?

定义

c[i,j,k] = a[i,j] * b[i,k] for any i, j, k

i 的逐元素积,是 jk 的外积。有什么方法可以在 NumPy/Theano 中不用循环来表达这个吗?

我找到了一个适用于 Numpy 和 Theano 的解决方案:

c = a[:, :, np.newaxis] * b[:, np.newaxis, :]