1,文本的数据清洗:
过滤文章中包含无用词的语句
去除文章中特定词性的词
提取全部文本
将空文本去除
2.生成词典并向量转化
3.主题向量的转化
1)首先将模型对象的始化。通Gensim模型接受一段训练集(注意在Gensim中,语料对应着一个稀疏向量的迭代器)作为初始化的参数。
(2)利用初始化的模型将语料转化为对象的向量
1)TFIDF(词频逆文档频率)
2)LSI(潜在语义索引)
将词袋模型或TFIDF空间映射到低维度的潜在空间,推荐200-500为金标准,在达观数据的长文本分类中,尝试350的维度分数得分优于其他维度。LSI可以进行增量训练,只要有新文档可以一直输入模型当中,通过add_document方法。如果python报memoryerror,那就是内存不够了,需要降低维度。
3)LDA(隐含狄利克雷分配)
LDA是LSA的概率扩展,也是向低纬度转化的方式
4)RP(随即映射)
目的在于减小空维度,通过随机性,近似的到文档之间的TFIDF距离,但对于大数据量很慢
4.相似度匹配
在得到文章对应的主题向量以后,就可以进行相似性匹配,将多个文档遍历进行匹配,然后排序选择相似度最大的文章,取其在训练集中对应的分类编号,作为测试文档的类别。在单纯使用LSI向量,不加入TFIDF的情况下,准确率不高。
如果单纯将corpus转化为LSI向量,需要将测试文章用LSI模型转化一次: