鄭 誠 ,董春陽 ,黃夏炎
1.安徽大學 計算機科學與技術學院,合肥 230601
2.計算智能與信號處理教育部重點實驗室,合肥 230601
短文本因為其內容簡短、易于閱讀和傳播的特性而作為信息交互的載體廣泛存在,例如新聞標題、社交媒體的信息、短信等,因此如何讓機器自動而高效地理解短文本一直是自然語言處理的重要任務。文本分類作為文本理解的基礎任務,能夠服務于大量的下游應用(例如文本摘要、情感分析、推薦系統等),更是長期以來學術界與工業界關注的焦點。
盡管傳統的分類模型如支持向量機(Support Vector Machine,SVM)[1]和神經網絡[2-3]已經成功地應用于處理長文本,但是當其直接應用于短文本時,性能會不可避免地下降,這是因為短文本語句存在嚴重的稀疏性和模糊性問題,從而導致模型在分類的時候沒有足夠的特征進行類別的判斷。
針對以上問題,本文構建了一個用于建模短文本的異構信息網絡(Heterogeneous Information Network,HIN),它可以靈活地合并文本的潛在語義信息及其關系,并提出一種用于短文本分類的新型圖卷積網絡BTM_GCN(BTM 圖卷積網絡)。該新型圖卷積網絡可以有效地捕獲異構信息網絡中融入的主題信息和單詞信息,以及它們之間的關系,增強了文檔節點的語義信息,從而有效地緩解了短文本存在的語義稀疏性問題。
本文的貢獻總結如下:
提出了一種用于短文本分類的新型圖卷積網絡BTM_GCN,利用BTM主題模型獲取了短文本的文檔級潛在主題。圖卷積網絡是一種簡單且高效的圖神經網絡,能夠很好地捕獲到節點與節點之間的高階鄰域信息。
在三個英文短文本數據集上的實驗結果表明,本文提出的BTM_GCN相比于基準模型,達到了最好的文本分類效果。
傳統文本分類的主要研究內容為特征工程和分類算法兩部分。例如SVM 等[4]都是基于特征工程的,其中最常用的特征有詞袋(Bag of Word,BoW),詞頻-逆文本頻率指數(Term Frequency-Inverse Document Frequency,TF-IDF)和某些更復雜的特征,如n-grams或主題等[5]。最近有一些研究工作[6-7]將文本建模為圖形,并從圖形中提取出基于路徑的特征。盡管它們在長文本和經過良好編輯的文本上取得了成功,但是在短文本分類時由于特征不充足,導致它們都未能獲得令人滿意的分類性能。為了解決這些問題,很多人都做出努力來豐富短文本的語義信息。例如,Phan等人借助外部語料庫提取了短文本的潛在主題[8]。Wang 等人提出了從KBs中引入外部實體信息來提高文本分類效果[9]。但是他們都是依賴于領域知識的特征工程,導致這些方法的性能都很有限。
深度學習用于文本分類的研究主要分為兩部分,一部分聚焦于詞嵌入[10]的研究,另一部分聚焦于深度神經網絡的研究。最近的一些研究表明,深度學習成功地應用于文本分類,在很大程度上是由于詞嵌入的有效性[11]。有一些研究工作將無監督的詞嵌入聚合為文檔嵌入,然后再將這些文檔嵌入輸入分類器進行分類[12]。另外,Joulin等人提出了一種簡單而有效的文本分類方法fastText,該方法將單詞嵌入的平均值作為文檔嵌入,然后將文檔嵌入送到線性分類器中進行分類[13]。Wang等人提出標簽嵌入注意模型(Label Embedding Attention Model,LEAM),該模型將單詞和標簽嵌入同一個聯合空間中來進行文本分類[14]。在深度神經網絡的研究中,卷積神經網絡(Convolutional Neural Network,CNN)和循環神經網絡(Recurrent Neural Network,RNN)是兩種具有代表性的深度神經網絡。在文本分類中,Kim提出了基于詞向量的多個卷積核的卷積神經網絡用于句子分類[2]。Santos等人將英文單詞字符序列作為基本單元,分別訓練得到文本的單詞級和句子級特征,提高了短文本分類的準確性[15]。Lee 等人提出了基于CNN 和RNN 的混合模型對短文本進行分類,并取得了不錯的分類效果[16]。
最近,稱為圖神經網絡或圖嵌入的新研究方向引起了廣泛關注[17-18]。它們已成功地應用于各種領域,例如網絡分析[19]和自然語言處理等領域。在自然語言處理領域中,Bastings 等人在句法依存樹上使用了圖卷積網絡來改善關于句子的機器翻譯[20]。Yao等人提出了Text GCN[21],該模型使用包含文檔和單詞作為節點的圖形對文本語料庫進行建模,并將圖卷積網絡應用于文本分類,獲得了最先進的性能。與現有的工作不同,本文為短文本構建了一個異構信息網絡,該網絡是靈活且可擴展的,其合并了文本的潛在主題特征,進行了文檔級語義的抽取,并結合圖卷積網絡,提高了短文本分類效果。
傳統的主題模型,如LDA(Latent Dirichlet Allocation)和PLSA(Probabilistic Latent Semantic Analysis)等,其獲取詞語的共現信息來表示文檔級的潛在主題,當這種方式用在短文本上時,由于短文本長度很短,會存在嚴重的數據稀疏問題。因此,Yan等人提出了一種用于在短文本中建模主題的新穎方法[22],即通過直接對整個語料庫中單詞共現模式(即雙詞)的生成進行建模來學習主題,稱為雙項主題模型(Biterm Topic Model,BTM),解決了文檔級的稀疏單詞共現模式的問題。
BTM 主題模型的生成過程可簡要敘述為:將整個語料庫看為一系列主題的組合,每一對詞組來自某一個主題,一對詞組屬于某個主題的概率是由每對詞組中兩個單詞從同一個主題中隨機抽樣得到。該模型生成過程的概率模型如圖1所示。

