?

文本特征和圖結點混合增強的圖卷積網絡文本分類*

2024-01-30 01:46楊曉奇劉伍穎
關鍵詞:結點文檔卷積

楊曉奇,劉伍穎

(1.廣東外語外貿大學信息科學與技術學院,廣東 廣州 510006;2.魯東大學山東省語言資源開發與應用重點實驗室,山東 煙臺 264025;3.廣東外語外貿大學外國語言學及應用語言學研究中心,廣東 廣州 510420)

0 引言

文本分類是自然語言處理中的一項重要任務,它被廣泛應用于各大場景,包括輿情監測、新聞分類、信息檢索、情感分析[1-2]以及事件預測等,旨在根據文本的內容和語義將其自動分類到預定義的類別中,而實現這一過程的算法稱為分類器,在這個過程中,特征提取是一個重要步驟,傳統的特征提取方法主要基于詞袋模型、TF-IDF和N-gram模型等,它們簡單直觀、易于實現,但在復雜的場景效果有限.隨著深度學習的興起,深度學習模型在文本分類任務中取得了顯著效果.常用的深度學習模型包括卷積神經網絡(CNN)[3]、循環神經網絡(RNN)[4-6]等,能夠自動學習文本中的語義和上下文信息.然而它們主要關注捕捉局部連續詞序列中的語義和句法信息,在一些文本中,重要的語義關系可能存在于非連續的詞語之間或者跨度較長的片段中,這些傳統模型無法很好地捕捉到全局的詞語共現信息.為了解決這一問題,圖神經網絡(GNN)[7]出現了,這是一種強大的深度學習模型,具有處理非歐氏空間數據的能力,其出現彌補了傳統深度學習模型只能處理歐氏空間數據的不足.圖神經網絡通過考慮數據中的復雜關系結構和全局結構信息,有效地處理具有非線性和非連續關系的數據,這不僅在文本分類任務中有著重要的研究價值,而且在知識圖譜、社會網絡等領域都有著廣泛的應用場景.

近年來,預訓練語言模型(如BERT[8])在各種自然語言處理任務中證明了它們的巨大優勢,越來越多的任務開始在原有的工作基礎上融合預訓練語言模型,并都獲得了更好的效果.但是單一的語義特征表示在一定程度上會限制模型對它的理解,當遇到一些特征更為豐富的文本時,模型有可能無法準確理解它們,此時,使用合適的數據增強方法[9-10]在保持標簽類別不變的前提下,按照一定的策略改變文本的內容,不僅可以達到文本特征增強的效果,同時可以緩解低資源場景的局限問題.

本文提出了一種文本特征和圖結點混合增強的圖卷積網絡文本分類方法(Maximal-features-enhancement GCN,MfeGCN).該方法在BertGCN[11]的基礎上加以改進,一方面改進了單詞-文檔的邊構造方式,使用BM25+算法來計算單詞與文檔之間的邊權重,同時使用一種基于最高得分的同義詞替換策略,在使用預訓練模型(如BERT)進行微調時,豐富了文檔結點的語義表示,在圖卷積神經網絡中植入使用上述增強策略增強后的文本作為圖的增強結點,然后進行構圖,圖中的結點包括原文檔結點、增強文檔結點、原單詞結點和增強單詞結點,旨在結合文本特征方面和圖結構方面加以改進,從而優化模型的分類性能.

在4個真實公開數據集進行實驗,結果表明MfeGCN模型與基礎BertGCN模型以及其它基線模型相比,其表現效果更為優異.

1 文本分類方法綜述

文本分類方法可以劃分為傳統機器學習方法、深度學習方法等.傳統的方法有K-近鄰、樸素貝葉斯等.隨著深度學習技術的發展,越來越多的深度學習模型(如CNN和RNN)被應用到文本分類中.近年來,圖神經網絡被應用于分類任務并取得了不錯的結果.

1.1 傳統機器學習文本分類

傳統的文本分類方法主要由特征工程和淺層分類算法構成,其中的代表性分類方法有樸素貝葉斯算法、K-最近鄰算法、決策樹算法和支持向量機等.

樸素貝葉斯(Naive Bayes,NB)[12].樸素貝葉斯算法是一種基于概率統計和特征條件獨立性假設的分類算法,其核心思想是通過計算后驗概率來進行分類.

K-最近鄰算法(K-Nearest Neighbors,KNN)[13].K-最近鄰算法是一種基于最近鄰樣本的分類算法,其核心思想是通過找到與待預測樣本最接近的K個訓練樣本來進行分類.

決策樹(Decision Tree,DT)[14].決策樹算法是一種基于樹結構的機器學習算法,用于解決分類和回歸問題.其核心思想是通過構建一棵樹來表示特征之間的關系,并根據特征的值進行分割和預測.

支持向量機(Support Vector Machine,SVM)[15-16].支持向量機使用向量空間模型來表示文檔,將文檔嵌入映射到高維空間,以此將文檔表示為高維向量,并將每個文檔抽象為高維空間中的一個點,其核心思想是通過構建一個最優的超平面來將不同類別的樣本分開.

1.2 深度學習文本分類

相比傳統的機器學習文本分類方法,深度學習方法避免了人工設計規則和特征,并能夠自動挖掘文本的語義表示,形成一個通過學習直接將特征映射為目標輸出的非線性轉換過程,將特征工程集成到模型擬合的過程中.主要的代表模型有CNN、RNN、預訓練模型和GNN等.

CNN最早由Yann LeCun等于1989年提出,其基本原理是通過多層卷積和池化操作來提取輸入數據的特征,并通過全連接層進行分類或回歸,卷積操作利用卷積核在輸入數據上進行滑動,提取不同位置的局部特征.后來,Kim于2014年提出了TextCNN[3],將卷積神經網絡引入文本分類領域,并取得了很好的效果.TextCNN的優勢在于其簡單而有效的結構,能夠捕捉文本中的局部特征,并且具有較好的泛化能力.

RNN是一種具有記憶功能的神經網絡,其基本原理是通過在每個時間步上輸入當前特征和上一個時間步的隱藏狀態,來建模序列中的依賴關系,它使用相同的參數在每個時間步上進行計算,以捕捉特征的時間性質.RNN的隱藏狀態可以理解為對先前信息的編碼表示,在每個時間步上更新并傳遞到下一個時間步,因此該網絡具有記憶的功能.

預訓練模型是指在大規模無標簽數據上進行預訓練的深度神經網絡模型,旨在習得數據中的統計規律和語義信息,這些模型的參數可以作為后續任務的初始參數,通過微調的方式在下游任務的有標簽數據上進行訓練,從而加速模型收斂、提升性能.代表模型有BERT[8],其通過在大規模無標簽數據上進行預訓練,學習了豐富的句子表示,包含了上下文相關的語義信息,在自然語言處理(NLP)任務中取得了重大突破,并成為許多NLP任務的基準模型.

近幾年來,GNN[7]受到了各個研究領域的廣泛關注,GNN模型基于消息傳播機制,通過在圖結構上進行信息傳遞和聚合來學習結點的表示,利用鄰居結點信息更新自身結點的表示,并通過多輪迭代逐步擴展和融合全局圖信息,直至達到某一個穩定狀態.而GCN[17]是一種使用了卷積操作的GNN,通過在圖上進行卷積操作來更新結點的表示,利用鄰居結點的特征進行卷積運算,并將卷積結果作為結點的更新表示.在工業界,GCN也有一些實際應用,例如藥物分子設計[18]、疾病診斷[19]、交通流預測[20]和推薦系統[21]等,在自然語言處理領域,實體關系抽取、文本生成、文本分類和機器翻譯等方向也都取得了不錯的效果.

2 方法

本節所述MfeGCN模型基于BertGCN模型加以改進,包括構建圖中邊權重的算法和極大特征增強方法以及整個架構的一些步驟和細節.

2.1 BM25-PLUS(BM25+)

BM25算法是信息檢索領域一種用于對給定的查詢項和若干個相關的文檔進行相關性計算后,根據每個文檔和查詢項之間的相關性得分進行排序的算法.但當遇到一些過長的文檔時,BM25算法會面臨對該超長文檔過度懲罰的問題[22],于是Lyu等提出了BM25+算法[22],該算法在原有BM25算法的基礎上,為每一個查詢項中出現在文本中的特征項相關性得分設置一個下界δ,此時,即使一個文檔特別長,搜索項都至少貢獻了一個正常數相關性得分,本文將使用該算法來計算單詞-文檔之間的邊權重,具體的得分計算方式為:

式中:IDF(ai)可以用來表示特征項ai的權重,N表示文檔集合中的所有文檔數量,n(ai)則表示包含特征詞ai的文檔數量,其表示為:

子項R(ai,b)表示特征項ai與文檔b的相關性得分,k1和δ均為可自由調節的協調因子,一般可取值的范圍為k1∈[0.2,4.0]、δ∈[0,1.5],k1用于控制詞頻對文檔匹配得分的影響程度,δ用于緩解對超長文檔過度懲罰的問題[23],其表示為:

2.2 PPMI

正點互信息(PPMI)用于計算單詞-單詞之間的邊權重,其思想是統計兩個詞語在文本中同時出現的頻率,頻率越高,表示這兩個詞語的相關性越高,這一方法將全局詞共現信息很好地利用了起來,具體的計算方式為:

式中:wins表示滑動窗口的總數,win(a,b)表示單詞a和單詞b共同出現的滑動窗口個數,win(a)表示出現單詞a的滑動窗口個數,P(b)與P(a)同理.

2.3 MfeGCN

圖卷積神經網絡中,需要將數據集構建成一個圖G(V,E)[24],V表示結點,E表示邊.當結點a表示單詞、結點b表示文檔時,使用BM25+來計算邊的權值;當結點a和b均表示單詞時,使用PPMI計算邊的權值;當結點形成自連接的邊時,將邊的權值表示為1;其它情況定義邊的權值為0,圖的邊權值表示為:

經過上述算法后,文本數據集中的邊權重已確立完畢,然后使用預訓練模型BERT對所有文檔結點進行初始化獲得文檔嵌入,單詞結點嵌入初始化為0,并將它們作為GCN結構的結點嵌入,然后將該圖結構輸入一個兩層的GCN中,每一層的結點特征表示為:

式中:l表示GCN的層數,表示結點加上了自連接邊后的鄰接矩陣,也就是在鄰接矩陣的基礎上加上一個單位矩陣,表示圖的度矩陣,H(l)表示當前層的特征向量矩陣,W(l)表示第l層的可學習權重矩陣,σ是一個激活函數Relu,將這些計算因子進行計算后便可得到下一層的結點特征表示.經過多次圖傳播后將GCN最后一層的隱藏層向量作為softmax層的輸入,得到文本類別的概率分布為:

式中:當l=0時,X=H(0)表示輸入層的特征向量矩陣,E表示結點之間的邊,g表示GCN結構,輸出結果作為文本的表示,輸入softmax層得到所有類別的概率分布.

融合BERT和GCN模塊前,先構造一個BERT分類器,使用在下游任務微調后的BERT得到的文本嵌入X,將X輸入一個softmax層獲得最終的文本概率分布為:

獲得BERT的預測概率分布與GCN的預測概率分布后,使用線性預插值法融合兩部分的預測.λ是一個可調節的超參數;當λ=1時,表示模型只更新GCN部分的參數;當λ=0時,表示模型只更新BERT部分的參數;當λ∈(0,1)時,根據λ的取值,兩個部分將會得到不同程度的權衡.因此,可以通過調節λ值的大小來聯合優化BERT和GCN的預測結果,以這樣的方式可以加快模型的收斂速度,同時獲得更優性能.

最后,使用交叉熵損失函數同時優化BERT和GCN(式(13)),其中:Ctrue表示真實類別,C表示模型預測的類別.

本文在文本分類模型BertGCN的基礎上,除了改進其邊權重的計算方式外,同時加入了一種基于最高得分的同義詞增強策略[25],包括對BERT部分和GCN部分的特征表示增強,通過增強BERT部分的文本語義表示及在GNN中以增加增強結點的方式提高模型的分類性能.首先將訓練集樣本進行清洗和去除停用詞后,分詞處理構造出一個訓練集詞表li,也就是訓練集中每一個文檔皆由li中的單詞構成,然后統計其中每個單詞出現次數Nx,并計算該詞的出現次數在整個訓練集中的占比,得到其分值Sx.

