周國劍 陳慶春 類先富
(西南交通大學(xué) 成都 611756)
隨著網(wǎng)絡(luò)中的社交、郵件、商務(wù)以及新聞時(shí)評(píng)等領(lǐng)域的快速發(fā)展,短文本越來越多地以短信、博客、微信、用戶評(píng)論等形式的短文本出現(xiàn)在我們的日常生活中,并呈現(xiàn)出爆炸式增長的態(tài)勢。如何對海量的短文本信息進(jìn)行挖掘與分析,進(jìn)而提高用戶體驗(yàn)以及增強(qiáng)用戶粘性,是信息處理領(lǐng)域需要面臨的一個(gè)重要問題。此外,由于用戶對信息的實(shí)用性要求越來越高,如何過濾短文本(微博、短信等)中的廣告、垃圾文本等也具有重要的應(yīng)用價(jià)值。
對于長文本文檔相關(guān)的分類已經(jīng)有了較深入的研究。許多統(tǒng)計(jì)學(xué)習(xí)相關(guān)的方法被廣泛應(yīng)用于長文本分類問題,并取得了不錯(cuò)的分類效果,例如樸素貝葉斯[1]、支持向量機(jī)(SVM)[2]分類方法等。由于短文本沒有上下文依賴或足夠的單詞貢獻(xiàn)信息,將長文本文檔分類方法直接應(yīng)用在短文本分類上的效果并不好。具體來說,短文本分類所面臨的主要問題在于,如何將短文本處理成計(jì)算機(jī)能夠理解的形式,因?yàn)槲谋咀陨砥绦∫约疤卣飨∈璧脑颍褂脗鹘y(tǒng)方法建模會(huì)呈現(xiàn)出非常明顯特征稀疏的性質(zhì),不利于后續(xù)的分類處理。短文本分類的研究方向大致包括以下幾個(gè):
1)通過外部知識(shí)庫進(jìn)行特征擴(kuò)展,如Sahami[3]通過搜索引擎檢索短文本的特征詞,用檢索結(jié)果擴(kuò)充短文本,Phan[4]使用Wikipedia 知識(shí)庫結(jié)合LDA模型抽取隱含主題擴(kuò)充等;
2)通過短文本自身結(jié)合相關(guān)的統(tǒng)計(jì)學(xué)方法來挖掘新的詞義特征并擴(kuò)展,如Kalogeratos[5]等提出的上下文向量空間模型,Quan[6]等利用文本集信息建立文本關(guān)聯(lián)度,王細(xì)薇[7]和袁滿[8]等通過關(guān)聯(lián)規(guī)則和頻繁詞集的挖掘?qū)崿F(xiàn)短文本的特征擴(kuò)充等;
3)通過主題模型進(jìn)行特征擴(kuò)展的,如Rubin[9]等在文檔分類中建立了實(shí)現(xiàn)一種多標(biāo)簽分類的主題模型,Chen[10]等在通過多粒度主題模型實(shí)現(xiàn)了短文本分類的文本特征拓展以及不同標(biāo)簽的最優(yōu)主題選擇,前述Quan[6]也在研究過程中使用了隱含主題模型,借助主題的相似性度量方法來解決短文本的特征稀疏問題,張志飛等[11]在Quan 的基礎(chǔ)上對加權(quán)方法進(jìn)一步地改進(jìn),楊萌萌[12]則通過改進(jìn)主題相似度來實(shí)現(xiàn)一種新的短文本分類方法,呂超鎮(zhèn)[13]通過LDA 主題模型所生成的主題—詞矩陣中的高頻詞實(shí)現(xiàn)短文本分類,均取得了不錯(cuò)的效果。
針對Quan[6]、張志飛[11]、楊萌萌[12]等所使用的方法無法直接為每一個(gè)短文本建模,只適用基于距離的KNN 或者K-means 等算法,而對SVM 這些對文本分類效率比較高的分類算法不適用的問題。本文以上述文獻(xiàn)為基礎(chǔ),提出了一種使用主題結(jié)合短文本自身語義信息的特征擴(kuò)展方法,并用SVM對文本進(jìn)行分類,達(dá)到了良好的分類效果。
LDA 概率主題模型最早是由D.Blei[14]等提出的一個(gè)“文檔—主題—詞”的生成概率模型,其本質(zhì)是一種非監(jiān)督的機(jī)器學(xué)習(xí)技術(shù),其核心思想是:文檔可以通過主題的特定概率分布來描述,每個(gè)主題都代表了其對應(yīng)的文檔集中詞的概率分布。LDA已被廣泛用于多項(xiàng)式觀測、分類和聚類相關(guān)的工作中,本文也采用LDA 模型生成概率主題。LDA 生成過程如下:
1)選擇服從Dirichlet 分布的主題分布θ,即θi~Dir(α),i ∈{1,2,…,M};
2)選 擇 服 從Dirichlet 分 布 的 詞 分 布φ ,即φk~Dir(β),k ∈{1,2,…,K};
3)對于第i 篇文檔的第j 個(gè)詞Wi,j,i ∈{1,2,…,M},j ∈{1,2,…,N},選擇一個(gè)主題服從多項(xiàng)式分布zi,j~Multi(θi) ,選 擇 一 個(gè) 詞 服 從 多 項(xiàng) 式 分 布wi,j~Multi(φzi,j)。
在LDA 生成過程中,M 代表文檔數(shù)量,K 代表主題數(shù)量,α是一個(gè)與文檔中主題分布相關(guān)的Dirichlet 超參數(shù),β是一個(gè)與文檔集中主題生成詞概率相關(guān)的Dirichlet 超參數(shù)。LDA 模型如圖1 表示。

圖1 LDA主題模型示意圖
一般來說,兩個(gè)短文本之間的相異詞通常具有揭示隱含主題的重要信息。為了能讓計(jì)算機(jī)理解短文本,我們使用向量空間模型將文本表現(xiàn)為多維向量的形式,其中定義詞匯總數(shù)為N 的向量詞典V={v1,v2,…,vN},文檔總數(shù)為M 的文檔集合D={d1,d2,…,dM}。對于集合D 里的文檔di,di可以用向量空間模型表示為,其中表示序號(hào)為k的詞在di中的權(quán)重,使用詞頻-逆文檔頻率(TF-IDF)來表示。

其中dfi表示整個(gè)語料中含有該詞的文檔數(shù)量,tfij表示某篇文檔中對應(yīng)詞的詞頻。
Quan[6]等提出了一種基于主題相似性的度量方法(TBS),在對語料集執(zhí)行LDA 主題估計(jì)以后,可以得到總數(shù)為Z 的潛在主題及其概率分布矩陣j和θ,其中φ={t1,t2,…,tZ},ti為詞匯在第i 個(gè)主題上的分布。ti={ti1,ti2,…,tiN},tij表示第j個(gè)詞對應(yīng)于主題ti的概率。對于兩個(gè)短文本,其相異詞定義如下[6]:

提取的概率主題可以被視為一種“概念”,由一組單詞及其相應(yīng)的概率表示。如果d1,d2均大概率屬于某一主題,可以合理地推斷出兩個(gè)文檔在一定程度上彼此相關(guān)。我們可以通過Dist(d2)的項(xiàng)對d1進(jìn)行特征擴(kuò)展,同理可使用Dist(d1)的項(xiàng)對d2進(jìn)行特征擴(kuò)展。假設(shè)Dist(d1)的所選項(xiàng)的索引是m,并且Dist(d2)的為n,我們可以采用如下方法擴(kuò)展W(1)和W(2)的特征向量[6]:

針對Quan[6]等所使用的方法只適用基于距離的KNN 或者K-means 等算法,而對SVM 這些對文本分類效率比較高的分類算法不適用的問題。對擴(kuò)展特征向量的改進(jìn)如下:

此方法直接為每一個(gè)短文本建模,挖掘出短文本與短文本之間的內(nèi)聯(lián)信息并組合到一起。此方法有可能造成多個(gè)文檔共同作用下導(dǎo)致累加特征值突然變大,為了解決這個(gè)問題,我們的做法是讓累加的值不再是固定的特征值,而是增加一個(gè)哈希函數(shù)ξ:N→±1,此時(shí)我們有:

