賈啟龍,張仰森,劉帥康,朱思文,高強
(北京信息科技大學 智能信息處理實驗室,北京 100192)
隨著人們對學科領域進行越來越精細的分類,當前細分學科領域的層次關系愈加龐大。如何將學術論文快速精準地分類至學科領域的層次標簽體系中成為了一個亟待解決的問題[1]。學術論文的層次標簽分類任務不同于普通的文本分類,學術論文的專業(yè)領域性更強,文本中存在更顯著的所屬學科領域的相關特征。傳統(tǒng)的文本分類方法在處理具有層次標簽的學術論文時面臨一些難以突破的瓶頸,它們通常忽略了層次標簽的結構特征,導致模型分類效果不佳。因此,對學術論文進行層次標簽分類不僅需要考慮層次標簽結構對分類結果的影響,還需要提取出學術論文中的學術領域特征。
近年來,文本分類技術的快速發(fā)展,為學術論文的層次標簽分類任務提供了有力的支撐。隨著深度學習的蓬勃發(fā)展,越來越多的研究者通過神經網絡來構建分類模型。研究者們使用遞歸神經網絡(recurrent neural network,RNN)、基于卷積神經網絡的文本分類(text convolutional neural network,TextCNN)及其變種模型實現(xiàn)了自動提取文本語義的深層次特征,降低了成本,極大地提高了層次標簽分類領域的模型性能。文獻[2]提出了一種能夠針對樹形結構的基于局部多層感知機的層次多標簽分類 (hierarchical multi-label classification with local multi-layer perceptrons,HMC-LMLP)模型,該模型在每個層次上訓練一個多層感知機,每個層次的輸出為該層次的預測向量,進而使得整個網絡結構均可利用上一層提供的信息,以保證預測結果的一致性。然而,依賴于層次結構設計的多層感知機模型會導致計算成本隨著層次結構的加深和類別標簽的增多而顯著提高。此外,這種設計也容易導致過擬合,從而降低模型在新數據上的泛化性能。文獻[3]提出改進熵計算的HMC4.5方法,使用所有分類的信息量之和,生成一組較為簡單的規(guī)則合集,自上而下劃分簇狀結構。這種方法采用基于決策樹的機器學習技術,因此具有很好的可解釋性。然而,當層次關系設置不合理時,它可能會歸納出過于復雜的規(guī)則,從而導致最終分類結果過擬合。神經網絡模型通常采用詞袋模型對詞向量進行語義表示,但這種方法很難捕捉到全局文本中的深層次語義特征關聯(lián)。此外,這類模型忽略了層次標簽之間的結構特征關聯(lián),使得模型在捕捉語義信息方面面臨困難。
隨后,預訓練模型的出現(xiàn)使得許多文本分類任務效果大幅改善。研究者們使用基于Transformer的雙向編碼器表示 (bidirectional encoder representation from Transformers,BERT)[4]、生成式預訓練Transformer (generative pre-trained Transformer,GPT)[5]、知識增強的語義表示(enhanced representation through knowledge integration,ERNIE)[6]等預訓練模型在大規(guī)模無標注的語料文本上進一步學習詞向量,以更精準地表達語義特征。通過對不同任務進行下游微調,預訓練模型極大地提升了文本分類領域的全部任務性能。在層次標簽分類任務上,文獻[7]提出將文本建模為圖結構,使用隨機游走生成標簽序列訓練得到標簽的嵌入表示。該方法通過標簽相似度的權重損失函數可以較好地捕捉標簽之間的依賴關系。文獻[8]則對文本和標簽進行圖表示后,通過BERT和雙向門控循環(huán)單元(gate recurrent unit,GRU)提取文本的上下文語義信息,并通過多頭注意力機制將標簽的層次信息融合到文本表示中,進而抽取文本中不同部分和標簽層次之間的關系。上述方法通過訓練一個整體分類器進行層次分類,雖然降低了計算成本,但是在層次標簽分類上容易導致欠擬合問題。為了有效利用層次標簽的結構特征,文獻[9]提出的層次多標簽分類網絡 (hierarchical multi-label classification networks,HMCN)模型,從2種角度提取層次特征,在相鄰的節(jié)點間提取局部特征,在所有節(jié)點間提取全局特征。將局部特征與全局特征融合,并通過長短期記憶 (long short term memory,LSTM) 遞歸神經網絡結構對層次信息進行編碼,在每一層標簽中都輸出局部預測和全局預測,最后將各個局部預測進行連接,與全局預測進行加權組合得到最后的預測結果。這種融合了局部和全局特征的分類器,能夠有效地提高分類效果。但是,HMCN模型并沒有對文本進行有效的詞嵌入,也沒有考慮到文本與層次標簽之間的關系。文獻[10]進一步提出了基于注意力機制的LA-HCN(label-based attention for hierarchical multi-label text classification neural network)模型,從各層標簽出發(fā)建模與文本之間的關聯(lián),文本與標簽的依賴在層次之間共享,且對不同的層次基于文本生成不同的嵌入表示,從而較好地抽取了文本的層次特征。
目前的研究主要關注如何利用層次標簽信息,對提取文本與層次標簽之間關系的研究較少。對于學術論文這種領域性較強的文本,其包含著很強的所屬層次標簽語義關系。因此,本文針對學術論文的層次標簽文本分類問題進行深入研究,提出了一種基于ERNIE預訓練模型與融合圖注意力網絡(graph attention networks,GAT)的學術論文學科領域層次標簽文本分類方法(text hierarchical label classification based on ERNIE and graph attention networks,GETHLC)。通過ERNIE預訓練模型獲得學術論文標題和摘要的嵌入向量,并通過GAT模塊學習層次標簽的結構關系,最終將融合后的向量輸入到層次標簽分類器中,實現(xiàn)對學術論文所屬層次領域標簽的準確預測。
本文構建的GETHLC模型架構如圖1所示。它主要包含4個模塊:1)層次標簽抽取模塊。該模塊對學術論文的層次標簽特征進行抽取,得到每個學術論文樣本的層次標簽結構特征,并融入學術論文的表示向量中,作為通用編碼模塊的輸入。2)通用編碼模塊。該模塊對學術論文表示向量及其層次標簽結構特征向量統(tǒng)一編碼,以獲得學術論文的文本表示和層次標簽表示。3)語義增強模塊。該模塊提取文本上下文時序信息,增強文本的語義特征表示,以進一步提取二者之間的深層次關聯(lián)關系。4)層次標簽分類(hierarchical label classifier,HLC)模塊。該模塊以語義增強模塊輸出的特征向量與原始文本表示向量和層次標簽特征向量作為輸入。在遵循層次結構自上而下的依賴原則下,構建了一個具有依賴關系的層次標簽分類模型,最終實現(xiàn)了對學術論文層次標簽的分類,得到學術論文的層次標簽分類結果。
圖1 GETHLC模型框架Fig.1 GETHLC model framework
層次標簽中通常蘊含著拓撲結構信息。為了獲取層次標簽之間的關系,采用圖模型來表示層次標簽結構。為了能夠充分利用標簽的層次結構,模型使用GAT[11-12]來捕獲標簽之間的層次結構特征關系。同時,為了加深對層次標簽結構的特征提取,采用具有K層堆疊的圖注意力神經網絡對學科領域層次標簽結構進行建模。層次標簽抽取模塊如圖2所示。
圖2 GAT模塊Fig.2 GAT module
為了能夠充分捕獲層次標簽的結構特征,層次標簽抽取模塊將從全局和局部2個方面計算節(jié)點特征。為了能夠獲得層次標簽的全部結構信息,在全局角度下計算節(jié)點之間的注意力互相關系數。對于節(jié)點集中任意的2個節(jié)點ui和uj,其注意力互相關系數為
eij=α(Wi,Wj)
(1)
式中:i、j為節(jié)點序號;Wi、Wj為ui和uj節(jié)點中可學習的參數矩陣;α為線性變換層,目的是將矩陣結果轉換到實數域上。由此,得到所有節(jié)點之間的影響關系。
此外,為了使模型能夠捕捉到層次標簽結構中相鄰標簽間的不同,模型還需從局部角度提取特征。本文通過掩蓋圖注意力機制(masked graph attention)將局部注意力機制引入圖結構。對于相鄰的2個節(jié)點ux和uy,其注意力互相關系數為
(2)
式中:exm(m∈Nx)為按式(1)計算節(jié)點ux與節(jié)點um之間的注意力互相關系數,Nx為節(jié)點ux的相鄰節(jié)點序號集合。由此,得到所有節(jié)點的鄰居節(jié)點權重。
此外,為了提取層次標簽結構更多的關聯(lián)信息,進行K次堆疊操作,則節(jié)點ui堆疊后的節(jié)點特征u′i為
(3)
為了更好地獲得每層節(jié)點的特征關系,本文為h層標簽體系分別創(chuàng)建虛擬節(jié)點l1、l2、…、lh,并將lh與層次標簽第h層的所有標簽節(jié)點連接起來,如圖2所示,通過虛擬節(jié)點來連接聚合同一層次的信息。對于第i層上的虛擬節(jié)點li為
(4)
式中:a、b分別為第i層的節(jié)點編號上下界。由此,得到層次標簽結構每個節(jié)點的特征與每層節(jié)點的全局特征,為后續(xù)模塊提供層次標簽結構的特征信息。
為了對輸入文本進行語義表征,本文采用基于Transformer的ERNIE預訓練模型[13]作為通用編碼模塊。對輸入文本進行編碼通常使用BERT模型,以獲得文本的語義表征,但其僅對字進行遮掩,導致難以捕捉到文本中所包含的學科領域知識的語義表達。ERNIE模型與BERT模型的對比如圖3所示。與BERT模型不同,為了更好地表達文本蘊含的知識,ERNIE模型在BERT模型的基礎上引入了知識圖譜對句子中的實體進行遮掩,從而生成更為精準的上下文特征表達,進而提供輸入文本中對學科領域知識的語義表達。
圖3 ERNIE模型與BERT模型對比Fig.3 Comparison between ERNIE model and BERT model
ERNIE模型的訓練方法與BERT模型類似,通過遮掩句子中的部分字,讓編碼器根據句子的上下文預測被遮掩的字。此外,將2個句子進行拼接,讓編碼器再去判斷2個句子是否為原文中相鄰的句子,以此來學習句子中的上下文信息。在遮掩策略上,ERNIE模型采用實體為單位進行遮掩,并借助知識圖譜來輔助選取實體。如此一來,ERNIE模型就不僅能夠學到字級別的上下文信息,同時可以通過前后文來獲取到知識層面的語義信息。
為了提取輸入文本更深層次的語義特征,本文采用雙向長短期記憶(bi-directional LSTM,BiLSTM) 神經網絡模型[14]作為語義增強模塊提取深層語義信息。它由2個相反方向的LSTM網絡組成。LSTM網絡是由多個計算單元循環(huán)交接組成的,因此能夠有效地學習長序列中的依賴信息。每個計算單元包含輸入門、遺忘門、輸出門和內部狀態(tài)信息表示。計算單元的輸入門在t時刻的狀態(tài)信息為
it=σ(Wxixt+Whiht-1+Wcict-1+bi)
(5)
式中:σ為Sigmoid函數;ht-1為計算單元在時間t上一時刻的輸出;xt為在t時刻的輸入;ct-1為計算單元在t-1時刻的內部狀態(tài)信息;Wxi、Whi、Wci為輸入門的權重矩陣;bi為輸入門的偏置。計算單元的遺忘門在t時刻的狀態(tài)信息為
ft=σ(Wxfxt+Whfht-1+Wcfct-1+bf)
(6)
式中:Wxf、Whf、Wcf為遺忘門的權重矩陣;bf為遺忘門偏置。計算單元在t時刻的內部狀態(tài)信息為
ct=ftct-1+ittanh(Wxcxt+Whcht-1+bc)
(7)
式中:tanh為激活函數;Wxc、Whc為內部狀態(tài)信息的權重矩陣;bc為內部狀態(tài)信息偏置。最后,計算單元的輸出門在t時刻的狀態(tài)信息為
ot=σ(Wxoxt+Whoht-1+Wcoct-1+bo)
(8)
式中:Wxo、Who、Wco為輸出門的權重矩陣;bo為輸出門偏置。最終,LSTM計算單元的輸出為
ht=ottanh(ct)
(9)
(10)
式中:⊕為對2個向量進行相加。在使用ERNIE預訓練模型訓練輸入向量,并通過BiLSTM模型提取特征向量后,將輸出結果輸入層次標簽分類模塊。
為了對輸入的文本表示向量進行層次標簽預測,本文構建了層次標簽分類模塊。為避免模型在進行多輪特征抽取時遺忘原始文本特征,該模塊分別對文檔特征和標簽特征進行了殘差連接[15]。通過將BiLSTM模型輸出的文本特征向量和層次標簽特征向量,分別與原始的文本向量和層次標簽向量進行殘差連接,從頂層開始向低層逐層進行第i層標簽向量的殘差連接,以輸出第i層的預測結果Pi為
Pi=Softmax(Pi-1⊙Li)
(11)
(12)
(13)
Li=μ·max{0,Softmax(Yin-Yip)}2
(14)
式中:Yin為第i個節(jié)點的預測表示向量;Yip為第i個節(jié)點的父節(jié)點預測表示向量;μ∈[0,1]為懲罰系數,該值越大表明對節(jié)點的懲罰力度越強。最終,本模型的損失函數L為
(15)
為驗證本文GETHLC模型的效果,在大規(guī)模中文科學文獻數據集CSL[16]上進行了對比實驗和消融實驗。
CSL數據集中包含396 209篇中文核心期刊論文,其中包括論文的標題、摘要、關鍵字、學科和門類。訓練集、驗證集和測試集的劃分比例為8∶1∶1。表1為CSL數據集的一些統(tǒng)計數據。圖4為CSL數據集中的樣例數據。
表1 CSL數據集的統(tǒng)計數據Table 1 Statistics of the CSL dataset
圖4 CSL數據集中的樣例數據Fig.4 Example data from the CSL dataset
通過對數據集分析可知:
1)該數據集樣本共有396 209個,數據集使用學科和門類作為層次標簽,共有2層標簽,其中一級標簽類別有13種,二級標簽類別有67種,說明該數據集可以很好地驗證層次標簽分類效果。
2)該數據集樣本的平均文本長度為189.0個字符,除理學和醫(yī)藥學平均文本長度較長外,其他類別均為平均水平,說明該數據集的輸入樣本文本長度合理。
3)各類別之間的數量分布較為均勻,除工學樣本數較多外,其他類別為平均水平,說明該數據集在分類類別上較為均衡,沒有特別突出的數據傾斜問題。
為了驗證GETHLC模型的效果,本文選取在層次分類任務常用模型[17]中表現(xiàn)較好的基于多任務學習的遞歸神經網絡文本分類(RNN for text classification with multi-task learning,TextRNN)模型、深度金字塔卷積神經網絡(deep pyramid convolutional neural networks,DPCNN)文本分類模型、HMCN模型作為對比模型。所選模型介紹如下:
TextRNN:該模型對標簽進行扁平化處理,利用 RNN 循環(huán)神經網絡對輸入文本向量進行編碼,最后將編碼輸入到全連接層,并與Softmax激活函數相結合,以預測輸入文本的層次標簽分類結果。
DPCNN:該模型使用更深層次的卷積神經網絡,能夠有效地捕捉文本的長距離依賴關系。
HMCN:該模型利用層次結構中的局部預測結果,并整合整體層次結構的全局預測結果,從而進行層次標簽分類。
模型對比實驗結果如表2所示。
表2 模型對比實驗結果
從表2可以看出,GETHLC模型性能超越了TextRNN、DPCNN、HMCN三種基準模型。其中,在準確率、召回率和F1值方面分別比最好的HMCN模型高出2.18、1.82、1.99百分點。值得注意的是,DPCNN使用更深層次的卷積神經網絡處理層次標簽,但這可能導致一些特征被過度壓縮,從而影響模型的精度。而TextRNN在處理層次標簽時丟失了層次信息,導致模型無法學習到層次結構信息。另外,HMCN沒有充分考慮原始文本輸入的上下文語義信息,從而導致模型不能有效抽取輸入文本的語義特征。綜上所述,相較于其他文本分類模型,本文所提出的GETHLC模型在學術論文層次標簽分類任務上具有更優(yōu)秀的表現(xiàn)。
為了進一步驗證模型結構的有效性,本文進行了消融實驗,以研究影響實驗結果的獨立因素。實驗結果如表3所示。
表3 消融實驗結果Table 3 Results of ablation experiments %
對比表3中,僅使用ERNIE、使用ERNIE+HLC、使用ERNIE+GAT和本文(ERNIE+HLC+GAT)4種模型在CSL數據集上的表現(xiàn)效果可以發(fā)現(xiàn),原始基準模型ERNIE效果最差,原因在于其僅簡單地對輸入文本抽取語義信息,未充分考慮層次結構中的標簽關系。ERNIE+HLC模型在構造分類器的過程中利用層次結構中的標簽層次信息,使分類結果帶有原始層次信息,對比單一的ERNIE模型準確率、召回率和F1值分別提升1.77、1.85和1.82百分點。ERNIE+ GAT模型在抽取輸入文本語義信息之前,先通過GAT抽取層次結構中的標簽關系,其F1值達到了85.20%,對比僅構造層次標簽分類器的ERNIE+HLC模型提升了1.47百分點。綜合來看,GAT和HLC都對層次結構特征抽取有積極意義,因此GETHLC模型考慮融合GAT和HLC模型,同時利用層次結構原始特征和提取后的特征,實驗結果表明,GETHLC模型的F1值達到了86.93%,相較于以上3種模型中最優(yōu)的F1值提升了1.73百分點。該組消融實驗充分體現(xiàn)了GETHLC模型各個模塊的有效性。
為進一步分析GETHLC模型的不足,本文對層次標簽分類出現(xiàn)的錯誤情況進行統(tǒng)計,分析可能導致錯誤的原因。
1)數據樣本不均衡
對每個一級類別分別進行評估,得到各個一級類別的F1值如表4所示。可以發(fā)現(xiàn)模型的F1值在樣本數充足的分類中較高,而在樣本數不足的分類中較低。這表明GETHLC模型需要大量語料進行訓練才能取得較好的效果,而在少量樣本情況下容易出現(xiàn)欠擬合。為了解決這個問題,后續(xù)研究將考慮擴充較少樣本的類別,使模型能夠充分學習到所有標簽的特征,從而提高模型的分類效果。
表4 模型在CSL數據集每個類別的分類結果Table 4 Classification results of the model for each category on the CSL dataset
2)標簽分級不合理
通過分析圖5中的一個錯誤樣例,可以發(fā)現(xiàn)在樣本數充足的工學分類中,模型仍然可能出現(xiàn)分類錯誤。這是因為原始層次標簽的分級不合理,導致標簽之間具有較高的語義相似性。這使得GETHLC模型在抽取層次標簽結構特征時,可能出現(xiàn)圖注意力誤導現(xiàn)象,忽略不同標簽之間的重要信息。為了解決這個問題,后續(xù)研究將考慮引入對抗性樣本來糾正此類現(xiàn)象,從而使模型更加準確。
圖5 誤判樣例數據Fig.5 Misjudgment example data
針對學術論文的學科領域層次標簽分類問題,提出了一種學術論文層次標簽分類模型。首先利用圖神經網絡模型抽取標簽的層次結構特征,接著通過ERNIE預訓練模型學習文本和標簽的語義信息;將這2種特征向量融合,以獲得輸入文本的深層次語義信息;最后,通過構建層次標簽分類器,進一步提升學術論文層次標簽分類模型的性能。實驗結果表明,與現(xiàn)有幾種文本分類模型相比,本文提出的GETHLC模型在層次標簽分類任務的整體性能上實現(xiàn)了有效提升。
然而,GETHLC模型使用了多種網絡進行特征融合,這使得模型的復雜度較高,參數調整較為繁瑣。此外,局部模型訓練效果不佳可能會導致模型整體精度下降。因此,未來的研究將關注如何通過整體訓練模型參數來更高效地提高模型訓練效果。同時,盡管GETHLC在學術論文這類層次信息豐富的文本上表現(xiàn)良好,但未來研究可以探索將其應用于其他類型的文本,以實現(xiàn)更廣泛的適用性。