式中:i表示單詞的索引且i∈(1,n),n表示詞表大小,Ni表示在詞表li中第i個單詞出現的總次數,通過計算可以得到訓練數據中每一個單詞的分值.

將訓練集的文檔個數記為H,文檔的索引設置為c,c∈(1,H),w表示文檔中的單詞,那么訓練集中每一個獨立的文檔可以表示為Dc={w1,w2,···,wm},m表示組成該文檔的單詞個數.同樣的,將一個基于最高得分同義詞替換策略處理后的文檔表示為Dc′={w1′,w2′,···,wm′},最終的文檔表示為DE=Dc+.

對于每一個原文檔,首先使用NLTK工具包中的WordNet詞典工具獲得該文檔中每一個單詞的同義詞集合Synonyms(wα)={s1,s2,···,sk}.其中:α∈(1,m),k則表示詞典工具所能獲得的同義詞數目,然后分別計算集合中每一個同義詞的得分:

式中:p∈(1,k),如果同義詞在訓練集詞表li中出現,那么將其分值置為詞表中該詞的得分,若同義詞不在訓練集詞表中出現,那么該同義詞的得分置為0.隨后挑選同義詞集合中得分最高的同義詞替換掉原單詞,其定義形式為:

式中:Score={Score1,Score2,···,Scorek} 表示同義詞得分集合,經過最高得分同義詞替換策略處理的單詞進行合并后得到最終的增強文檔表示Dc′,基于最高得分的增強策略為:

1)將一個訓練集樣本Dc做分詞處理,并將其轉換為一個數組;

2)對于每一個樣本數組Dc,獲得數組內每一個單詞wα的同義詞集合Synonyms(wα);

3)計算每個單詞的同義詞集合中每個同義詞的得分Scorep后得到同義詞得分集合Score;

4)選擇Score中得分最高對應同義詞wα′替換掉原單詞wα,如果同義詞集合為空,那么保持不變;

5)將整個樣本數組進行以上步驟后,形成一個新的增強樣本數組;

6)將其它的訓練集樣本分別進行上述操作,得到一批新的增強樣本;

7)最后整合原樣本Dc和增強樣本形成最終訓練樣本DE.

本文使用的模型結構如圖1所示,包括了兩大類結點,分別表示文檔結點和單詞結點.其中:Dc表示文檔結點,表示增強文檔結點,W表示單詞結點.可以使用BERT或者ROBERTA等預訓練模型將向量化的文本嵌入作為GCN的輸入,經過隱藏層后形成的R(x)為文檔或單詞x的詞嵌入表示.最后,融合BERT模塊和GCN模塊分別經過softmax后的概率分布,選擇概率最高的類別作為最終的預測結果.

3 實驗與分析

3.1 數據集

實驗使用了文本分類的4個公開數據集,分別是R8、R52、Ohsumed和MR.與Yao等[25]使用相同的數據劃分方法劃分訓練集和測試集,隨機抽取訓練集中10%的數據作為驗證集.

R8:8分類的路透社數據集子集,包括5 485個訓練文檔和2 189個測試文檔.

R52:52分類的路透社數據集子集,包括6 532個訓練文檔和2 568個測試文檔.

Ohsumed:數據由醫療信息數據庫MEDLINE中的心血管疾病摘要構成,取其中的7 400篇單標簽文檔,包括3 357篇訓練文檔和4 043篇測試文檔.

MR:情感2分類的影評數據集,每一篇文檔僅由一句評論構成,包括7 108篇訓練文檔和3 554篇測試文檔.

訓練模型前,先對數據集進行預處理,使用工具包NLTK去除停用詞,再去除數據集中詞頻小于5的詞,數據集中的低頻詞有可能是一些拼寫錯誤的單詞或其它噪聲數據,去除此類詞可以減少噪聲對模型的影響,由于MR數據集的文檔長度普遍較短,去除停用詞后不再對其作刪詞處理.

3.2 基線模型

CNN(rand)[3]:以隨機初始化的詞向量作為卷積神經網絡的輸入.

CNN(non-static)[3]:使用預訓練的詞向量作為卷積神經網絡的輸入.

LSTM[4]:長短時記憶網絡,使用隨機初始化的詞向量作為輸入,并使用最后的隱藏層狀態作為最終的文本表示.

LSTM(pretrain)[4]:使用預訓練的詞向量作為該網絡的輸入,取最后一層隱藏層向量作為文本表示.

TextGCN[26]:文本圖卷積網絡,將語料庫中的文本數據建模成為一個包含文檔結點和單詞結點的異構圖,實現將文本分類轉換為結點分類.

SGC[27]:簡單圖卷積是圖卷積神經網絡的一種變體,通過去除非線性和在連續層之間折疊權矩陣來降低GCN的復雜性.

BERT[8]:大規模預訓練模型,以文本序列作為輸入,加載對應領域的預訓練模型對下游任務進行微調.

BertGCN[11]:融合預訓練模型BERT和圖卷積網絡GCN,以BERT初始化的詞嵌入作為GCN中文檔結點的表示,使用插值法結合BERT部分和GCN部分的預測作為最終結果.

3.3 參數設置與評價指標

為了與基礎模型BertGCN作性能上的對比,以下提及的一些超參數將與BertGCN在各個數據集中的超參數設置保持一致.首先,將微調階段的BERT模塊的學習率設置為1×10-4,得到所有詞嵌入后,進入聯合訓練階段,設置聯合訓練階段的BERT模塊的學習率為1×10-5,GCN模塊的學習率為1×10-3,dropout設置為0.5,滑動窗口的大小設置為20,GCN隱藏層的嵌入維度設置為200,使用Adam優化器[28]進行優化.使用插值法融合BERT部分和GCN部分的概率分布時所用到的超參數λ在4個數據集中各有不同,R8數據集中λ的取值為0.7,R52數據集中λ的取值為0.3,Ohsumed數據集中λ的取值為0.9,MR數據集中λ的取值為0.4.

實驗使用的評價指標為準確率(Accuracy),表示正確的預測結果個數占樣本總數的百分比.

3.4 實驗對比

在4個文本分類領域的公開數據集上進行對比實驗,模型的性能對比如表1所示,其中加粗部分為最優結果.MfeGCN的表現在4個數據集上的測評結果優于所有的基線模型.在Ohsumed以及MR數據集上的性能提升較為明顯,分別達到了2%和1.31%,而在R8和R52數據集上的提升相對有限,我們認為有以下因素.

表1 MfeGCN和基線模型在不同數據集上的分類準確率

從邊構造上來看,BM25+算法依賴文檔中的詞匯來計算相關性分數,如果文檔的單詞數較少,那么可能導致單詞覆蓋不充分,在計算邊權重時受到一定的限制.

從語義特征上來看,得益于Ohsumed和MR數據集中較為充足的單詞量,進行文檔增強時所擴展的語義信息將更加廣泛,而在R8和R52數據集中,增強文檔得到的語義信息則相對有限.

從圖結構上來看,數據集Ohsumed和MR中所構成的詞匯表的單詞數量遠多于R8和R52數據集,這樣一來,能夠提供的外部知識也會相應增多.因此,Ohsumed和MR數據集所構成的圖會比R8和R52數據集所構成的圖更加稠密,根據GCN的特點,圖結點從其鄰居結點獲取到的特征也會變多.

3.5 消融實驗

針對MfeGCN模型的性能效果,又進行了消融實驗,首先是包括只改變構圖方式而不增加增強結點的模型MfeGCN without E-nodes,還有將MfeGCN模型中構造單詞-文檔邊權重的BM25+算法更換回原BertGCN模型中的單詞-文檔邊權重構造方法TF-IDF,單純進行文本特征和圖結點混合增強,此處記為MfeGCN-T,以及融合了二者的MfeGCN模型本身進行消融實驗,結果如表2所示.

表2 消融實驗在不同數據集上的準確率

由表2可知,在BertGCN的基礎上改進其邊構造方式,只使用BM25+算法來計算其邊權重后,MfeGCN without E-nodes的性能比原方法有了一定的提升,當僅增強文本和增加增強節點而不改變其邊構造方式時,MfeGCNT的性能也比基礎模型BertGCN的性能要優,而在BertGCN的基礎上既使用新的邊構造算法BM25+來構建單詞-文檔邊關系權重,同時進行文本特征和圖結點混合增強后,整體性能又有了一定的提升.

3.6 分析與討論

我們認為MfeGCN取得更好的表現主要有以下原因:

1)BM25+算法是TF-IDF算法的一種改進,對于TF-IDF算法而言,當TF部分的值越大,那么整體返回的值會越大,而BM25+算法針對這一點進行改進,當其TF部分越大,那么整體返回值會趨于一個數值,同時增加了一個用于緩解對超長文檔過度懲罰問題的參數.它對于傳統TF-IDF算法有一些優勢,一方面,考慮了詞項頻率的飽和度,TF-IDF算法中詞項頻率的增長通常是線性的,而BM25+算法中詞項頻率的增長是對數級的,也就是說,對于頻繁出現的詞項,它們的權重增長會更加緩慢,從而避免了對高頻詞項的過度偏袒;另一方面,BM25+算法引入了幾個可調節的參數k1、b和δ,根據具體的應用場景進行調優,可以更好地適應不同的數據集,提供更準確的計算結果,并且BM25+算法相對TF-IDF只關注詞項頻率和逆文檔頻率而言,考慮了文檔長度因素,在一些長文檔場景下依舊可以表現出很好的性能.由表2可知,僅改進構圖方式,MfeGCN without E-nodes模型性能相比基礎模型BertGCN有了一定的提升,說明優化構圖方式對于最終的模型表現有一定的正面影響.

2)基于最高得分的同義詞替換策略引入了原始訓練集中不存在的單詞,添加了額外的知識,分別對4個訓練集進行了統計,包括統計分別組成每個訓練集的原始單詞個數以及引入的額外單詞個數,具體指標如表3所示.由表3可知,使用該方法后,每個訓練集都引入了一定的外部單詞,這些外部知識在一定程度上提升了模型的泛化性能.由表2可知,當不改變構圖方式時,僅對訓練集進行特征增強,最終的模型性能得益于外部知識以及同類特征極大化聚合而有了一定的提升.結合兩個方面的改進后,模型吸收了它們各自的優勢而擁有了更好的性能.

表3 不同數據集非重復原始詞個數以及外部詞個數

對于同類特征極大化聚合的驗證,分別挑選R52和Ohsumed數據集進行實驗.所選兩個數據集中分別隨機選取各自所有類別中的8種類別2次進行驗證,每種類別取10條數據,結果如圖2和圖3所示.顏色越深代表比重越大,隨機選取不同的類別后,依然符合同類特征極大化聚合的結論,也就是某個類別中樣本的增強文本的替換詞大部分來自其同類樣本.

圖2 Ohsumed數據集隨機選取類別組的替換詞在該組各類別的占比

圖3 R52數據集隨機選取類別組的替換詞在該組各類別的占比

4 總結

本文基于BertGCN模型進行改進,分別從其構圖方式和特征增強方面入手,使用了BM25+算法來計算單詞-文檔之間的邊權重,并且使用了文本特征和圖結點混合增強策略對文本進行特征補充及增強.一方面,BM25+算法優化了邊的權重;另一方面,增強結點融合了同類知識以及外部知識.

實驗結果表明,MfeGCN模型均比其它的基線模型性能好,并且在消融實驗中各項結果也體現了各部分改進模塊的有效性.未來的工作中,將針對圖結構和增強樣本進一步改善處理,結合各自優勢進一步優化模型,并加以驗證分析.

猜你喜歡
結點文檔卷積
淺談Matlab與Word文檔的應用接口
基于3D-Winograd的快速卷積算法設計及FPGA實現
有人一聲不吭向你扔了個文檔
從濾波器理解卷積
基于傅里葉域卷積表示的目標跟蹤算法
Ladyzhenskaya流體力學方程組的確定模與確定結點個數估計
基于RI碼計算的Word復制文檔鑒別
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
一種基于卷積神經網絡的性別識別方法
基于Raspberry PI為結點的天氣云測量網絡實現
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合