這樣的好處是,擴(kuò)展后的特征仍然是一個(gè)無偏的估計(jì),不會(huì)導(dǎo)致某個(gè)擴(kuò)展后的特征值過大。
基于LDA 和文本互擴(kuò)展的短文本分類流程如圖2所示,整個(gè)算法由4部分組成,分別是文檔向量化、LDA 主題模型訓(xùn)練及主題清洗、使用LDA 實(shí)現(xiàn)短文本的特征擴(kuò)展、SVM訓(xùn)練分類器并用于測試集的預(yù)測。
文檔的向量化使用向量空間模型[15]實(shí)現(xiàn),該模型也稱為詞袋模型(Bag of Words,BOW)。詞袋模型假設(shè)不考慮語料中的上下文關(guān)系,忽略詞序、語法和句法,僅依據(jù)所有詞的權(quán)重,權(quán)重與詞頻有關(guān)。詞袋模型主要包括分詞、統(tǒng)計(jì)詞頻、標(biāo)準(zhǔn)化三個(gè)步驟,完成以上步驟后我們即可以得到一個(gè)用向量表示的文檔。由于大部分的文檔都只會(huì)使用詞匯表中的少部分的詞,因此我們得到的向量化文檔中會(huì)有大量的0,也就是說向量化后的文檔是稀疏的,在短文本中該特征更為明顯。同時(shí),因?yàn)槟硞€(gè)詞的重要性既隨著它在文檔中出現(xiàn)的次數(shù)成正比增加,也隨著它在語料庫中出現(xiàn)的頻率成反比下降,只用詞頻表示并不足夠。因此我們使用式(2)中的TF-IDF來表示文檔向量。

圖2 基于LDA和文本互擴(kuò)展的短文本分類流程圖
LDA 主題模型如圖1 所示,模型里面有隱藏變量θ,φ,z,模型的參數(shù)是α,β。LDA模型的參數(shù)估計(jì)方法主要有變分推斷EM 和Gibbs 采樣兩類。變分推斷EM 算法通過“變分推斷”和EM 算法來得到主題模型的“文檔—主題”分布和“主題—詞”分布。為了求出模型參數(shù)和對應(yīng)的隱藏變量分布,EM 算法需要在E 步先求出隱藏變量θ,φ,z的基于條件概率分布的期望,接著在M 步極大化這個(gè)期望,得到更新的后驗(yàn)?zāi)P蛥?shù)α,β。Gibbs 采樣算法則是將α,β作為已知的先驗(yàn)輸入,目標(biāo)是得到整體z,w,也就是“文檔—主題”分布和“主題—詞”分布。通過采樣得到了所有詞的主題,那么通過統(tǒng)計(jì)所有詞的主題計(jì)數(shù),就可以得到各個(gè)主題的詞分布。接著統(tǒng)計(jì)各個(gè)文檔對應(yīng)詞的主題計(jì)數(shù),就可以得到各個(gè)文檔的主題分布。文獻(xiàn)[16]中指出Gibbs采樣在困惑度與運(yùn)行速度等方面均優(yōu)于變分推斷EM 算法。此外,Gibbs采樣方法描述簡單和易于實(shí)現(xiàn),使其成為了概率主題模型中的常用參數(shù)估計(jì)方法。
LDA模型訓(xùn)練好之后,為了進(jìn)一步消除噪聲主題(如語義不連貫的主題,類別傾向性偏差較大的主題等),我們有以下的假設(shè):最有意義的主題與單個(gè)主題類別相關(guān)性最高,如果主題與許多類別都密切相關(guān),則可能是噪聲主題[17]。因此,我們從信息論的角度,根據(jù)信息熵的相關(guān)概念,使用一種類別熵(Category Entropy,CE)的度量來清洗主題,定義如下:

其中Q 為類別集合,p(q|t)為當(dāng)前類別q 對應(yīng)某一個(gè)主題t 的概率。類別熵CE(t)越大,則說明該主題t 越有可能是噪聲主題。當(dāng)某一主題t 的熵值CE(t)大于閾值τ時(shí),我們將其從擴(kuò)展短文本的主題集合中去除。
一般來說,文檔向量化之后都會(huì)呈現(xiàn)出稀疏的特征,短文本向量化后表現(xiàn)尤為突出。因此,我們將特征擴(kuò)展作為短文本分類中的主要工作內(nèi)容。我們的方法首先使用Gibbs 采樣算法提取概率主題,而不考慮類別信息。也就是說,我們平等對待集合中包含的所有文本片段并對它們執(zhí)行Gibbs抽樣,并相應(yīng)地導(dǎo)出一組總數(shù)為Z 的概率主題。后續(xù)將使用這些概率主題以及文本之間的隱含信息來對短文本的特征進(jìn)行擴(kuò)展。
如果兩個(gè)文檔都傾向于同一個(gè)主題的時(shí)候,我們認(rèn)為這兩個(gè)文檔大概率屬于同一個(gè)類別。在這一前提下,使用短文本間的相異詞進(jìn)行特征擴(kuò)展,將對應(yīng)的主題特征擴(kuò)充到原有的短文本中成為了可能。在本文中,我們將訓(xùn)練主題模型后得到的概率主題與不同文本之間的相異詞結(jié)合,通過前文中式(5)的算法思想,實(shí)現(xiàn)稀疏文檔向量的特征擴(kuò)展。特征擴(kuò)展的算法偽代碼如下:
基于概率主題和文本相異詞的短文本特征擴(kuò)展算法
輸入:φ:某個(gè)主題之上的詞分布
θ:某篇文檔的主題分布
D:語料中的文檔集合
λ:高概率主題的閾值
C:某一主題的高概率的相異詞集合
輸出:W':擴(kuò)展特征后的向量化文檔集合
1.根據(jù)式(3),(4)獲取相異詞的集合Dist(d1),Dist(d2),…,Dist(dM)
2.向量化D得到文檔的向量化集合W=TF-IDF(D)
3.訓(xùn)練LDA 主題模型,并根據(jù)式(6)篩除噪聲主題,得到剩余的主題集合T'
4.擴(kuò)展W得到W'


