我创建了一个keras LSTM模型来预测下一个单词:
pretrained_weights = w2v_model.wv.syn0
vocab_size, emdedding_size = pretrained_weights.shape
lstm_model = Sequential()
lstm_model.add(Embedding(input_dim= vocab_size, output_dim=emdedding_size, weights=[pretrained_weights]))
lstm_model.add(LSTM(units=emdedding_size))
lstm_model.add(Dense(units=vocab_size))
lstm_model.add(Activation('softmax'))
lstm_model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
lstm_model.fit(X, y, batch_size=128, epochs=3)
当X是句子,y是每个句子的下一个单词。 现在,我有一个句子,和5个单词,我想根据给定句子的概率对它们进行排序。最好的办法是什么?在
将LSTM输出层的激活函数改为sigmoid,就可以了。在
相关问题 更多 >
编程相关推荐