1,文本的數(shù)據(jù)清洗:
過濾文章中包含無用詞的語句
去除文章中特定詞性的詞
提取全部文本
將空文本去除
2.生成詞典并向量轉(zhuǎn)化
3.主題向量的轉(zhuǎn)化
1)首先將模型對象的始化。通Gensim模型接受一段訓(xùn)練集(注意在Gensim中,語料對應(yīng)著一個稀疏向量的迭代器)作為初始化的參數(shù)。
(2)利用初始化的模型將語料轉(zhuǎn)化為對象的向量
1)TFIDF(詞頻逆文檔頻率)
2)LSI(潛在語義索引)
?將詞袋模型或TFIDF空間映射到低維度的潛在空間,推薦200-500為金標(biāo)準(zhǔn),在達(dá)觀數(shù)據(jù)的長文本分類中,嘗試350的維度分?jǐn)?shù)得分優(yōu)于其他維度。LSI可以進(jìn)行增量訓(xùn)練,只要有新文檔可以一直輸入模型當(dāng)中,通過add_document方法。如果python報(bào)memoryerror,那就是內(nèi)存不夠了,需要降低維度。
3)LDA(隱含狄利克雷分配)
? ? ? ?LDA是LSA的概率擴(kuò)展,也是向低緯度轉(zhuǎn)化的方式
4)RP(隨即映射)
?目的在于減小空維度,通過隨機(jī)性,近似的到文檔之間的TFIDF距離,但對于大數(shù)據(jù)量很慢
4.相似度匹配
? 在得到文章對應(yīng)的主題向量以后,就可以進(jìn)行相似性匹配,將多個文檔遍歷進(jìn)行匹配,然后排序選擇相似度最大的文章,取其在訓(xùn)練集中對應(yīng)的分類編號,作為測試文檔的類別。在單純使用LSI向量,不加入TFIDF的情況下,準(zhǔn)確率不高。
? ?如果單純將corpus轉(zhuǎn)化為LSI向量,需要將測試文章用LSI模型轉(zhuǎn)化一次: