【发布时间】:2019-11-02 23:08:03
【问题描述】:
我正在对 2 个 numpy 数组进行点积处理,一个维度为 (150, 4),另一个维度为 (4, 1)。这应该会产生一个维度为 (150, 1) 的数组,但是,我得到一个 (150, 4) 的数组。
我已尝试创建数据列表并将其传递给数组构造函数。
x = iris.data #shape (150, 4)
y = np.array(y_actual) #shape (150, 1)
np.random.seed(1)
syn1 = 2 * np.random.random( (x.shape[1], x.shape[1]) ) - 1
syn2 = 2 * np.random.random( (x.shape[1], y.shape[1]) ) - 1
for i in range(10000):
layer0 = x
layer1 = sigmoid( np.dot(layer0, syn1) )
layer2 = sigmoid( np.dot(layer1, syn2) )
l2_err = layer2 - y
l2_delta = l2_err * sigmoid(layer2, deriv = True)
l1_err = np.dot(l2_delta, syn2.T)
l1_delta = l1_err * sigmoid(layer1, deriv = True)
我希望 layer2 的尺寸为 (150, 1),但我收到的尺寸为 (150, 4)。
【问题讨论】:
标签: python arrays numpy dimensions