圖1 BTM概率模型圖
圖中,θ表示文檔-主題分布,φ表示主題-詞分布,z表示主題標記,wi和wj表示一對詞組中詞的標記,NB表示每對詞組的集合,Κ表示主題個數。
圖卷積網絡(Graph Convolutional Network,GCN)是一種多層神經網絡,它可直接在圖上進行,并根據其鄰域的屬性來生成節點的嵌入向量[23]。
本文將圖表示為G=(V,E) ,其中V(| |V =n) 和E分別是節點和邊的集合。假設每個節點都與其自身相連,那么任意v有 (v,v)∈E。令X∈?n×m是包含所有n個節點及其特征的矩陣,其中m是特征向量的維數,每行xv∈?m是v的特征向量。引入G的鄰接矩陣A及其度矩陣D,其中Dii=∑jAij。由于自環,A的對角線元素都設置為1。當GCN只有一層時,它僅可以捕獲直接鄰居的信息,當多個GCN層堆疊在一起時,有關較大鄰域的信息將被集成。對于一層GCN,新的k維節點特征矩陣L(1)∈?n×k計算為:


其中,j表示層數且L(0)=X。
BTM_GCN模型對短文本數據進行文本預處理后,利用BTM 主題模型進行主題訓練,再將訓練結果與短文本進行基于異構圖的文本建模。該異構圖靈活地建模了詞、文檔、主題對象之間的語義信息,并使用圖卷積網絡來捕獲文檔節點的鄰域節點嵌入的語義信息,從而緩解短文本的語義稀疏性問題。具體的模型結構如圖2所示。

圖2 BTM_GCN模型結構圖
本文建立了一個大型文本異構圖G=(V,E),它包含短文檔D={d1,d2,…,dm}節點、主題T={t1,t2,…,tK}節點和單詞W={w1,w2,…,wn}節點。其中V=D∪T∪W,邊的集合E包含了節點之間的關系。通過合并主題、單詞和關系,豐富了短文本的語義,從而提高了分類的效果。如圖3所示,通過BTM主題模型對AGNews數據集進行訓練,可得出短文本“England stock market suffered a sharp fall on Monday…”的最相關主題是“Financial”和“Stock”,因此根據該主題信息就可容易且正確地將該條短文本判定為“Business”類別。再由短文本“The Bank of England is set to keep interest rates…”可知,其含有單詞“Interest”和“England”,這兩個單詞在整個語料文本中多次共同出現,關聯程度很大,于是將這兩個單詞建立邊的連接,讓這兩個單詞節點充當信息傳播的橋梁和關鍵路徑,使得短文本節點的標簽信息可以通過圖卷積網絡在整個圖形中全局性地傳播。

