袁自勇,高 曙,曹 姣,陳良臣,3
(1.武漢理工大學 計算機科學與技術學院,武漢 430063;2.益陽醫學高等專科學校 圖書館網絡信息中心,湖南 益陽 413046;3.中國勞動關系學院 應用技術學院,北京 100048)
隨著社交網絡規模不斷擴大,每天以帖子或評論的形式產生數以百萬計的短文本[1],如何有效地分類和管理短文本數據是一個亟待解決的問題。盡管許多機器學習方法在自然語言處理中取得了較優的效果,但在直接應用于短文本分類時性能提升存在瓶頸,原因在于短文本存在稀疏性、不規則性等特點[2],模型無法提取豐富的語義特征。此外,許多神經網絡模型在訓練時依賴大量標記樣本,但在現實中,標記成本昂貴,有些標記需要專業知識,導致獲得大量標記數據十分困難。因此,研究面向小樣本的短文本分類方法具有重要的理論價值與現實意義。
目前,小樣本短文本分類方法主要面臨短文本缺乏足夠的單詞量和上下文信息、較少的標記數據只能提供有限的特征信息等挑戰。如何充分利用少量標記樣本和其他大量未標記樣本是小樣本短文本分類中的關鍵問題[3]。
本文構建一種基于異構圖卷積網絡(Heterogeneous Graph Convolutional Network,HGCN)的小樣本短文本分類模型。針對短文本特點構造短文本異構信息網絡STHIN 實現多維語義增強,避免短文本語義稀疏,并構造異構圖卷積網絡HGCN-RN 提取STHIN 中的節點及鄰居特征,利用少量標記樣本和其他未標記樣本中的特征信息實現小樣本短文本分類。在此過程中,采用隨機去鄰法在STHIN中引入適量噪聲以實現數據增強,解決過擬合問題,采用雙重注意力機制分別從節點級別和類型級別捕獲不同相鄰節點的重要性,解決語義信息重要性不同的問題。
近年來,針對短文本分類的研究獲得了廣泛的關注。在基于深度神經網絡的研究中,常用模型是卷積神經網絡[4]和遞歸神經網絡[5]。學者們提出了多種適用于短文本分類的神經網絡模型,如KIM等[6]提出一種基于詞向量多卷積核的卷積神經網絡,ZHANG 等[7]設計了Char-CNN,在不使用預訓練詞向量和語法結構下,實現了文本分類。此外,增強短文本語義特征也是解決稀疏短文本問題的有效方法之一。WANG 等[8]通過知識庫中的實體和概念來豐富短文本語義。但是這些方法依賴大量的訓練數據,并且不包含語義關系。
目前流行的小樣本學習方法大致分為以下4 類:
1)基于遷移學習。此類方法在含有豐富標簽的大規模數據集上訓練基礎網絡,并對特定領域的網絡參數進行微調訓練,如HOWARD 等[9]在大型通用語料庫上訓練通用語言模型,并對其進行微調以實現分類。
2)基于度量學習。此類方法是對樣本間距離分布進行建模,使得同類樣本靠近,異類樣本遠離,如GENG 等[10]提出Induction 網絡,使用膠囊網絡來動態的表征類向量,度量關系分數,進而完成分類。
3)基于數據增強。運用增強技術擴充樣本集,實現文本的同質異構變化,如WEI 等[11]提出EDA 技術,包括同義詞替換、隨機插入、隨機交換和隨機刪除操作。
最近,圖卷積網絡在小樣本學習領域中逐漸引起關注。YAO 等[12]基于單詞共現和文檔單詞關系為語料庫構建文本圖,并訓練Text GCN 進行文本分類。HU 等[13]構建基于雙重注意力機制的異構圖注意力網絡模型HGAT,實現了半監督短文本分類。
綜上,多數深度學習方法無法處理現實中僅有少量標記樣本的學習場景,小樣本學習方法較少關注短文本分類和因標記樣本過少引發的過擬合問題。
本文研究的問題定義如下:給定m篇短文本文檔D={d1,d2,…,dm},n種類別標簽C={c1,c2,…,cn},其中,s篇短文本文檔帶有對應的類別標記,02 基于HGCN 的小樣本短文本分類模型
2.1 模型架構
本文構建基于異構圖卷積網絡的小樣本短文本分類模型。如圖1 所示,該模型由輸入層、特征提取層、語義附加層、圖卷積層和輸出層組成。

圖1 基于HGCN 的小樣本短文本分類模型架構Fig.1 Framework of few-shot short text classification model based on HGCN
1)輸入層。一方面,將短文本數據集轉換為向量形式,輸入到語義附加層;另一方面,直接將短文本數據集輸入特征提取層,用于提取短文本語義信息。
2)特征提取層。通過TagMe 獲取實體概念和描述,作為實體特征;使用BTM 獲取文檔-主題分布和主題-單詞分布,作為主題特征。該層輸入短文本數據集,輸出為實體特征和主題特征。
3)語義附加層。以文本、實體、主題為節點,融合來自特征提取層的實體特征、主題特征和來自輸入層的短文本特征信息,從而構造短文本異構信息網絡STHIN。
4)圖卷積層。從STHIN 中獲得鄰接矩陣、度矩陣和特征矩陣,其中特征矩陣X為包含n個節點及其特征的矩陣。將異構圖卷積網絡用于捕獲STHIN 中的節點信息及其關系,并通過雙重注意力機制和隨機去鄰法捕獲不同語義信息的重要性和緩解模型過擬合問題。該層的輸入為STHIN,輸出為向量矩陣形式的卷積結果。
5)輸出層。通過softmax 函數輸出n個節點的類別標簽,Yi表示節點i(i=1,2,…,n)的類別標簽。該層輸入為圖卷積層的卷積結果,輸出為所有節點的類別標簽。
在特征提取層和語義附加層,使用BTM 主題模型[14]挖掘潛在主題信息并構造短文本異構信息網絡STHIN。
構造STHIN 的具體過程如下:
1)針對短文本特點,使用BTM 主題模型挖掘潛在主題T。在獲取文檔-主題矩陣和主題-詞矩陣后,選擇概率最高的前N個主題作為短文本D的潛在主題。因此,每個短文本節點會有N條邊與主題節點相連。
2)使用實體鏈接工具TagMe[15]將短文本D中的實體提及(entity mention)映射為Wikipedia 中的實體E,并使用基于Wikipedia 語料庫預訓練的word2vec學習實體的詞嵌入。如果短文本D包含K個實體,則短文本節點會有K條邊與實體節點相連。此外,當實體節點之間的相似度高于預定閾值時,則在該實體對之間建立邊,用于合并更多的語義信息。
STHIN 算法描述如下所示:
算法1STHIN 構造算法

STHIN 借助實體、主題等附加信息豐富了短文本語義特征,其中潛在主題通過BTM 主題模型直接在短文本語料庫中訓練獲得,與LDA 相比,BTM 是在整個語料庫中對詞的共現模式進行建模,解決了稀疏詞的共現問題,更適合于短文本。因此,在短文本缺乏足夠的單詞量和上下文信息的情況時,異構信息網絡圖STHIN 實現了短文本的多維語義增強,有效地解決了短文本語義稀疏問題。
2.3.1 異構圖卷積網絡HGCN
語義附加層輸出的STHIN 中僅存在少量標記樣本,但未標記樣本與標記樣本之間以多種關系連接。本文改進傳統圖卷積網絡GCN 的傳播規則,將異構圖卷積網絡(HGCN)用于捕獲STHIN 中的各種類型節點信息及其關系,從而充分利用標記樣本和其他未標記樣本的信息,有效解決小樣本問題。
將2.2 節構建的STHIN表示為G=(V,E),其 中V(|V|=n)和E是節點和邊的集合,獲得鄰接矩陣A和度矩陣D。為了匯總節點本身的特征,鄰接矩陣A需要添加自環,A′=A+I。設X∈?n×m為包含所有節點及其特征的矩陣,其中每行xv∈?m是一個節點v的特征向量,m是特征向量的維數。則圖卷積GCN的層傳播規則為如式(1)和式(2)所示:

為了集成各種類型的節點信息并將它們各自的轉換矩陣投影到一個公共空間中,改進式(1)得到式(3)所示的異構圖卷積傳播規則:

本文利用異構圖卷積網絡捕獲STHIN 中的各種類型節點信息及關系,充分利用有限的標記樣本,聚集節點鄰域信息并進行前向傳播,從而解決小樣本問題。
2.3.2 隨機去鄰法與雙重注意力機制
圖卷積層中將異構圖卷積網絡HGCN 用于捕獲STHIN 中的節點信息,但是由于不同類型節點的語義信息重要性不同,需要結合雙重注意力機制捕獲不同類型節點的重要性。此外,因標記樣本過少引發的過擬合問題也會降低模型的分類性能,因此本文采用隨機去鄰法,在STHIN 中引入適量噪聲以實現數據增強。
1)隨機去鄰法由于小樣本學習中標記樣本的數量有限,導致模型學習時提取的數據特征較少,削弱了模型的泛化能力,易出現過擬合問題。文本數據增強技術可以有效解決小樣本條件下樣本不足的問題,目前主要有回譯法、EDA[11]、基于語言生成模型的文本數據增強等技術,但是與圖像的像素變換有著很大的差異性,文本中單詞的隨機變換會導致語義的缺失或者歧義產生,在對文本的同質異構變化過程中引入過多噪音。
為了實現數據增強并緩解過擬合現象,本文在STHIN 中隨機刪除邊,同時引入噪聲信息,降低模型收斂速度,該方法[16]在基于圖神經網絡GNN 的節點分類研究中已被證明有助于圖卷積網絡的加深和過擬合問題的緩解。為了防止引入過多噪聲導致異構信息圖的結構變形,僅從STHIN 中刪除一定比例的邊。
在圖卷積層的每次訓練時,從短文本異構信息網絡STHIN 中隨機丟棄一定比例的邊,即隨機刪除部分節點的鄰居。鄰接矩陣A′由Adrop表示,如式(4)所示:

其中:Ap表示鄰接矩陣中非零元素以概率p隨機設置為0 的位置。
從鄰居節點信息聚合的角度分析,異構圖卷積網絡HGCN 聚合每個節點的所有鄰居及其自身的信息進行消息傳遞,以獲取到節點的高階特征,而隨機去鄰法使得HGCN 在訓練時隨機聚合鄰居子集,而非所有鄰居信息,即干擾圖形連接,引入適量的噪聲信息,進而導致圖卷積層輸入的STHIN 信息具有隨機性和多樣性,實現了數據增強。
此外,以概率p隨機去鄰使得聚合鄰居信息的期望與p相關,而對權重進行歸一化后則與p無關,因此,隨機去鄰法未改變鄰居聚合的期望,與旋轉、裁剪等典型的圖像數據增強方法相似,隨機去鄰法可以有效防止過擬合問題。
2)雙重注意力機制給定STHIN 中一個特定節點,不同類型的相鄰節點對其具有不同的影響。例如,當實體類型節點攜帶的信息多于主題類型節點時,應設置實體類型的相鄰節點高權重,為異構圖卷積網絡的分類提供更有效的鄰居信息。此外,相同類型的不同相鄰節點也具有不同的重要性,例如同一類型的不同主題節點中包含不同程度的潛在主題信息。
為了同時捕獲節點級別和類型級別的不同重要性,HU 等[13]提出了雙重注意力機制。其中:類型級別的注意力機制用于學習不同類型的相鄰節點的權重,基于當前節點的詞嵌入和類型嵌入計算類型級別的注意力分數;節點級別的注意力機制用于捕獲不同相鄰節點的重要性并減少噪聲節點的權重,在類型級注意力權重的基礎上,獲得節點的詞嵌入,并計算節點級別的注意力分數。雙重注意力機制同時從類型級別和節點級別捕獲不同相鄰節點的重要性,捕獲關鍵語義信息,降低噪音權重,結合異構圖卷積網絡能聚合更有效的鄰居信息,提高分類性能。
構造短文本異構信息網絡STHIN 后,將其輸入到基于雙重注意力機制和隨機去鄰的異構圖卷積網絡HGCN-RN 中,傳播規則如式(5)所示:


RELU(x)=max(0,x),W(0)和W(1)通過梯度下降法優化。所有帶標簽樣本的損失函數定義為交叉熵損失,并添加正則項L2 以減少模型的過擬合,如式(7)所示:

其中:Strain是用于訓練的短文本索引的集合;C表示類的數量;Y是相應的標簽指示矩陣;Θ是模型參數;λ表示正則化因子。
實驗采用以下6 個基準模型:
1)CNN 模型。卷積神經網絡[6]分為2 種形式:使用隨機初始化詞向量的CNN-rand 和使用預訓練詞向量的CNN-pre。
2)LSTM 模型。LSTM[17]使用最后一個隱藏狀態作為整個文本的表示形式,構建隨機初始化詞向量的LSTM-rand 和預訓練詞向量的LSTM-pre2 種模型。
3)PTE 模型。預測性文本嵌入[18],構造一個以單詞、文檔和標簽作為節點的異構文本網絡,并將平均詞向量作為文檔表示進行文本分類。
4)LEAM 模型。標簽嵌入注意模型[19],將單詞和標簽聯合嵌入到同一空間,使用標簽描述信息對詞向量矩陣加權,并實現MLP 分類器進行文本分類。
5)Text GCN 模型。文本圖卷積網絡[12],將文本語料庫建模為包含文檔節點和單詞節點的異構文本圖,并應用GCN 來實現文本分類。
6)HGAT 模型。異構圖注意力網絡[13],該模型使用實體、主題和文檔作為節點來構建異構信息圖,其中主題通過LDA 獲取并使用概率分布表示,并將GCN 與雙重注意力機制相結合實現文本分類。
實驗使用以下3 個數據集:
1)AGNews 數據集[7]。本文實驗從該數據集中隨機選擇10 000 個樣本,并將其分為4 類。
2)Snippets 數據集[20]。使用多個領域的短語在搜索引擎中以短文本形式檢索文本片段,該數據集共包含12 340 個數據,涉及商業、計算機、教育等多個領域。
3)MR 數據集[21]。該數據集由電影評論及其情感標簽組成,每條評論都由正負標記,用于二分情感分類。
表1 顯示了這3 個數據集的統計信息。對于每個數據集,在每個類別中隨機選擇10 個標記樣本,其中一半用于訓練,另一半用于驗證。每個類別中剩余的樣本作為無標簽樣本使用。

