天天看点

使用LSTM做电影评论负面检测——使用朴素贝叶斯才51%,但是使用LSTM可以达到99%准确度

 基本思路:

每个评论取前200个单词。然后生成词汇表,利用词汇index标注评论(对 每条评论的前200个单词编号而已),然后使用LSTM做正负评论检测。

 代码解读见【【【评论】】】!embedding层本质上是word2vec!!!在进行数据降维,但是不是所有的LSTM都需要这个,比如在图像检测mnist时候,就没有这层!

<a></a>

负面的示例评论:

正面的:

pad后和category后的数据示例:

 其中,MAX_DOCUMENT_LENGTH = 200,由于每个文档都进行了剪切。超过200的就直接截断文本,不再计算了!!!因为:

参数:

<code>max_document_length</code>: 文档的最大长度。如果文本的长度大于最大长度,那么它会被剪切,反之则用0填充。 

<code>min_frequency</code>: 词频的最小值,出现次数小于最小词频则不会被收录到词表中。 

<code>vocabulary</code>: CategoricalVocabulary 对象。 

<code>tokenizer_fn</code>:分词函数

代码:

本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7903934.html,如需转载请自行联系原作者