5.返回W'
SVM[2]是一種常見的判別方法,屬于有監(jiān)督模型中的一種。SVM 自一出現(xiàn)就以其良好的分類性能席卷了機(jī)器學(xué)習(xí)領(lǐng)域,如今在機(jī)器學(xué)習(xí)領(lǐng)域中常用于模式識(shí)別、分類以及回歸分析等。在特征數(shù)量非常多的或者樣本數(shù)量遠(yuǎn)遠(yuǎn)小于特征數(shù)量的時(shí)候,模型往往線性可分,一般使用線性核函數(shù)結(jié)合合適的懲罰系數(shù)C 訓(xùn)練模型。在語料集足夠的情況下,VSM 模型向量化后的文檔具有明顯的多特征數(shù)量的特點(diǎn)。因此,我們的實(shí)驗(yàn)采取線性核函數(shù)驗(yàn)證算法的分類性能。
為了驗(yàn)證論文所提出算法的有效性,我們選取一些典型的短文本來進(jìn)行實(shí)驗(yàn)驗(yàn)證和分析評(píng)估。實(shí)驗(yàn)數(shù)據(jù)我們采用了清華大學(xué)自然語言實(shí)驗(yàn)室推出的中文文本分類數(shù)據(jù)集THUCNews[18]。我們在原有數(shù)據(jù)集中選取了體育、彩票、房產(chǎn)、教育、時(shí)尚、游戲、科技、財(cái)經(jīng)等八大類別中的部分新聞數(shù)據(jù),一共選取了7950 篇文檔,其中體育999 篇,彩票1000篇,房產(chǎn)986 篇,教育997 篇,時(shí)尚972 篇,游戲998篇,科技1000 篇,財(cái)經(jīng)997 篇。每個(gè)文檔的標(biāo)題字?jǐn)?shù)較短,符合短文本的基本特性,因而我們使用文檔標(biāo)題作為測試用的數(shù)據(jù)集,訓(xùn)練集和測試集按4∶1 的比例隨機(jī)分配。文檔的正文部分作為特征擴(kuò)展用的數(shù)據(jù)集,用于LDA 模型的訓(xùn)練以及SVM分類器模型的擬合。評(píng)估方法選擇了傳統(tǒng)的評(píng)估標(biāo)準(zhǔn)對分類性能進(jìn)行評(píng)估,包括準(zhǔn)確率P、召回率R以及F1 值,其中F1 值是準(zhǔn)確率P 與召回率R 的調(diào)和平均數(shù),能夠有效地衡量模型的綜合性能。
數(shù)據(jù)集的分詞使用開源的結(jié)巴分詞庫對語料進(jìn)行處理。結(jié)巴分詞基于前綴詞典實(shí)現(xiàn)高效的詞圖掃描,并通過動(dòng)態(tài)規(guī)劃查找最大概率路徑,找出基于詞頻的最大切分組合,實(shí)現(xiàn)了有效的分詞,擁有精確模式、全模式、搜索引擎模式三種分詞的方式。在實(shí)驗(yàn)中,我們選擇精確模式進(jìn)行分詞,分詞完畢后導(dǎo)入停用詞表將標(biāo)點(diǎn)、數(shù)字以及一些無意義的中文詞去除,得到多組預(yù)處理完成的文檔。使用VSM 模型向量化預(yù)處理完畢的文檔,并準(zhǔn)備訓(xùn)練LDA模型。
困惑度一般在自然語言處理中用來衡量訓(xùn)練出的語言模型的好壞。在用LDA 做主題和詞聚類時(shí),原作者D.Blei就是采用了困惑度[14]來確定主題數(shù)量。為了選擇合適的主題參數(shù),我們使用k-折交叉驗(yàn)證的方法尋找困惑度最低的概率主題模型。在實(shí)驗(yàn)中我們?nèi)=5,將原始的訓(xùn)練集分為5份,每次取出1份,剩余的4份作為尋找最佳主題數(shù)的訓(xùn)練樣本,重復(fù)5 次,通過最終結(jié)果分析確定最佳主題數(shù)量。在實(shí)驗(yàn)中,我們?nèi)DA 模型的超參數(shù)α和β分別為50/K 和0.01,迭代次數(shù)選擇200 次,其中K 為測試使用的主題數(shù)量,將K 設(shè)定在5~200間,并以間隔5 取值的等差數(shù)列來尋找最優(yōu)主題數(shù)K。通過多次的實(shí)驗(yàn)可知,困惑度隨著主題數(shù)量的增加而降低,在主題數(shù)K 達(dá)到60 之后,困惑度不再降低,而是隨著主題數(shù)量的增加而增加。因此,我們選取主題數(shù)量K=60來建立主題模型。
高概率主題的閾值λ對分類性能的影響如圖3所示,從圖中可以看出,正確率隨著λ的增加,先呈現(xiàn)出上升的趨勢,在λ=0.3 時(shí),達(dá)到最高點(diǎn),然后隨著λ的增加而緩慢下降,故后續(xù)實(shí)驗(yàn)使用λ=0.3 作為實(shí)驗(yàn)參數(shù)。

圖3 高概率主題閾值對分類性能的影響示意圖
對測試集的各個(gè)類別的分類結(jié)果如表1 所示。從表1 中的對比結(jié)果可以看出,相對于直接使用VSM+SVM 模型進(jìn)行分類的傳統(tǒng)方法,本文采取的基于概率主題模型和文本互擴(kuò)展的短文本分類方法對不同類別的短文本分類,準(zhǔn)確率和召回率都有一定的提高,尤其是對于召回率較低的體育和財(cái)經(jīng)類別,經(jīng)過擴(kuò)展后的性能提升更加明顯。另外,雖然體育、房產(chǎn)等類別的準(zhǔn)確率比傳統(tǒng)方法的略低,但召回率提升明顯,總體性能提升。圖4 表示四種方法P、R、F1的宏平均。這表明了潛在概率主題及文本相異詞的隱含信息可以有效提高短文本的分類性能。雖然相較于TBS+KNN[6]的方法性能提升不明顯,但是相較于KNN 大計(jì)算量及分類效率不高的特點(diǎn),使用SVM 作為分類器的模型在效率上有明顯的優(yōu)勢。

圖4 四種方法的宏平均對比圖
本文從短文本相似性的角度出發(fā),研究了如何利用LDA 主題模型以及文本之間的隱含信息對短文本進(jìn)行特征擴(kuò)展。基于短文本存在的特征稀疏,信息量少等問題,在LDA 主題模型強(qiáng)大的主題抽取以及文本表示能力的基礎(chǔ)上,提出了利用文本之間的相異詞與概率主題結(jié)合的短文本分類框架,并通過實(shí)驗(yàn)驗(yàn)證了該方法對短文本分類的有效性。對于個(gè)別的類別,擴(kuò)展后的性能提升不明顯,主要原因有:

表1 四種方法分類實(shí)驗(yàn)結(jié)果對比一覽表
1)擴(kuò)展的特征項(xiàng)的質(zhì)量。通過特征項(xiàng)的擴(kuò)展有助于提高短文本語義的表達(dá)能力,但有部分的特征項(xiàng)可能是噪聲數(shù)據(jù),引入特征項(xiàng)的同時(shí)也引入了噪聲,影響了分類的效果;
2)語料的預(yù)處理和降維方法。語料預(yù)處理不當(dāng)會(huì)導(dǎo)致較多噪聲數(shù)據(jù)的殘留,降維不當(dāng)會(huì)使有意義的特征項(xiàng)被清除,二者都會(huì)都分類效果產(chǎn)生一定的影響。
因此,我們未來的工作將進(jìn)一步提高短文本特征擴(kuò)展的準(zhǔn)確性以及優(yōu)化各個(gè)閾值參數(shù),并擴(kuò)大實(shí)驗(yàn)的規(guī)模,使用各種不同的數(shù)據(jù)來進(jìn)一步驗(yàn)證我們的算法。