我有一些numpy 2d数组:
x,形状(N,T)
W,形状(V,D)
它们被描述如下:
&#34;大小为N的小型片,其中每个序列的长度为T.我们假设V字的词汇表,将每个序列分配给维D的向量。&#34;(这是来自cs231 A3的问题。)< / p>
我想要一个形状(N,T,D)的输出数组,其中我可以将N个元素与所需的向量匹配。
首先,我使用循环来解决方案,以遍历x行第一行中的所有元素:
for n in range(N):
out[n, :, :] = W[x[n, :]]
然后我继续尝试第二种解决方案:
out = W[x]
这两种解决方案都给了我正确的答案,但为什么第二种解决方案有效呢?为什么我可以在二维数组中索引一个3d数组?