回玥婷 夏懿嘉 陳紫荷 佟鑫
摘要:當(dāng)今社會(huì),網(wǎng)絡(luò)搜索成為人們獲取資訊的主流。短文本因特征信息不足且高維稀疏等特點(diǎn),導(dǎo)致傳統(tǒng)文本聚類算法應(yīng)用于短文本聚類時(shí)效率低下。為此,我們采用為關(guān)鍵詞以及k-means和synonyms相結(jié)合的方法,提高主題歸類精確度。實(shí)驗(yàn)證明,我們提出的s-k(Synonyms-k-means)主題聚類算法不僅有效歸類主題,而且能挖掘出詞語的潛在含義。
關(guān)鍵詞:文本聚類;短文本;k-means;synonyms
中圖分類號:TP301? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? 文章編號:1009-3044(2019)01-0005-02
1 引言
網(wǎng)絡(luò)社交平臺(tái)的廣泛應(yīng)用,使得人們越發(fā)偏向通過閱讀屏幕上的文本內(nèi)容獲得自己想要了解的信息,網(wǎng)絡(luò)搜索成為人們獲取資訊的主流,以提高用戶的使用舒適度為目的,國內(nèi)外的研究人員針對主題檢索和文本聚類方法在不斷地進(jìn)行完善。如何提高文本聚類的準(zhǔn)確度是研究人員需要繼續(xù)改進(jìn)的問題?;ヂ?lián)網(wǎng)的信息呈現(xiàn)多元化,文本內(nèi)容冗雜不一,并且微博等短文本具有文本短小的特征,針對中文新生詞語詞義以及主題的歧義之特點(diǎn),傳統(tǒng)的文本檢索方法不足滿足當(dāng)前用戶的需求。因此,得出一種更加快速、高效的短文本聚類方法顯得極為迫切。
通過更有效分析詞義和句意是提高文本聚類準(zhǔn)確度的關(guān)鍵點(diǎn)。最初由中國餐廳模型為我們了解文本聚類建立了形象的立體概念,但此模型欠缺之處主要在于文本內(nèi)容和表達(dá)方式存在語義詞義的差異,因此容易出現(xiàn)主題分類偏差的現(xiàn)象。文獻(xiàn)【1】總結(jié)得出文本聚類目前存在的,高維稀疏、近義詞和多義詞技術(shù)難點(diǎn),這三個(gè)文本數(shù)據(jù)所特有的問題使得文本聚類具有相當(dāng)高的時(shí)間復(fù)雜度,而且極大干擾了聚類算法的準(zhǔn)確性。文獻(xiàn)【2】提出微博主題檢索模型,利用文本聚類和LDA潛在主題發(fā)現(xiàn)相結(jié)合的檢索模型,以縮小檢索空間,使其適用于中文微博短文本的處理和分析,實(shí)現(xiàn)了微博信息的有效檢索。然而,從挖掘的類簇中看,潛在主題仍舊較為單一。
針對傳統(tǒng)文本聚類方法存在的詞義分析不確切的不足,我們在目前已有的基礎(chǔ)上,采用k-means和synonyms相結(jié)合的算法,該算法具有更大的詞匯量,更便于針對中文詞語進(jìn)行語意辨析,通過計(jì)算強(qiáng)化了詞語之間的近似度,有效地進(jìn)行近義詞的辨析,提高了文本類簇主題的精確度,實(shí)現(xiàn)了對短文本主題進(jìn)行更加快速準(zhǔn)確的檢索,以最大程度滿足用戶需求。
2 算法內(nèi)容
2.1文本預(yù)處理
分詞處理:使用結(jié)巴分詞。結(jié)巴分詞基于前綴詞典實(shí)現(xiàn)高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構(gòu)成的有向無環(huán)圖 (DAG);采用了動(dòng)態(tài)規(guī)劃查找最大概率路徑, 找出基于詞頻的最大切分組合;對于未登錄詞,采用了基于漢字成詞能力的 HMM 模型,采用Viterbi 算法;主要能夠做到分詞,添加自定義詞典,基于TF-IDF算法及TextRank算法的關(guān)鍵詞提取,詞性標(biāo)注,并行分詞,Tokenize:返回詞語在原文的起止位置,ChineseAnalyzer for Whoosh 搜索引擎,命令行分詞。
分詞過后,將得到的分詞遍歷一下載入的停用詞表,去掉停用詞。停用詞主要包括英文字符、數(shù)字、數(shù)學(xué)字符、標(biāo)點(diǎn)符號及使用頻率特高的單漢字等。將停用詞扔掉減少了索引量,增加了檢索效率,提高檢索的效果。
2.2 TF-IDF關(guān)鍵詞提取
TF-IDF是一種統(tǒng)計(jì)方法,用以評估一字詞對于一個(gè)文件集或一個(gè)語料庫中的其中一份文件的重要程度。字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加,但同時(shí)會(huì)隨著它在語料庫中出現(xiàn)的頻率成反比下降。TF-IDF加權(quán)的各種形式常被搜索引擎應(yīng)用,作為文件與用戶查詢之間相關(guān)程度的度量或評級。TFIDF的主要思想是:如果某個(gè)詞或短語在一篇文章中出現(xiàn)的頻率TF高,并且在其他文章中很少出現(xiàn),則認(rèn)為此詞或者短語具有很好的類別區(qū)分能力,適合用來分類。某一特定文件內(nèi)的高詞語頻率,以及該詞語在整個(gè)文件集合中的低文件頻率,可以產(chǎn)生出高權(quán)重的TF-IDF。因此,TF-IDF傾向于過濾掉常見的詞語,保留重要的詞語。①
3 改進(jìn)k-means算法
K-MEANS算法是輸入聚類個(gè)數(shù)k,以及包含 n個(gè)數(shù)據(jù)對象的數(shù)據(jù)庫,輸出滿足方差最小標(biāo)準(zhǔn)k個(gè)聚類的一種算法。k-means 算法接受輸入量 k ;然后將n個(gè)數(shù)據(jù)對象劃分為 k個(gè)聚類以便使得所獲得的聚類滿足:同一聚類中的對象相似度較高;而不同聚類中的對象相似度較小。
基本步驟:
(1) 從 n個(gè)數(shù)據(jù)對象任意選擇 k 個(gè)對象作為初始聚類中心;
(2) 根據(jù)每個(gè)聚類對象的均值(中心對象),計(jì)算每個(gè)對象與這些中心對象的距離;并根據(jù)最小距離重新對相應(yīng)對象進(jìn)行劃分;
(3) 重新計(jì)算每個(gè)(有變化)聚類的均值(中心對象);
(4) 計(jì)算標(biāo)準(zhǔn)測度函數(shù),當(dāng)滿足一定條件,如函數(shù)收斂時(shí),則算法終止;如果條件不滿足則回到步驟(2)。
聚類相似度是利用各聚類中對象的均值所獲得一個(gè)“中心對象”(引力中心)來進(jìn)行計(jì)算的。②
Synonyms是一個(gè)開源的中文近義詞工具包??梢杂糜谧匀徽Z言理解的很多任務(wù):文本對齊,推薦算法,相似度計(jì)算,語義偏移,關(guān)鍵字提取,概念提取,自動(dòng)摘要,搜索引擎等。目前很缺乏質(zhì)量好的中文近義詞庫,于是便考慮使用 word2vec 訓(xùn)練一個(gè)高質(zhì)量的同義詞庫將“非標(biāo)準(zhǔn)表述”映射到“標(biāo)準(zhǔn)表述”,這就是 Synonyms 的起源。在經(jīng)典的信息檢索系統(tǒng)中,相似度的計(jì)算是基于匹配的,而且是 Query 經(jīng)過分詞后與文檔庫的嚴(yán)格的匹配,這種就缺少了利用詞匯之間的“關(guān)系”。而 word2vec 使用大量數(shù)據(jù),利用上下文信息進(jìn)行訓(xùn)練,將詞匯映射到低維空間,產(chǎn)生了這種“關(guān)系”,這種“關(guān)系”是基于距離的,有了這種“關(guān)系”,就可以進(jìn)一步利用詞匯之間的距離進(jìn)行檢索。所以,在算法層面上,檢索更是基于了“距離”而非“匹配”,基于“語義”而非“形式”。②
對比Synonyms較之于以上兩者具有更大的詞匯量,更便于針對中文詞語進(jìn)行語意辨析。下面選擇一些在同義詞詞林、知網(wǎng)和Synonyms都存在的幾個(gè)詞,給出其近似度的對比:
k-means算法里,需要首先隨機(jī)地選擇k個(gè)對象代表簇的初始均值或中心;由此看出弊端,直接選取文檔中k個(gè)詞為主簇,并不能準(zhǔn)確地概括出文本的中心主題,加大了聚簇工作量。由于k-means算法在初始化簇的種子對象時(shí)的隨機(jī)性,被選到的K個(gè)對象中可能包括詞義遠(yuǎn)離文本主題的詞。不同的初始中心的選擇對聚類結(jié)果有較大的影響。改進(jìn)k-means,以關(guān)鍵詞中的k個(gè)對象經(jīng)過Synonyms相近詞聚類處理后作為預(yù)判簇的初始中心,解決了上述缺陷,保證了文本中心主題的準(zhǔn)確。
同時(shí)運(yùn)用k-means算法和Synonyms工具包就可以得到文本的幾個(gè)簇,解決了文本主題的單一性。語料庫中每篇文檔可以統(tǒng)計(jì)出多個(gè)主題,根據(jù)主題不同,多篇文檔有多種聚類組合方式。
4 總結(jié)與展望
s-k(Synonyms-k-means)主題聚類算法解決了文本主題單一的問題,改善了k-means存在的隨機(jī)性大的問題,改善了僅用關(guān)鍵詞聚類的不精確,利用關(guān)鍵詞間的語義聯(lián)系提高了聚類的準(zhǔn)確度。但算法用到的tf-idf算法更適用于長文本,所以在關(guān)鍵詞提取方面還有提升空間。
注釋:
① 來源于百度百科.
② 來源于自然語言處理之近義詞包 Synonyms——胡小夕.
參考文獻(xiàn):
[1] 吳啟明,易云飛. 文本聚類綜述[J].. 河池學(xué)院學(xué)報(bào),2008(2).
[2] 唐曉波,房小可. 基于文本聚類與 LDA 相融合的微博主題檢索模型研究[J].. 情報(bào)理論與實(shí)踐,2013(8).
[3] 田久樂,趙蔚. 基于同義詞詞林的詞語相似度計(jì)算方法[J].. 吉林大學(xué)學(xué)報(bào)(信息科學(xué)版),2010(6).
[4] 李國佳. 基于知網(wǎng)的中文詞語相似度計(jì)算[J]. 智能計(jì)算機(jī)與應(yīng)用,2015(3).
[5] 張丹. 基于主題模型的話題聚類算法的研究. 北京郵電大學(xué)碩士論文,2017.
[6] 吳敏.網(wǎng)絡(luò)短文本主題聚類研究. 華中科技大學(xué),2015.
[7] 張宜浩,金澎,孫銳. 基于改進(jìn) k-means 算法的中文詞義歸納[J]. 計(jì)算機(jī)應(yīng)用.2012,32(5).
[8] 張亞男. 基于混合聚類算法的微博熱點(diǎn)話題發(fā)現(xiàn)的研究[J]. 杭州電子科技大學(xué)學(xué)報(bào), 2018(1).
[9] https://github.com/huyingxi/Synonyms/.