在Theano邮件列表中已经提出并回答了这个问题,但实际上是关于numpy索引编制的基础。
以下是问答环节 https://groups.google.com/forum/#!topic/theano-
users/jq92vNtkYUI
为了完整起见,这是另一种解释:切片与
None将轴添加到数组中,请参阅相关的numpy文档,因为它在numpy和Theano中的行为相同:
http://docs.scipy.org/doc/numpy/reference/arrays.indexing.html#numpy.newaxis
注意
np.newaxis is None:
import numpy as npa = np.arange(30).reshape(5, 6)print a.shape # yields (5, 6)print a[np.newaxis, :, :].shape # yields (1, 5, 6)print a[:, np.newaxis, :].shape # yields (5, 1, 6)print a[:, :, np.newaxis].shape # yields (5, 6, 1)
通常,这用于调整形状以能够广播到更高的尺寸。例如,在中轴上可以平铺7次
b = a[:, np.newaxis] * np.ones((1, 7, 1))print b.shape # yields (5, 7, 6), 7 copies of a along the second axis
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)