饒毓和, 凌志浩
(華東理工大學(xué)化工過程先進控制和優(yōu)化技術(shù)教育部重點實驗室,上海 200237)
隨著互聯(lián)網(wǎng)日益深入人們的日常生活,以互動交流為特點的Web2.0 技術(shù)進入了高速發(fā)展階段,其中包括Twitter、微博、Facebook 以及各種即時信息工具等多種互聯(lián)網(wǎng)新媒體平臺。這些平臺每時每刻都在產(chǎn)生著大量的內(nèi)容簡短、特征稀疏的半結(jié)構(gòu)性或非結(jié)構(gòu)性文本數(shù)據(jù),如何處理這些短文本數(shù)據(jù)進而從中提取出有價值的信息已經(jīng)成為當(dāng)下互聯(lián)網(wǎng)領(lǐng)域的技術(shù)熱點。
文本聚類是文本信息挖掘領(lǐng)域的一個常見方向,目前已被廣泛用于信息檢索、搜索引擎等方面,然而對于短文本而言,其所具有的高維度性和特征稀疏性使得短文本聚類面臨著諸多挑戰(zhàn)。稀疏性帶來了包括上下文信息不足、詞共現(xiàn)信息不足等問題,具體來說,由于短文本所包含的單詞數(shù)量很少,且大部分單詞只出現(xiàn)一次,如果繼續(xù)使用傳統(tǒng)的向量空間模型(Vector Space Model, VSM)來表示短文本,極度稀疏的高維特征向量將會導(dǎo)致內(nèi)存與計算時間的過度開銷。另外,由于單詞數(shù)量過少,詞頻統(tǒng)計將失去意義,所以常用的詞頻-逆文檔頻率加權(quán)(TF-IDF)也不適用于短文本[1]。
為了克服短文本的稀疏性和高維度性,相關(guān)學(xué)者已經(jīng)進行了大量研究,比如引入外部信息源或重新構(gòu)建新的針對短文本的模型等。然而,在如何進一步提升短文本聚類質(zhì)量方面的研究目前還有待深入。文本聚類的關(guān)鍵在于對文本特征的提取,而現(xiàn)有常用的文本特征大都存在所含信息單一且信息量較少的缺陷,進而導(dǎo)致文本聚類時特征對短文本的區(qū)分能力不強,聚類效果有待改善。本文在前人研究的基礎(chǔ)上,從統(tǒng)計學(xué)與神經(jīng)網(wǎng)絡(luò)算法的角度出發(fā),提出了一種結(jié)合詞對主題模型與段落向量的短文本聚類方法,旨在將主題信息融入由神經(jīng)網(wǎng)絡(luò)算法得到的文本特征向量中,以期能結(jié)合二者的優(yōu)點加強文本特征向量對短文本的區(qū)分能力,同時避免受到短文本稀疏性而造成的影響。
針對短文本聚類時所面臨的稀疏性等問題,相關(guān)研究大致分為兩個方向,一種是引入外部知識源,如利用WordNet[2]、HowNet[3]、Wikipedia[4]以及其他用戶自行構(gòu)建的知識庫[5]將短文本擴展為長文本,但是該方案存在兩個問題,一是需要保證外部知識源的時效性,比如對于微博中所討論的新熱門話題是難以第一時間在諸如百度百科這樣的外部資料中找到的,所以這就需要對外部知識源及時更新與維護,不過由此產(chǎn)生的相關(guān)成本和代價很高;二是如何保證外部加入信息的正確性以及如何正確地使用這些信息,這已經(jīng)成為了該方案所帶來的新的挑戰(zhàn),而處理這些問題自身已經(jīng)相當(dāng)復(fù)雜[6]。
因此,研究者們將目光放在了對傳統(tǒng)的普通文本處理方法的改進或是對新模型的設(shè)計上,以此來應(yīng)對短文本的稀疏性。Xu 等[7]提出了一種利用詞向量與自學(xué)習(xí)的動態(tài)卷積神經(jīng)網(wǎng)絡(luò)來提取短文本特征進而實現(xiàn)短文本聚類的方法,該方法能將原本用高維詞袋模型表示的短文本轉(zhuǎn)化為用低維稠密向量表示;Yin 等[1]利用Dirichlet 多項式混合模型進行短文本聚類,結(jié)果表明該方法能有效克服短文本的稀疏性和高維度問題;文獻[8]假定在給定的短文本語料庫中詞與主題之間存在一個固定的語義結(jié)構(gòu),在此基礎(chǔ)上可以推斷出文本的主題比例向量,然后根據(jù)主題比例向量和主題在單詞上的分布生成額外的單詞以擴充短文本,由于額外擴充的單詞來自于數(shù)據(jù)集本身,所以該文中的擴充集不需要外部知識源;文獻[9]通過定義基于詞性和詞長度加權(quán)的特征詞提取公式并提取特征詞來表示短文本,然后利用詞向量與詞語游走距離(Word Mover’s Distance, WMD)計算短文本間的相似度并將其應(yīng)用到層次聚類算法中實現(xiàn)短文本聚類??v觀這些方法可知,其中的一類基于統(tǒng)計學(xué),另一類則是主要依賴于神經(jīng)網(wǎng)絡(luò)的單一方法,而本文則是將基于統(tǒng)計的主題模型(BTM)和基于神經(jīng)網(wǎng)絡(luò)的文本向量化方法(PV-DBOW)結(jié)合起來,以達到改善短文本聚類效果的目的。
在實際的短文本處理中,時常會遇到這樣一種情況:同一個詞在不同主題下的語義相差甚遠,比如單詞“蘋果”,它在“水果”主題下和在“信息技術(shù)”主題下分別表達的是“一種水果”和“一家信息科技公司”兩種意思,這種同一個詞受不同主題影響的情形,本文稱其為“主題歧義”。如果能有效地區(qū)分出這些歧義,無疑能改善文本聚類的效果。為此,本文提出了一種利用主題信息對特定詞語進行語義拆分的方法,直觀的理解就是利用主題信息將上述例子中的“蘋果”分別拆分成“水果中的蘋果”和“信息技術(shù)中的蘋果”這樣兩個詞,使得后續(xù)步驟進行文本向量化時能對二者有所區(qū)分。
為了獲取單詞的主題信息,本文使用了一種既適合于長文本也適合短文本的詞對主題模型,流程如圖1 所示。主要步驟描述如下:
(1)利用通過詞對主題模型求出的詞-文檔-主題概率分布結(jié)合局部離群因子與JS 散度對整個文本集合中的詞語進行語義拆分;
(2)將經(jīng)過詞語拆分后的文檔輸入文本向量化模型PV-DBOW 得到對應(yīng)的段落向量,再將段落向量與對應(yīng)的文檔-主題概率分布拼接起來構(gòu)成文本特征向量;
(3)在整個特征向量集中使用K-means 算法完成短文本聚類。
圖1 短文本聚類過程Fig. 1 Process of short text clustering
BTM 由隱Dirichlet 分布(Latent Dirichlet Allocation,LDA)改進而來,與LDA 不同,BTM 不是直接對文檔進行建模,而是對整個文本集合中的詞對進行建模,并認為集合中的所有詞對共享一個主題分布,這樣能依靠整個文本集合來估計這個主題分布,從而有效緩解因文檔單詞數(shù)量過少所帶來的主題推理中的稀疏問題[10]。
2.1.1 主題-詞概率分布與文檔-主題概率分布 在BTM中,將同一文檔內(nèi)特定大小窗口中的詞兩兩結(jié)對,稱其為詞對,BTM 的主要內(nèi)容就是從文本集合中抽取出所有詞對,然后基于詞對建立概率模型。模型生成過程如下:
(1)確定短文本集合的全局主題概率分布θ~Dirichlet(α)。
(2)確定每一個主題z 所對應(yīng)的詞概率分布φ~Dirichlet(β)。
(3)對于詞對集合B 中的每一個詞對b=(wi,wj),重復(fù)以下操作:
(a)從全局主題概率分布θ 中抽取一個主題z,z~Multinomial(θ);
(b)從主題z 所對應(yīng)的詞分布φ 中抽取兩個詞,則wi,wj~Multinomial(φ)。
BTM 概率圖模型如圖2 所示,圖中K 表示主題數(shù)目,|B|表示整個文本集合中詞對的數(shù)目,α、β 是Dirichlet 分布的超參數(shù)。
圖2 BTM 概率圖模型Fig. 2 Probabilistic graphical model of BTM
對于具有“主題歧義”的單詞,需要對其進行語義區(qū)分以提升聚類的精度。本文采用詞-文檔-主題概率分布與局部離群因子相結(jié)合的方法,將同一個詞按不同主題進行拆分??紤]到同一個詞在同一短文本中的主題信息基本保持不變,所以該方法實際上針對的是單詞在不同文本中的語義拆分。
實驗使用了2 個帶有主題標簽的語料庫:(1)搜狗實驗室新聞?wù)Z料庫,從中選取了互聯(lián)網(wǎng)、教育、金融、軍事、汽車、體育、娛樂7 個主題,每個主題選取了2 000 條短新聞共14 000 條文本;(2)復(fù)旦大學(xué)文本分類語料庫,從中選取了金融、農(nóng)業(yè)、體育、藝術(shù)、政治5 個主題,每個主題各選取2 500 條,一共12 500條短文本。
為了驗證本文方法所得的特征向量對短文本具有更強的區(qū)分能力,使用幾個常用的且同樣是無監(jiān)督學(xué)習(xí)的文本向量化方法與之對比。
(1)詞向量算術(shù)平均。通過Skip gram 模型求出文本集合中所有詞語對應(yīng)的詞向量,然后將每一個文檔中的所有詞的詞向量累加并求算術(shù)平均作為該文檔的文本向量,為了方便敘述,本文將該方法稱為WM2Vec(Word Mean to Vector)。
(2)詞向量加權(quán)平均。參考文獻[15],先得到所有詞語的詞向量,然后將文檔中的詞向量進行加權(quán)平均,得到平均向量,這里的權(quán)重使用的是平滑逆詞頻(Smooth Inverse Frequency, SIF),最后移除平均向量在所有文本向量所組成矩陣的第一主成分上的投影,并將移除主成分后的平均向量作為文本向量,將該方法稱為SIF2Vec。
(3)PV-DBOW。直接利用PV-DBOW 模型得到文本集合中的各個文檔的段落向量,將該方法稱為Doc2Vec(Document to Vector)。
(4)BTM。利用BTM 求出文本集合的文檔-主題概率分布,然后對于每一個文檔而言,將其文檔-主題概率分布作為其特征向量,將該方法稱為BTM2Vec。
為了得到短文本的聚類結(jié)果,方法(1)、(2)、(3)均采用K-means 算法結(jié)合Euclid 距離進行聚類,而方法(4)可直接將文檔的主題概率分布中的最大概率值所對應(yīng)的主題作為該文檔的主題類別進而完成聚類。
本文選取常用的V-measure 和F1 值評價指標作為聚類效果衡量標準。V-measure 綜合考慮了聚類結(jié)果的同質(zhì)性與完整性,令K 代表聚類結(jié)果中每個簇對應(yīng)的樣本集合,C 代表實際類別中每一類對應(yīng)的樣本集合,則
F1 值綜合考慮了精確率P(Precision)與召回率R(Recall rate)。由于本文實驗所用語料庫具有多個類別,所以這里使用的是基于微平均法與宏平均法所得的宏F1 值(Macro-F1)和微F1 值(Micro-F1)。
3.4.1 詞語語義拆分方法的實驗驗證 為了測試本文提出的詞語拆分方法對最終短文本聚類的影響,對從搜狗新聞?wù)Z料選取出的文本經(jīng)過分詞、去停用詞等預(yù)處理后,首先對其進行不同數(shù)目的詞語拆分操作與對比實驗,一共進行7 輪實驗,每輪實驗除了隨機選取進行拆分的詞語數(shù)目不同以外,其他設(shè)定均一致。
第1 輪到第7 輪實驗從整個文本集合中分別隨 機 抽 取10 000、20 000、30 000、40 000、50 000、60 000、64 854 個詞語作為備選詞語集合,去除其中的高低頻詞以及非名詞以后,對詞語集合進行語義拆分,之后經(jīng)文本向量化與拼接操作得到特征向量。為了不干擾實驗結(jié)果,7 輪實驗對于λ 值均設(shè)置為0.01,最終聚類所得評價結(jié)果如圖3 所示。按照本文的預(yù)想,進行語義拆分步驟的詞語越多,則拆分后文本集合中的“主題歧義”現(xiàn)象就越少,文本之間也就越容易區(qū)分。從圖3 可以看出,隨著隨機選擇進行語義拆分的詞語數(shù)目逐漸增加,V-measure 與宏F1 值都在上升,證實了本文提出的詞語語義拆分的方法確實能有效加強特征向量對文本的區(qū)分能力。
圖3 聚類結(jié)果與隨機選取出來進行拆分的詞語數(shù)目之間的關(guān)系Fig. 3 Relation between clustering results and numbers of randomly selected words to be splited
3.4.2 本文方法與其他方法對比實驗結(jié)果 為了獲得相對客觀、穩(wěn)定的實驗結(jié)果,所有方法在使用Kmeans 聚類時初始值選取的次數(shù)都取值足夠大(300 次)以保證收斂,此外,每種方法都進行10 輪聚類,取10 次結(jié)果的算術(shù)平均值作為最終的實驗結(jié)果。
在具體的參數(shù)設(shè)置上,設(shè)距離閾值α = 0.3,局部離群因子閾值β = 0.95,對于搜狗語料,特征向量權(quán)重系數(shù)λ 設(shè)置為2.5,對于復(fù)旦語料,λ 設(shè)置為7?;谒压氛Z料庫的實驗結(jié)果如表1 所示,基于復(fù)旦語料的實驗結(jié)果如表2 所示。為了便于敘述,將本文方法稱為 DT2Vec( Document with Topic Information to Vector)。
表1 搜狗語料聚類結(jié)果對比Table 1 Comparison of clustering results of Sogou corpus
表2 復(fù)旦語料聚類結(jié)果對比Table 2 Comparison of clustering results of Fudan corpus
由表1、表2 可見,在5 種方法中,詞粒度的方法(WM2Vec 和SIF2Vec)表現(xiàn)最差,這是因為無論是直接對詞向量作算術(shù)平均還是作加權(quán)平均,所得的文本向量都僅與文檔中所含單詞有關(guān),而如果兩篇短文檔中的單詞重合度較小,即使它們描述的是同一主題的內(nèi)容(實際的文本中經(jīng)常出現(xiàn)用不同的詞描述同一類事物的情形),也極有可能被劃分為兩類,因此實驗結(jié)果中這2 種方法的聚類效果和其他3 種方法相比出現(xiàn)了明顯差距。
基于主題的BTM2Vec 和基于段落向量的Doc2Vec 則好于前2 種方法,這是因為這2 種方法利用了更為全面的信息:前者使用了文本集合中所有的詞對作為主題信息,而后者則相對詞向量而言加入了綜合全段落主旨的段落向量。
本文方法在5 種方法中獲得了最好的聚類效果。對于搜狗語料來說,本文方法在V-measure 和F1 值上分別至少提升了4.0%與1.75%;而對于復(fù)旦語料,則分別至少提升了2.9%和2.85%;與前4 種方法相比,DT2Vec 所得的特征向量包含了最多的文本特征信息,包括由BTM 所獲得的主題信息和由段落向量所獲得的段落主旨信息,二者得到了有效的融合,這也就給予了特征向量對短文本更強的區(qū)分能力,所以本文方法能有效改善短文本的聚類效果。
為了深入觀察本文方法與其他方法相比的改進之處,在實驗部分給出本文方法與Doc2Vec 在各個主題上聚類結(jié)果的詳細對比,采用的對比指標為精確率與召回率。圖4 為本文方法與Doc2Vec 在搜狗語料上的精確率對比,圖5 為本文方法與Doc2Vec在搜狗語料上的召回率對比。
圖4 本文方法與Doc2Vec 的精確率對比(搜狗語料)Fig. 4 Precision comparison between DT2Vec and Doc2Vec(Sougou Corpus)
圖5 本文方法與Doc2Vec 的召回率對比(搜狗語料)Fig. 5 Recall rate comparison between DT2Vec and Doc2Vec(Sougou Corpus)
由圖4、圖5 可知,本文方法與Doc2Vec 的聚類結(jié)果相比,7 個主題的聚類精確率與召回率絕大部分都得到了提升,再次驗證了本文方法的有效性。因為前期已經(jīng)利用主題信息對“主題歧義詞”作了語義拆分,因此使用本文方法所得的段落向量對含“歧義詞”文檔的區(qū)分能力更強,再加上與文檔-主題概率分布的拼接,最終的特征向量有效結(jié)合了主題信息與段落向量,在保證維度基本不變的前提下豐富了文本特征所攜帶的信息量,所以利用該文本特征能更好地區(qū)分不同主題的文檔,具體表現(xiàn)就是對各個主題而言,相應(yīng)的聚類精確率與召回率都在提升。
另外,從圖4、圖5 中可以注意到“金融”主題的精確率相比其他主題而言較低,只有64.7%(Doc2Vec)和66.6%(DT2Vec);而“汽車”主題的召回率也同樣只有59.9%(Doc2Vec)和61.9%(DT2Vec),不難推測“汽車”和“金融”相互影響,很多“汽車”主題的短新聞在聚類時被劃分到了“金融”主題下,從側(cè)面反映了這兩個主題之間的彼此辨識度不高,這符合實際生活中的情況。有很多短文本如新聞之類的是同時具備多個主題的,比如描述汽車行業(yè)的市場銷售值這類新聞,它與“汽車”和“金融”都相關(guān),實際上不應(yīng)單獨將其直接劃入“汽車”或是“金融”主題下,解決這類問題的方法之一是為這類短文本提供多個主題標簽,這也是本文的后續(xù)研究方向。
針對目前短文本聚類常用的文本特征大都存在所含信息單一且信息量較少的缺陷,提出了一種結(jié)合詞對主題模型與神經(jīng)網(wǎng)絡(luò)算法用于短文本聚類的方法,通過利用主題信息對文本集合中的詞語作語義拆分、拼接文檔-主題概率分布這兩種方式將主題信息融入文本特征向量,在保證特征維度較低的前提下豐富了文本特征所攜帶的信息量,有效地加強了特征向量對文本的區(qū)分能力,同時也能避免受到短文本的稀疏性影響。從實驗結(jié)果來看,短文本最終的聚類效果得到有效改善,證實了上述觀點。本文方法為信息檢索、搜索引擎等領(lǐng)域提供了一種新的建立短文本特征向量以及文本聚類的思路。另外,在實驗過程中,遇到了多主題短文本的情況,這類短文本實際上不應(yīng)單獨劃分至某個主題下,因此下一步考慮研究如何為這類短文本提供多個主題標簽。