1
我已经尝试了keras中的简单lstm模型,使用imdb数据集使用Sequential模型和Model模型进行简单的情感分析,结果发现后者给出了更差的结果。这里是我的代码:为什么Keras Sequential模型与Model模型相比有不同的结果?
model = Sequential()
model.add(Embedding(top_words, embedding_vector_length, input_length=max_review_length))
model.add(LSTM(100))
model.add(Dense(2, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='rmsprop', metrics=['accuracy'])
它使各地在第一时期精度0.6的结果,而其他代码使用型号:
_input = Input(shape=[max_review_length], dtype='int32')
embedded = Embedding(
input_dim=top_words,
output_dim=embedding_size,
input_length=max_review_length,
trainable=False,
mask_zero=False
)(_input)
lstm = LSTM(100, return_sequences=True)(embedded)
probabilities = Dense(2, activation='softmax')(lstm)
model = Model(_input, probabilities)
model.compile(loss='categorical_crossentropy',
optimizer='rmsprop',
metrics=['accuracy'])
,并让0.5精度为第一的结果时代,而且从未改变。
任何原因,或者我做错了什么?在此先感谢
谢谢你的洞察力,return_sequence部分是我的输入错误,因为我从我的其他项目中部分复制了代码。但将可训练变为真实真的有帮助! –