圖3 一個AGNews短文本的HIN示例
具體地說,首先利用BTM挖掘潛在主題T,以豐富短文本的語義。每個主題ti=(θ1,θ2,…,θw)(w表示單詞的數量)由單詞的概率分布表示。為每個文檔分配概率最大的前P個主題,即最相關主題。若將文檔分配給主題,則會在文檔節點和主題節點之間建立邊,邊的權重設定為主題概率值。
其次利用Doc2vec[12]為每個文檔訓練出長度為d的特征向量作為文檔的初始化表示。Doc2vec 繼承于Word2vec,它能更好地使用文章或短句進行訓練與建模,并且可在文檔層面保留詞語的順序關系與語義。這里單詞節點特征的初始化為預訓練的Glove向量,長度也為d。
最后根據文檔中單詞的出現(文檔—單詞邊)和整個語料庫中單詞的共現(單詞—單詞邊)在詞節點之間建立邊。文檔節點和單詞節點之間的邊的權重是文檔中單詞的詞頻逆文本頻率,其中詞頻是單詞在文檔中出現的次數,逆文本頻率是總文本數目除以包含該單詞的文本數目,再將得到的商取對數獲得。發現使用TF-IDF權重比僅使用單詞頻率更好。為了利用全局單詞共現信息,在語料庫中的所有文檔上使用固定大小的滑動窗口來收集共現信息。本文采用逐點相互信息(Pointwise Mutual Information,PMI),它采用一種流行的詞關聯度量來計算兩個詞節點之間的關聯程度,并作為邊的權重。在本文的初步實驗中,使用PMI可以獲得比使用單詞共現計數更好的結果。形式上,節點p和節點q之間的邊權重定義為:

關于每對單詞p、q的PMI值計算方式為:

其中,W(p)表示滑動窗口包含單詞p的數量;W(p,q)表示滑動窗口包含單詞p、q的數量;Wsum表示滑動窗口在文本中的滑動總數。若大于0 的PMI(p,q)值越大,就代表單詞p、q的語義關聯度越高,而小于0 的PMI(p,q)值越小,就代表它們的語義關聯度越低。
在構建完異構文本圖后,將該圖輸入到只有兩層的簡單GCN中,因為輸入的是一個異構圖,所以構建了一個大型的特征矩陣其中⊕表示矩陣的連接操作,XT、XD、XW分別表示主題節點、文檔節點和單詞節點的特征矩陣,而矩陣的每一行代表一個節點的特征向量。最后通過一個softmax分類函數來預測文檔的標簽:


其中,yD表示用于訓練的短文本索引集合;N表示輸出特征的維數,即標簽類別的數量;Y是相應的標簽指示矩陣;Θ表示模型參數;λ表示正則化因子。
本文對三個英文短文本數據集(MR、AGNews 和Snippets)進行實驗,它們的詳細描述如下。
MR:電影評論數據集,其中每個評論僅包含一個句子[24]。該語料庫含有5 331 個正面評論和5 331 個負面評論,每個句子都用正或負來標注,以進行二分類情感分類。
AGNews:該數據集來自文獻[3]。從AGNews中隨機選擇9 000條新聞,將新聞平均分為4類。
Snippets:該數據集包含Phan等人發布的Google搜索摘要[8],共有8個基本標簽,例如健康和體育等。
表1 展現了三個數據集的統計信息。其中每個數據集隨機選出70%作為訓練集,30%作為測試集,在訓練集中再隨機選出10%作為驗證集。