表1 實驗數據集信息Table 1 Information of datasets for experiment
模型訓練的實驗環境和配置如表2 所示。Python 模塊主要包括自然語言處理庫genism 3.8.3、機器學習庫scikit-learn 0.23.1 和數學運算庫numpy 1.18.5。對于深度學習網絡的構建,本文實驗使用PyTorch 深度學習庫,該庫具有簡潔高效的優勢,支持動態計算圖,并且在編寫神經網絡時具有高度的靈活性。

表2 實驗環境與配置Table 2 Experimental environment and configuration
實驗采用準確率和F1 值作為模型分類效果的評估指標。
假設類別總數為C,在類別ci的分類結果中,正確分為該類別的樣本數為a,錯誤分類的樣本數為b,將屬于ci類的樣本錯誤地分為其他類的樣本數為c,在其他類上正確分類的樣本數為d。
準確率代表所有正確預測的樣本占總數的比例,計算公式如式(8)所示:


為探索隨機去鄰法的有效性,在數據集上比較有無隨機去鄰對分類效果的影響。首先分別對各個數據集構造短文本異構信息網絡STHIN,其中主題數K、最相關主題數P和實體間相似性閾值δ選用通過調參實驗得到的最優值,預訓練詞向量維度為100;然后建立2 個有無隨機去鄰的異構圖卷積網絡模型,隱藏層維度為512,分別輸入STHIN,并統計分類準確率。限于篇幅,且考慮到3 個數據集實驗分析結論相似,本文僅選取AGNews 數據集的隨機去鄰實驗結論分析。實驗結果如圖2 所示,可以看出,隨機去鄰的方法能夠降低模型收斂速度,有效緩解過擬合問題。對STHIN 中的邊進行隨機刪除,增強了模型的魯棒性,使分類平均準確率提高了1%。

圖2 AGNews 上有/無隨機去鄰的準確率和損失Fig.2 Accuracy and loss with/without reducing neighbors on AGNews
進一步地,探索隨機刪除邊的比例對性能改進的影響。在AGNews 數據集上不同比例的隨機去鄰對分類性能的影響如圖3 所示,可以看出,當5%左右的邊被隨機刪除時可以獲得最佳結果,而當刪除更多的邊時,由于破壞STHIN 節點之間的傳遞性而引起的負面影響將會大于緩解過擬合問題的積極影響。

圖3 AGNews 上不同刪除邊比例條件下的準確率Fig.3 Accuracy with different percentages of deleting edges on AGNews
選擇Text GCN、HGAT和本文的HGCN-RN這3組性能較優的分類模型,在數據集上訓練20 次,取平均值作為最終結果,研究標記樣本數量對分類效果的影響。限于篇幅且考慮3 個數據集實驗分析結論相似,本文僅選取AGNews數據集的標記樣本數量實驗結論分析。實驗結果如圖4 所示,可以看出,隨著標記樣本數量的增加,所有模型在準確率方面都有所提升,其中本文的HGCN-RN 模型性能最優。當每個類別中只有幾十個標記樣本時,其他模型的性能會顯著下降,但是HGCNRN 模型的準確率仍然優于所有其他模型。這表明基于圖卷積網絡的方法可以通過消息傳播更好地利用有限的標記數據,而且STHIN、雙重注意力機制和隨機去鄰法有效的緩解了短文本稀疏問題和過擬合問題,使HGCN-RN 模型在小樣本條件下依然具有較好的短文本分類效果。

