python - 使用 lstm 进行 IMDB 评论的准确性非常低

标签 python lstm word2vec loss

我已使用 Word2Vec 将 imdb 评论转换为 300 维。

我保留了 25000 条评论中的 embedding_vecor_length = 32、input_length = 300。

我的准确性非常差,损失很高。

在 10 个 epoch 结束时,我得到的准确度为 0.4977,损失为 0.6932。

    embedding_vecor_length = 32
    model = Sequential()
    model.add(Embedding(25000, embedding_vecor_length, input_length=300))
    model.add(LSTM(100))
    model.add(Dense(1, activation='sigmoid'))
    model.compile(loss='binary_crossentropy', optimizer='adam', metrics['accuracy'])

我应该添加或删除什么才能提高准确性并减少损失?

最佳答案

25000 似乎是您拥有的样本数,而不是嵌入层的输入维度。我认为你应该检查你想要在该函数中使用哪些维度。我认为,在看不到您的数据的情况下,您真正​​想要的是:

model.add(Embedding(300, embedding_vecor_length))

但是由于您已经使用了 word2vec,所以这已经是一个嵌入了!您不需要嵌入层。我认为你应该删除它,然后看看你的准确性。

关于python - 使用 lstm 进行 IMDB 评论的准确性非常低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52734472/

相关文章:

python - Django Forms 无法呈现单选按钮

Python Keras 运行错误(无效语法)

python - 如何使用 lstm 执行多类多输出分类

python - 从 gensim 解释负 Word2Vec 相似度

python - 训练期间损失不会减少(Word2Vec,Gensim)

python - 如何调用应用程序文件夹外的模板?

python - 按新的日期范围重新索引数据框

python - 从 node.js 调用 Sagemaker Tensorflow Resnet50 端点

python - Keras LSTM 准确率太高

algorithm - 优化相似句子的搜索,Word2Vec