表1 數據集統計表
對于BTM_GCN,將第一個卷積層的嵌入大小設置為200,并將窗口大小設置為10,主題數K=15,每個文檔的最相關主題數P=2,學習率設置為0.001,dropout率設置為0.5,正則化因子λ=5E-6。隨后使用Adam[25]對該網絡進行最多epochs=300 的訓練,如果連續10個epochs關于驗證集的損失沒有減少,則停止訓練。對于基準模型,使用默認參數設置作為原始論文或復現中的參數設置。對于使用了預訓練詞嵌入的基準模型,使用的Glove詞向量長度d=200。
(1)SVM+LDA:使用LDA主題特征的SVM分類器[5]。
(2)CNN:卷積神經網絡[2],這里使用隨機初始化的詞嵌入作為CNN的輸入。
(3)PTE:預測文本嵌入[26],它首先構建包含詞、文檔和標簽作為節點的異構文本網絡來學習詞嵌入,然后以平均詞嵌入作為文檔嵌入進行文本分類。
(4)LSTM:LSTM模型[27]使用最后一個隱藏狀態作為整個文本的表示形式。
(5)fastText:一種簡單而有效的文本分類方法[13],該方法將單詞嵌入的平均值作為文檔的嵌入,然后將文檔嵌入送到線性分類器中進行分類。
(6)LEAM:標簽嵌入注意模型[14],該模型將單詞和標簽嵌入同一個聯合空間中進行文本分類。
表2 展示了在三個數據集上不同方法的文本分類精準度,其中BTM_GCN在所有數據集上均達到了最優的分類效果,證明了本文模型的有效性。BTM_GCN運作良好的主要原因有以下兩點:(1)文本圖可以同時捕獲文檔-主題關系、文檔-單詞關系和全局的單詞-單詞關系;(2)GCN 作為拉普拉斯平滑的一種特殊形式,將節點的新特征計算為其自身及其二階鄰居的加權平均值。節點之間的高階領域信息表現在同一短文本語料庫中不同短文檔間單詞的關聯性上,這些關聯可能是多階連接的,即為高階鄰域,而GCN能很好地捕獲到這些信息。主題節點融合了文檔級的潛在主題,豐富了短文本的語義,緩解了短文本數據的稀疏性。

表2 實驗結果比較(Test Accuracy)
另外,還觀察到BTM_GCN相比于其他模型在分類性能上的提升并不非常突出。這是因為GCN忽略了在文本分類中有用的單詞順序,而CNN 和LSTM 等模型則明確地對連續的單詞序列進行了建模。另一個原因是,由于短文本較短且滑動窗口數量較少,導致圖中邊的數量明顯少于長文本圖中邊的數量,使得信息在節點之間的傳遞不夠充分。
圖4 展示了在MR 數據集上主題數K對分類結果的影響??梢钥吹剑瑢τ谥黝}數,測試集的分類準確性首先隨主題數的增加而增加,當主題數大于15時,其分類準確性就會慢慢下降。這是因為,當主題數很少時,發現的主題就會非常粗糙,在這種情況下,簡短文檔更可能屬于一個主題。相反,隨著主題數K的增加,將會學習到更多的具體主題。但是如果主題數非常多的話,在選取最相關主題后,就可能會丟失其他相關主題信息。

圖4 BTM_GCN模型的主題數K 對分類效果的影響
圖5展示了在MR數據集上分配給文檔的最相關主題數P對分類結果的影響,測試集的分類準確性首先隨著P的增加而增加,然后在P大于2時降低。以上結果表明,模型對主題數和最相關主題數較敏感,過多或過少的數量都會對模型的分類效果產生較差的影響。

圖5 BTM_GCN模型的最相關主題P 對分類效果的影響
圖6 展示了在MR 數據集上滑動窗口大小W的測試精度。可以看到,隨著窗口大小的增大,測試準確性首先會提高,但是當窗口長度大于10時,準確率就會慢慢下降。這表明,窗口太小則不能生成足夠的全局單詞共現信息,而窗口太大則可能會在關系不緊密的節點之間添加邊。

圖6 BTM_GCN模型的滑動窗口大小W 對分類效果的影響
本文構建了一個用于建模短文本的異構圖,它靈活地合并了潛在的語義信息及關系,并提出一種用于短文本分類的新型圖卷積網絡BTM_GCN。利用該圖卷積網絡可以有效地捕獲異構圖中潛在的主題信息和單詞信息,以及它們之間的關系,豐富了文檔節點的語義信息,從而有效地緩解了短文本分類時存在的語義稀疏性問題。本文在三個數據集上進行了實驗,達到了較基準模型更好的分類效果。未來的工作會考慮加入Attention機制或者引入外部知識,如知識圖譜等,來提高模型的性能。