圖4 AGNews 上不同標記樣本數量條件下的準確率Fig.4 Accuracy with different number of labeled samples on AGNews
限于篇幅且考慮3 個數據集實驗分析結論相似,本文僅選取AGNews 數據集的調參實驗結論分析。
圖5 展示了AGNews 數據集上主題數量K、相關主題數P和實體相似度閾值δ對分類性能的影響,分析如下:
1)圖5(a)顯示,當主題數達到15 時,分類準確率達到最高,進一步增加K值時,準確率會持續下降。原因在于當主題數K較小時,主題范圍廣,此時短文本可能僅屬于一個主題。隨著主題數的增加,將學習更多特定主題,為短文本選擇最相關的P個主題后,其他相關的主題信息將會丟失。
2)圖5(b)顯示分類準確率首先隨著P的增加而增加,而P>2 時性能下降。這表明模型對相關主題數P較為敏感,當P值較小時,與短文本語義有關的部分潛在主題信息丟失,導致模型只能提取有限信息;當P值較大時,模型會獲取過多噪聲主題信息,影響分類性能,因此P值過大或過小都會對模型的分類效果產生消極影響。
3)圖5(c)顯示了實體之間相似性閾值δ對分類效果的影響。可以看出,當閾值設置得太高時,將導致STHIN 中的邊數大幅度減少,從而減少消息的傳播。當閾值設置太低時,會連接一些語義相似度較低的實體,導致引入過多的噪音信息。

圖5 AGNews 上不同主題數量、相關主題數和實體間相似度閾值條件下的準確率Fig.5 Accuracy with different topic numbers,related topics numbers and similarity threshold between entities on AGNews
根據以上實驗結果及分析,選擇合適的參數訓練HGCN-RN 模型。學習率設為0.005,dropout 率為0.8,正則化因子λ=5e-6。如果連續10 個epoch 關于驗證集上的損失沒有減少,則訓練停止。
表3 展示了3 個基準數據集上不同模型的分類準確率和F1 值,分析如下:

表3 3 個標準數據集上的平均準確率和F1 值Table 3 Average accuracy and average F1 values on three standard datasets %
1)使用預訓練向量的CNN-pre和LSTM-pre相比于使用隨機初始化單詞向量的CNN-rand和LSTM-rand的分類性能有了顯著提升。原因在于它們根據不同的分類任務對詞向量進行預訓練,并且在模型訓練過程中,詞向量也被用作可優化的參數。
2)基于單詞共現學習文本嵌入的PTE 模型性能較差,原因是短文本中缺乏足夠的單詞量和上下文信息,而LEAM 模型在3 個數據集上的準確率比PTE 提升了30.14%、10.10%和5.25%,證明了標簽描述和嵌入的有效性。
3)基于圖卷積網絡的Text GCN 和HGAT 模型取得了競爭性的結果,這也證明了構造文本異構圖并將其應用于GCN 的方法可以有效提高文本分類性能。但是,由于它們未能充分考慮短文本特性或過擬合問題,導致分類性能低于HGCN-RN 模型。
4)HGCN-RN 模型的分類性能優于所有基準模型,相比于HGAT 模型在AGNews、Snippets、MR 數據集上的準確率分別提升了4.97%、7.81%、2.79%,在F1 值上分別提升了5.38%、7.92%、2.82%,這表明HGCN-RN 模型在小樣本短文本分類中的有效性。
HGCN-RN 模型性能最優的原因有以下3 點:
1)考慮短文本特征,通過BTM 主題模型提取主題并構建短文本異構信息網絡STHIN,可以同時捕獲文本、主題和實體之間關系,豐富短文本語義信息。
2)結合小樣本條件下標記樣本少和未標記樣本多的特點,應用異構圖卷積聚集STHIN 中節點鄰域信息進行前向傳播,充分利用了有限的特征信息。
3)應用雙重注意力機制捕獲STHIN 中不同節點語義信息的重要性,并采用隨機去鄰法在圖中引入適量噪聲,降低了模型收斂速度,有效緩解了過擬合問題。
本文構建一種基于異構圖卷積網絡的小樣本短文本分類模型。該模型充分考慮短文本特征,使用BTM 主題模型挖掘短文本潛在主題信息,建立短文本異構信息網絡STHIN 靈活地合并短文本語義信息及其關系。此外,結合小樣本條件下標記樣本少和未標記樣本多的特點,應用異構圖卷積和雙重注意力機制捕捉STHIN 中豐富的語義信息,并采用隨機去鄰法在異構圖中引入適量噪聲,緩解過擬合問題。后續將考慮構建堆疊的異構圖卷積網絡模型,在每個節點合并信息時,累積不同距離處的節點信息,進一步提高分類性能。