杜雨奇,鄭 津,王 楊,黃 誠,李 平
(西南石油大學 計算機科學學院,成都 610500)
網絡時代的信息量呈爆炸性增長,如何從這些資源中提取出有用的信息成為了一項巨大挑戰,文本分割任務應運而生。1997 年,Hearst[1]將按照主題或子主題相關的原則把文本劃分為若干個文本單元塊的任務稱為文本分割。其宗旨是識別到文本中的主題過渡,從而可以將文本分割為若干個具有不同主題的文本片段,即文本塊。每一個文本塊中的內容在語義上都是緊密聯系的,屬于同一個子主題,而不同文本塊之間的語義聯系相對較薄弱,主題有所差別。良好的分割結果可增強文本的可讀性,任務所得的文本塊可應用于眾多自然語言處理(Natural Language Processing,NLP)的下游任務,例如自動文本摘要[2-3]、信息檢索[4-5]、情感分類[6-7]或對話建模[8-9]等。
目前,文本分割作為一個基礎但復雜的自然語言處理任務,面臨了諸多挑戰。由于其任務的特殊性,文本分割需考慮到3 個方面的內容:1)文本的結構信息,即文本的層次性。文本中包含了多個子主題,并且位置相鄰的兩個自然段、句子和詞之間都有其結構關聯。2)文本要素(詞、句子或自然段)的語義信息。挖掘語義關系是自然語言處理任務的核心之一。3)文本要素之間的上下文關聯。上下文關系可以增強文本要素的嵌入表達,并且符合文本分割任務的定義要求。
針對以上三項主要挑戰,本文提出了一種基于圖卷積網絡(Graph Convolutional Network,GCN)的文本 分割模 型TS-GCN(Text Segmentation-Graph Convolutional Network),利用圖的拓撲結構來對這些信息進行融合表達,圖的節點為每個自然段,圖的邊為自然段與自然段之間的關系。受圖注意力網絡(Graph Attention Network,GAT)[10]工作的啟發,在構建邏輯關系時引入了注意力,對鄰居節點信息進行有側重性的聚合。接著借助最近幾年熱門的圖卷積網絡來對自然段節點進行高階鄰域的信息傳遞。通過聚合后的節點表達,判斷每一個自然段節點“是/否”為一個文本塊的邊界。對連續若干個自然段進行標簽預測,即可將文本劃分為對應的文本塊。經過實驗分析,該模型可以獲得很強的分割性能,在保持運行速度的同時,達到了與目前最好的(State-Of-The-Art,SOTA)模型同級的分割效果。
本文的主要工作包含:
1)提出了一個基于圖卷積網絡的文本分割模型TS-GCN,對于文本分割任務提出了一個新的解決方向——圖卷積網絡,并通過實驗結果驗證了其有效性;
2)提出了一種構建文本鄰接矩陣的思路,融合了文本的空間關系與邏輯關系,拓寬了圖的邊的類型,結合了更多方面的文本信息;
3)在邏輯關系構造方面,引入了語義相似性注意力,從而可以對鄰域信息進行有側重性地聚合。
在深度學習發展之前,文本分割任務都是通過量化詞匯相似性或詞的銜接等方式來進行的。例如,1997 年,Hearst[1]提出TextTiling 模型;2000 年,Choi[11]提出C99 模型;2001 年,Utiyama 等[12]提出U00 模型。以上模型只能關注到一些詞匯的表層統計信息,很難挖掘到語義信息等深層次的信息。
深度學習的出現為這個問題帶來了轉機,隨著深度學習的發展,逐漸出現了一些利用深度模型進行文本分割任務的研究。例如,Li 等[13]提出用循環神經網絡(Recurrent Neural Network,RNN)結合指針網絡來判定分割邊界;2018 年,Koshorek 等[14]通過兩層雙向長短期記憶(Bidirectional Long Short-Term Memory,Bi-LSTM)來對句子進行分割判定;2019年,Arnold 等[15]提出了SECTOR 模型,使用LSTM 預測句子主題和文本塊邊界;2020 年,S-LSTM(Segment pooling LSTM)[16]結合了以前的模型思想進一步提高了分割性能;同年,Lukasik 等[17]利用BERT(Bidirectional Encoder Representation from Transformers)和LSTM 實現了3 種新型分割模型;Xing等[18]提出一個分層注意力Bi-LSTM 模型用于主題分割;Wu等[19]將文本分割建模為使用帶有條件隨機場(Conditional Random Field,CRF)分類層的LSTM 序列標記任務。這一類型的模型利用RNN 以序列的方式來構建單詞或句子的表示,可以獲取到不同程度上的語義表達,但在上下文信息挖掘方面仍有所欠缺。
受以上所列的研究工作啟發,部分研究人員意識到利用圖的拓撲結構來表達文本數據的分布更佳。2016 年,Glava?等[20]提出了GraphSeg 模型,GraphSeg 利用句子的語義相似度構造句子之間的無向圖,并通過Bron-Kerbosch 算法計算最大團來劃分文本塊。通過這種方式構造出的圖只考慮到句子之間的語義相似度,并且通過無監督算法來劃分文本塊的方式很難處理特定的任務和多尺度問題。2018 年,Yao 等[21]提出基于圖神經網絡的文本分類(Graph Convolutional Network for Text classification,TextGCN)模型,其實驗結果有力證明了圖卷積網絡(GCN)在處理圖結構信息方面的有效性。而Kipf 等[22]的原始GCN 在構建鄰接矩陣時僅僅是對鄰接關系進行累加,并沒有考慮到節點之間的關系應該有側重性。根據文本分割任務的特殊性,應當在不同鄰域節點之間加以區分,可以在鄰接關系的權重方面得以體現。例如,在一個文本塊中,各自然段雖屬于同一個子主題,但它們兩兩之間的相關度都有所不同,節點之間的影響力也有很大差別。
綜上,為了解決文本數據的結構信息、語義信息以及上下文信息的挖掘問題,本文模型TS-GCN 能夠提取到文本數據的空間性與邏輯性。如圖1 所示,以P5 節點為例,TS-GCN引入了注意力,對其鄰域信息進行有側重性的聚合,鄰居節點的大小與邊緣厚度代表了目標節點對鄰居節點的注意力強度,再通過圖卷積網絡結構聚合鄰域信息,從而對節點信息進行有效表達。值得注意的是,TS-GCN 與TextGCN 所針對的任務有一定程度上的相似性,但兩者在場景上區別較大。首先,TS-GCN 基于文本的結構信息和語義邏輯,在同一篇文本內進行自然段之間的分類;而TextGCN 是在不同的獨立文檔之間進行主題分類。從這一層面上來看,TS-GCN 需要更多地考慮到文本的細粒度特征,而TextGCN 作為對獨立文檔進行分類的模型,更重要的是挖掘到文本的整體特征表達。其次,相較于TextGCN,TS-GCN 在細節的處理上更加需要加強節點自身與節點之間的關系的表達,并且大量的注意力放在了對于鄰接關系的表達上,TS-GCN 需要結合節點和邊來進行特征匯聚;而在TextGCN 所針對的獨立文檔分類任務中,最后的融合表達并沒有它在TS-GCN 的解決方案中那么重要。

圖1 原始GCN與TS-GCN的對比Fig.1 Comparison between original GCN and TS-GCN
本文提出的基于圖卷積網絡的文本分割模型TS-GCN 包含3 個模塊,結構如圖2 所示。3 個模塊分別為:1)圖的構建。將自然段表示為節點,融合自然段之間的空間關系與邏輯關系來構建文本圖的邊,并且在邏輯關系表達方面引入了基于語義相似性的注意力。2)基于圖的特征聚合。利用兩個堆疊的GCN 層來對鄰居節點特征和邊特征進行聚合進而提高中心節點表達的準確性。3)分割預測。輸出每個自然段是否作為分割邊界的概率,并選擇最大概率對應的標簽作為其預測結果。

圖2 TS-GCN整體流程Fig.2 Overall process of TS-GCN
將自然段作為圖的節點,自然段之間的關系作為圖的邊,文本圖可記為Graph=(Vertices,Edges),Vertices代表自然段節點的集合,Edges代表節點與節點間的所有邊的集合。構建文本圖包括自然段節點特征初始化與邊的構建兩個部分。
2.1.1 節點特征初始化
將自然段作為節點,節點特征可通過自身初始化后的表征以及聚合鄰居節點特征和邊特征來融合表達。因此,首先需要對節點的特征進行初始化。通過引入fastText 在Wikipedia 2017、UMBC webbase 語料庫和statmt.org 新聞數據集上訓練的100 萬個300 維詞向量來表示每個自然段中的單詞,再將一個自然段中所有單詞的向量求平均來表示該自然段的嵌入,最終可以得到特征矩陣X。自然段嵌入表達的向量化處理過程如式(1)(2)所示:

其中:si為自然段中每個單詞的300 維詞向量,w代表該自然段中的單詞總數,E為該自然段的嵌入表達,p為數據集中自然段總數,⊕表示拼接操作。
2.1.2 邊的構建
在GCN 中,鄰接矩陣代表著圖結構信息,圖結構特征也會對節點特征有一定的影響,因此邊的構建至關重要。由于大部分文本分割模型在文本結構信息、語義信息和上下文信息挖掘方面存在不足,因此本文在構建邊時對文本的空間關系與邏輯關系進行了融合,如圖3 所示。

圖3 邊的構建Fig.3 Construction of edges
1)空間關系。空間關系的范圍為整個文本數據集。由于選取的數據是多篇完整的文本,相鄰的兩個自然段之間有其整體結構和語義表達上的聯系??臻g關系又具體分為兩種:第一種是兩個自然段空間相鄰并處在同一文本塊中,存在這種關系的兩個自然段的語義一定是緊密相關的;第二種是兩個自然段空間相鄰,但其中一個自然段是一個文本塊的結束段,而另一個自然段是另一個文本塊的起始段。由于分別屬于兩個不同的子主題,可以將存在這種關系的兩個自然段看作主題過渡段,有其過渡語義的體現??臻g關系的鄰接矩陣SAij可用式(3)表示為:

2)邏輯關系。邏輯關系的范圍為若干個文本塊內。同一個文本塊中的自然段在語義上應該緊密相關,并且屬于同一個子主題,但它們之間也存在一些緊密性的區別,某兩個自然段的聯系可能會比其他自然段更強;因此,為了滿足模型對文本塊內關系的挖掘能力,本文在邏輯關系方面引入了語義相似性注意力,旨在捕獲同一個文本塊中自然段之間的不同相關度。邏輯關系的鄰接矩陣LAij可用式(4)表示為:

其中α(i,j)為自然段i與自然段j之間的注意力值,計算方式如式(5):

其中:n為節點的特征維度,iz和jz代表節點特征向量在每一個第z個維度上的數值。
3)融合表達。綜合空間關系與邏輯關系,節點i與節點j之間的邊的權值Aij可如式(6)定義為:

其中:μ(·)與ν(·)為指示函數,若i和j是空間相鄰的,則μ(i,j)=1,反之為0;若i和j屬于同一個文本塊,則ν(i,j)=1,反之為0。
通過以上兩種鄰接矩陣的構建,文本的空間關系和邏輯關系可以得到有效的表達,應對了文本分割任務所面臨的結構信息、語義信息和上下文關聯挖掘的三項主要挑戰。
在圖的特征聚合方面,通過聚合鄰居節點信息和邊的信息來表達中心節點的信息,以此來對節點進行更準確的嵌入表達。通過圖Graph=(Vertices,Edges),可以構造出:1)特征矩陣X。假設共有p個節點,每個節點用一個m維向量表示,則X矩陣的維度大小為p*m。2)鄰接矩陣A。鄰接矩陣匯聚了節點間的邊的信息,由于每一個節點與其自身聯系最緊密,因此設置了自環(self-loops)機制,且矩陣對角線上的元素均大于等于1。
本文模型采用了兩個堆疊的GCN 層來對特征矩陣和鄰接矩陣進行處理進而提取圖的特征。節點接收聚合其鄰域信息并對自身的嵌入進行表達,其中,激活函數分別采用修正線性單元(Rectified Linear Unit,ReLU)和Softmax,則整體的正向傳播如式(7):

其中:X為特征矩陣,A為鄰接矩陣,W和b是可學習的參數。
類似于圖2 中的P5 節點,通過GCN 層可以得到所有節點聚合后的特征表示,再經過一個Softmax 操作后,可以得到每個自然段是否作為分割邊界的概率,計算如式(8)所示:

其中:xt為第t維的輸出值;m為節點特征向量的維度,也是分類的類別個數。Softmax(xt)可以將輸出值轉換為取值在(0,1)范圍內且和為1 的概率分布,選擇最大概率對應的標簽即可作為節點的預測結果。
實驗中一共采用兩個數據集:Wikicities 和Wikielements。這兩個數據集均是在2009 年由Chen 等[23]制作完成。Wikicities 包括100 個關于主要城市的描述文檔,主題大致包括歷史、文化和人口信息等;Wikielements 包括118 個化學元素的描述文檔,主題包括元素的生物學作用和同位素等。這兩個數據集后來被廣泛應用于文本分割任務,具體信息如表1 所示。

表1 文本分割數據集的統計信息Tab.1 Statistics of text segmentation datasets
正如文本分割任務的定義所示,一個好的分割模型可以準確識別出數據集文本中連續自然段的分割邊界,因此,本文研究的目標就是優化兩個自然段被正確標記為相關或不相關的概率。圖4 展示了文本分割的3 種結果。

圖4 文本分割的3種結果Fig.4 Three results of text segmentation
本文實驗采用了文本分割任務的標準量化指標Pk值。1999 年,Beeferman 等[24]對Pk值進行了定義。設PD為從語料庫中隨機抽取的兩個自然段被錯判為屬于不同或同一文本塊的概率,其計算方式如式(9):

其中:p為數據集中的自然段總數量;ref為實際分割;hyp為預測分割;δref和δhyp代表指示函數,若自然段i與自然段j同屬于一個文本塊,則δref或δhyp為1,反之為0;代表同或門(eXclusive-NOR gate,XNOR)。D(i,j)代表距離概率分布,用來表示隨機抽取的兩個自然段之間的距離,距離越遠,D值越小。由于距離的概率分布D(i,j)很難確定,Beeferman等[24]提出將D簡化為Dk。取固定值k作為距離,一般將k設置為文本塊平均長度的一半,即可得到間隔k個自然段的自然段對被錯判為屬于不同或同一文本塊的概率值Pk。因此,由定義可知,Pk取值在0~1,Pk值越小,分割效果越佳。在本文實驗中,通過調用SEGEVAL 包來計算Pk值。
本文模型采用通過fastText 在Wikipedia 2017、UMBC webbase 語料庫和statmt.org 新聞數據集上訓練的300 維詞向量作為單詞的初始特征,并通過向量相加平均的方式來對自然段進行嵌入表達,詞表外(Out Of Vocabulary,OOV)的單詞通過從均勻分布中隨機采樣生成,隱藏層維度為64。
生成所需的特征矩陣與鄰接矩陣后,通過兩層堆疊的GCN 來對矩陣信息進行處理。在每層GCN 后接一層Dropout并設其為0.5。實驗硬件為顯存為16 GB 的Tesla T4,優化器選擇Adam 且權重衰減系數為0.007,epoch 數設置為1 000,損失函數使用交叉熵,計算過程如式(10):

其中:x為經過Softmax 操作后的輸出,c、h代表標簽的索引值。
3.4.1 文本分割任務結果及分析
為了驗證本文所提出的TS-GCN 的有效性,將TS-GCN 與其他文本分割基線模型進行對比。
表2 顯示了TS-GCN 與其他基線模型在Wikicities 和Wikielements 兩個數據集上的分割效果。Random 代表隨機劃定文本塊;GraphSeg 模型通過Bron-Kerbosch 算法計算最大團來劃分文本塊;WIKI-727K 模型采用了兩層Bi-LSTM 來對句子進行分割判定;TLT-TS(Two-Level Transformer model for Text Segmentation)[25]為一個雙層Transformer 結構;CATS(Coherence-Aware Text Segmentation)模型是在TLT-TS 的基礎上增加了一個文本連貫性輔助任務模塊,即對模型預測的分割結果進行“破壞”(隨機打亂順序或替換其中的句子),再對正確的文本序列和“破壞”后的文本序列進行回歸運算,進而通過損失優化得到可預測出更具備連貫性的分割結果的模型。表2 數據顯示,在Wikicities 數據集上,僅相較于CATS(增加了文本連貫性輔助任務)而言,TS-GCN(未增加任何輔助模塊)的表現稍有不足,但仍比CATS 的基礎模型TLT-TS的分割指標低0.08 個百分點,原因在于Wikicities 數據集能夠更好地適配該文本連貫性輔助任務模塊;而在Wikielements 數據集上,相較于CATS 和TLT-TS,TS-GCN 的評價指標分別下降了0.38 個百分點和2.30 個百分點,優于其他所有基線模型,達到了SOTA 的效果,這也說明了該文本連貫性輔助任務在Wikielements 數據集上的作用不夠明顯。表2 數據表明,無監督模型的分割效果普遍弱于有監督模型。4 個有監督模型在Wikicities 數據集上的分割效果幾乎持平;但WIKI-727K 模型在Wikielements 數據集上的結果與其他3 個監督模型的差距較大;而TS-GCN 在兩個數據集上的表現比其他有監督模型更為穩定。這表明TS-GCN 提供了比其他對比有監督模型更穩健的域轉移能力,具有應對更多主題類型的文本分割任務的實力。

表2 文本分割任務中不同模型的Pk值對比 單位:%Tab.2 Comparison of Pk value among different models for text segmentation task unit:%
3.4.2 案例分析
本節將分割結果可視化來對模型效果進行評估分析。從Wikicities 的測試集中隨機選取第42 篇文檔中關于濟南市的樣本文本段來進行案例研究,人工標注與模型預測結果如圖5 所示。其中:ref 指人工標注的分割結果,hyp(TS-GCN)與hyp(WIKI-727K)指分別通過TS-GCN 和WIKI-727K 模型獲得的預測分割結果。
圖5 顯示,hyp(TS-GCN)與ref 并不完全一致,具體原因分析如下。
1)當文本中的自然段之間有很強的依賴性時,文本分割較為棘手,如圖5 中第3 段與第4 段之間的邊界丟失問題。圖6 中展示的第3 段內容是“濟南市被劃分為146 個鎮級分區,包括65 個鎮、27 個鄉和54 個街道”,第4 段講述的是地理信息,而第5 段開始講述濟南市的歷史。第4 段與第3 段之間的關聯度高于與第5 段的關聯度,因此模型更容易把第4段和第3 段劃分到同一文本塊中,而非將其單獨作為一個文本塊。

圖5 Wikicities文本片段的TS-GCN和WIKI-727K模型的分割結果與人工標注結果的對比Fig.5 Comparison of segmentation results among TS-GCN and WIKI-727K models with manual annotation results for Wikicities text fragments

圖6 Wikicities中濟南文檔的第3、4和5自然段Fig.6 The third,fourth and fifth paragraphs of Jinan document in Wikicities
2)當自然段屬于同一文本塊但子主題關聯性不強時,也會造成一些誤判情況。如圖7 所示,雖然第11 段與第12 段都屬于經濟模塊,但第11 段描述的是濟南市的勞動力資源,且著重介紹了市內學校和學生的情況,而第12 段是濟南市的生產業情況。由于這兩個自然段內的詞匯語義等信息距離較遠,模型很容易判斷兩個自然段之間含有1 個分割邊界。

圖7 Wikicities中濟南文檔的第11和12自然段Fig.7 The eleventh and twelfth paragraphs of Jinan document in Wikicities
雖然上述兩種現象未能涵蓋所有的問題案例,但作為分割的難點,這些現象在文本分割任務中普遍存在,也是未來文本分割任務的重點研究內容。就目前的研究進展而言,TS-GCN 已經達到了較高的分割水平。如圖5 所示,對相同的一段文本進行分割,TS-GCN 的分割結果比WIKI-727K 更為精準,miss 和false alarm 情況更少。
3.4.3 不同預訓練詞向量結果分析
表3 展示了TS-GCN 模型在3 種預訓練詞向量下的分割結果,以驗證不同詞向量對于模型效果的影響。

表3 不同預訓練詞向量下的分割結果 單位:%Tab.3 Segmentation results under different pre-training word vectors unit:%
表3 中的數據表明,針對本文中所采用的Wikicities 和Wikielements 數據集,wiki-news-300d 詞向量在TS-GCN 模型上的效果優于GloVe-300d 與crawl-300d。其原因在于:1)相較于包含了fastText 在Common Crawl(超過7 年的網絡爬蟲數據集)上訓練的200 萬個詞向量的crawl-300d,wiki-news-300d 是基于2017 年維基百科、UMBC webbase 語料庫和statmt.org 新聞數據集訓練的詞向量,因此更多地獲取到了關于維基百科的語義關系;2)相較于GloVe-300d,wiki-news-300d 使用了16B 個單詞來進行訓練,而GloVe-300d 只使用了6B,因此wiki-news-300d 能對Wikicities 和Wikielements 數據集中的詞匯進行更為準確的表征。
因此,本文實驗采用了wiki-news-300d 預訓練詞向量以達到更準確的分割效果。
3.4.4 GCN層數對比分析
由于GCN 只能聚合一階鄰居的特征,但較少的GCN 層數會導致模型無法獲取到遠距離的節點特征,無法獲得更為宏觀的圖信息,所以通常會采用多層GCN 的結構來進行信息匯聚。然而,隨著網絡層數和迭代次數的增加,同一連通分量內的節點表征會趨向于收斂到同一個值。因此,本文通過實驗驗證了GCN 層數對模型的分割性能的影響。
圖8 展示了不同GCN 層數下的TS-GCN 模型所產生的Pk值。從圖8 中可以看出:

圖8 不同GCN層數的分割結果對比Fig.8 Comparison of segmentation results with different GCN layers
1)最小的Pk值對應的是兩層堆疊的GCN,Pk值隨著層數的增加而增加。當只有1 層GCN 時,模型只能聚合到一階鄰居特征,導致節點聚合的信息量不足,不能對節點進行有效地聚合和分類。當GCN 層數增加到2 時,第1 層用于將節點特征映射為節點隱層狀態,第2 層用于將節點隱層狀態映射為相應的輸出,Pk值達到最低點。隨著層數不斷增加,節點特征不斷聚合直至收斂,而不能表示出所需要的局部結構特征,導致模型無法對節點進行有效區分。
2)層數不超過3 時,Wikielements 數據集上的Pk值低于Wikicities;當層數大于3 時,Wikielements 的Pk值陡增至接近50,Wikicities 的Pk值雖有上升趨勢,但整體上升幅度并不大。原因在于Wikielements 的數據量比Wikicities 小很多,更容易產生過擬合現象,因此層數越多更容易加快節點表征的收斂。
3.4.5 注意力可解釋性分析
TS-GCN 模型在構建文本的邏輯關系時引入了語義相似性注意力,取得了較好的分割效果。表4 展示了不采用注意力和采用不同注意力計算方法后的分割結果,以驗證它對于TS-GCN 的作用效果。

表4 不同注意力計算方法下的分割結果 單位:%Tab.4 Segmentation results of different attention calculation methods unit:%
為了證明在本文模型中引入注意力的重要性和有效性,進行了未采用注意力的對比實驗,將文本塊中的每兩個自然段之間的權重記為1,即可直接加強文本塊內兩兩自然段間的相關度。并且,在不同注意力的效果對比方面,引入了基于歐氏距離的注意力,計算過程如式(11)所示。其中:dist(i,j)為自然段i和自然段j之間的歐氏距離,計算過程如式(12);dist_sum(i)為自然段i與其對應文本塊中所有自然段之間的歐氏距離總和。語義相似性注意力計算過程見式(5)。

實驗結果表明:1)采用不同的注意力計算方法下的分割效果均優于不采用注意力,證明了注意力在文本分割任務中的重要性;2)在向量空間中,歐氏距離注意力側重于向量的大小,而本文所采用的語義相似性注意力更關注向量的方向。在同樣引入注意力的情況下,語義相似性注意力取得的分割效果最佳。
本文結合文本分割任務的定義和特點,針對現有分割模型提取文本段落結構信息、語義相關性及上下文交互等細粒度特征的不足,提出了一種基于圖卷積網絡的文本分割模型TS-GCN。該模型融合了文本的結構信息和語義邏輯,利用圖卷積網絡來對文本進行分割預測;通過在Wikicities 和Wikielements 兩個數據集上的實驗結果表明了TS-GCN 模型的有效性;但同時也存在一些可進行延伸研究的方面,例如對于更細粒度層面的分割還需要進行進一步的研究。在接下來的研究中,將會引入更適用于文本分割任務的注意力,進而提高模型提取節點表征的能力。