python variable shape 不匹配_Python:keras形状不匹配

我试图在keras中构建一个非常简单的多层感知器(MLP):model = Sequential()

model.add(Dense(16, 8, init='uniform', activation='tanh'))

model.add(Dropout(0.5))

model.add(Dense(8, 2, init='uniform', activation='tanh'))

sgd = SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)

model.compile(loss='mean_squared_error', optimizer=sgd)

model.fit(X_train, y_train, nb_epoch=1000, batch_size=50)

score = model.evaluate(X_test, y_test, batch_size=50)

我的训练数据形状:X_train.shape给出了(34180, 16)

标签属于二进制类,其形状为:y_train.shape给出(34180,)

所以我的keras代码应该生成具有以下连接的网络:16x8 => 8x2

从而产生形状不匹配错误:ValueError: Input dimension mis-match. (input[0].shape[1] = 2, input[1].shape[1] = 1)

Apply node that caused the error: Elemwise{sub,no_inplace}(Elemwise{Composite{tanh((i0 + i1))}}[(0, 0)].0, )

Inputs types: [TensorType(float64, matrix), TensorType(float64, matrix)]

Inputs shapes: [(50, 2), (50, 1)]

Inputs strides: [(16, 8), (8, 8)]

在Epoch 0的model.fit(X_train, y_train, nb_epoch=1000, batch_size=50)行。我是不是在监督凯拉斯的一些显而易见的事情?

编辑:我已经完成了问题here,但没有解决我的问题

你可能感兴趣的:(python,variable,shape,不匹配)