例外:使用TensorFlow时,您应明确定义 序列的时间步数。如果您的第一层是 嵌入时,请确保向其传递“ input_length”参数。除此以外, 确保第一层具有“ input_shape”或“ batch_input_shape” 参数,包括时间轴。
我尝试了几种配置,但是没人能很好地工作。我不知道如何解决。.
这是我创建模型并重塑X_train和X_test的代码
X_train = np.reshape(X_train, (X_train.shape[0], X_train.shape[1], EMB_SIZE))
X_test = np.reshape(X_test, (X_test.shape[0], X_test.shape[1], EMB_SIZE))
print 'Building model...'
model = Sequential()
model.add(LSTM(input_dim=EMB_SIZE, output_dim=100, return_sequences=True, input_shape=(X_train.shape[1], X_train.shape[2], 1)))
model.add(LSTM(input_dim=EMB_SIZE, output_dim=100, return_sequences=False,input_shape=(X_train.shape[1], X_train.shape[2], 1)))
model.add(Dense(2))
model.add(Activation('softmax'))
model.compile(optimizer='adam',
loss='mse',
metrics=['accuracy'])
model.fit(X_train,
Y_train,
nb_epoch=5,
batch_size = 128,
verbose=1,
validation_split=0.1)
score= model.evaluate(X_test, Y_test, batch_size=128)
print score
我们非常感谢您的帮助!
预先感谢您<3
答案 0 :(得分:0)
最后一层的单位数定义了模型的输出形状。
输出形状必须与目标(Y)相同。
Dense(2)
->输出形状=(无,2)Dense(1)
->输出形状=(无,1)Y_train
->目标形状=(15015,1)哇... Keras 0.3.3吗?难怪一切都会有问题。