如何對(duì)大量文本進(jìn)行聚類(lèi)?
可在線運(yùn)行的notebook示例:在kaggle網(wǎng)站搜索 Kmeans GPU 查看
首先需要導(dǎo)入豆瓣電影評(píng)論數(shù)據(jù):(請(qǐng)注意該 csv 文件在kaggle網(wǎng)站可下載)
接著安裝文本轉(zhuǎn)向量的包和向量降維的包:
接著在程序中導(dǎo)入依賴(lài)包:(除了上面說(shuō)的包之外還有:批訓(xùn)練聚類(lèi)包、計(jì)算輪廓系數(shù)的包)
接著我們定義讀取數(shù)據(jù)文件和數(shù)據(jù)清洗的函數(shù):(請(qǐng)注意xlsx文件只能處理100w條數(shù)據(jù),若還需要處理更大量的數(shù)據(jù),需要考慮更改保存數(shù)據(jù)的格式為csv)
接著定義文本轉(zhuǎn)向量的函數(shù),其中還包含了向量降維的模塊,降維是為了降低計(jì)算開(kāi)銷(xiāo):
然后我們將采用批訓(xùn)練的Kmeans模型進(jìn)行聚類(lèi),但Kmeans需要人為設(shè)定初始K值,為此我們能采用輪廓系數(shù)計(jì)算理論上的最佳K值,該指導(dǎo)性的K值有利于我們調(diào)整K值范圍:
最后,我們終于可以對(duì)文本進(jìn)行聚類(lèi),定義聚類(lèi)函數(shù)如下:
調(diào)用以上函數(shù):
完成聚類(lèi)后,查看聚類(lèi)結(jié)果:
標(biāo)簽: