我正在使用SimpleRNN
来训练长度为100的二进制输入和长度为100的二进制输出的模型,这意味着我的X.shape=(nsamples, 100, 1)
和y.shape=(nsamples, 100)
使用以下代码时,该模型不会返回错误,但学习速度非常慢,并且在经过多个时间段后,损失停止减小。
我还尝试更改学习速度,但无济于事。我想关键问题可能在于输入和输出形状。
model = Sequential()
model.add(
SimpleRNN(
output_dim=100,
input_shape=(100, 1),
return_sequences=False,
activation='sigmoid'
)
)
sgd = optimizers.SGD(lr=0.01, decay=0.0, nesterov=False)
model.compile(loss='binary_crossentropy', optimizer=sgd)
model.fit(X, y, epochs=500)