王 剛,孫媛媛,陳彥光,林鴻飛
(大連理工大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,遼寧 大連 116024)
司法摘要是對司法文書的內(nèi)容進行壓縮、總結(jié)的過程,在案件檢索、案件預(yù)覽等場合中將司法摘要與業(yè)務(wù)流程相結(jié)合,能夠提高司法工作的效率。在摘要任務(wù)中,與新聞、文學(xué)文本相比,法律文書的格式和結(jié)構(gòu)更規(guī)范,用詞更精確,在摘要的研究中具有明顯的領(lǐng)域特點。司法領(lǐng)域數(shù)據(jù)建設(shè)的不斷進步為司法領(lǐng)域的信息自動化、信息化、智能化建設(shè)提供了堅實的數(shù)據(jù)基礎(chǔ),同時也為自然語言處理(Natural Language Processing,NLP)方向的研究提供了新思路。
文本摘要是指機器自動對文本信息進行選擇、凝練,進而形成較短文本。文本摘要分為抽取式摘要和生成式摘要。抽取式摘要是將抽取原文本中包含重要信息的句子組成摘要,句子間不夠連貫,靈活性差。生成式摘要是對詞庫中詞語的組合排列形成概括性的新句子,比較靈活,符合自然摘要的生成方式。生成式模型存在序列重復(fù)、可讀性差等問題,隨著深度神經(jīng)網(wǎng)絡(luò)的發(fā)展,其各個問題逐漸被解決,從而受到廣泛關(guān)注。生成式摘要的可讀性較優(yōu),但需要訓(xùn)練大量語料,大部分模型在處理長文本時存在訓(xùn)練時間過長和“長距離依賴”等問題。抽取式摘要和生成式摘要都可以對原文信息進行甄選,后者能夠?qū)⑿畔⒅匦陆M合成上下銜接更加流暢的句子。近年來,研究人員側(cè)重于對內(nèi)容選擇和摘要生成進行獨立分析。文獻[1]提出選擇合適的單句或句對生成單句摘要的方法。針對長文檔摘要,文獻[2]在生成摘要模型前增加簡單的抽取步驟。研究人員通過對重要段落或句子的總結(jié)進行內(nèi)容選擇。相比摘要生成,內(nèi)容選擇更關(guān)注信息的識別,并且具有領(lǐng)域特點,例如,體育新聞注重比分、參賽運動員信息等,法律文本注重案情要素、法條等。摘要生成則側(cè)重于語義上的裁剪和抽象。將內(nèi)容選擇和摘要生成分開能夠有效測試句子壓縮和融合模型的性能,并具有一定的可解釋性,但是在抽取過程中可能會丟失一部分信息。
本文提出一種基于序列標注的分段式抽取摘要模型。在摘要抽取過程中,采用預(yù)訓(xùn)練模型作為句子嵌入和Transformer 結(jié)構(gòu)[3]的序列標注模型,將每個句子分成3 類標簽,抽取每句摘要對應(yīng)的原文句子集合。在摘要生成過程中,利用指針生成器(Pointer-Generator,PG)網(wǎng)絡(luò)[4]對抽取結(jié)果進行壓縮和融合,生成單句摘要。
自動摘要研究以抽取式方法為主,使用統(tǒng)計學(xué)方法,例如,以句子位置、詞頻、線索詞等特征作為輸入,并將得到每個句子的分數(shù)從大到小進行排序,抽取出分數(shù)較高的句子作為摘要[5-7]。隨著機器學(xué)習(xí)技術(shù)在NLP 中的應(yīng)用,將統(tǒng)計特征輸入到機器學(xué)習(xí)模型中進行分類的方法成為研究熱點。文獻[8]提出將文章的統(tǒng)計特征輸入到樸素貝葉斯分類器模型和決策樹的方法。文獻[9]提出將馬爾科夫模型用到摘要抽取中。文獻[10-11]提出圖排序的方法等。以上方法都是基于人工提取的淺層特征,然而基于深度神經(jīng)網(wǎng)絡(luò)的方法通過模型自學(xué)習(xí)識別文本的高維特征,采用序列標注的方法,即為每個句子定義0或1的標簽,以包含1標簽的句子作為被選中的重要句子。文獻[12]基于循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的序列分類模型構(gòu)建SummaRuNNer模型,將抽取摘要的內(nèi)容重要度、顯著度、新穎度等顯式地表達出,具有較優(yōu)的可解釋性。文獻[13]結(jié)合打分和選擇提出NeuSum 模型,是一種基于序列到序列(Sequence to Sequence,Seq2Seq)架構(gòu)的摘要抽取模型?;赥ransformer 結(jié)構(gòu)[3]構(gòu)建的預(yù)訓(xùn)練模型BERT[14](Bidirectional Encoder Representations from Transformers)在多個NLP 任務(wù)中取得最佳表現(xiàn),將其首次應(yīng)用到抽取式文本摘要中[15],在多個摘要數(shù)據(jù)集上具有較優(yōu)的結(jié)果。
隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,Seq2Seq 的神經(jīng)網(wǎng)絡(luò)摘要模型成為研究熱點。Seq2Seq 模型最早用于機器翻譯,將RNN 作為編碼器(Encoder)和解碼器(Decoder)[16],前者將輸入序列表示為固定長度的向量,后者根據(jù)向量生成輸出序列。文獻[17]指出該模型的性能隨文本長度的增加而降低。文獻[18]引入注意力機制,使得解碼器的每個階段能夠關(guān)注特定位置的原文,提高模型的預(yù)測能力和魯棒性。文獻[19]構(gòu)建輸入輸出序列的模型——指針網(wǎng)絡(luò)(Pointer network)。受神經(jīng)網(wǎng)絡(luò)機器翻譯模型的啟發(fā),文獻[20]首次將指針網(wǎng)絡(luò)應(yīng)用在生成式摘要任務(wù)上,在句子級摘要數(shù)據(jù)集上具有較優(yōu)的性能。在此基礎(chǔ)上,針對生成式摘要Seq2Seq 模型的輸出存在事實細節(jié)再現(xiàn)性差和容易重復(fù)的問題,文獻[4]提出一種指針生成器網(wǎng)絡(luò),在一定程度上解決未登錄詞和罕見詞的問題,并采用覆蓋機制解決生成序列重復(fù)的問題,在CNN/Daily Mail 摘要數(shù)據(jù)集上具有較優(yōu)的性能。
為促進智慧司法相關(guān)技術(shù)的發(fā)展,由政府部門、高校及企業(yè)聯(lián)合舉辦的CAIL2020 將摘要任務(wù)加入到評測比賽中,該比賽采用民事裁判文書語料,其文書和參考摘要呈現(xiàn)相似的段落結(jié)構(gòu),敘述順序也基本一致,本文則是基于該語料展開研究。實驗中使用的CAIL2020 摘要數(shù)據(jù)集總共9 848 份民事一審判決書。裁判文書預(yù)先劃分成若干句子,每句都標記是否重要的標簽,并提供與之對應(yīng)的參考摘要全文。文書類別包括侵權(quán)責任、租賃合同、勞動合同、繼承合同、借款合同等民事糾紛,文書平均包含2 568 個字,最長為13 060 個字,95%的文書超過4 663 個字。摘要平均283 個字,最長474 個字,95%的摘要超過327 個字。該數(shù)據(jù)集屬于長文本的摘要數(shù)據(jù)集。文書和摘要的預(yù)處理分為4 個步驟:1)去噪,文書和摘要包含一些空格和多余的句號等非法字符,這會影響下一步分詞和分句的效果;2)信息提取,使用正則表達式對文書中標志性的字符串進行提取并識別文書類別;3)分句,按照句號劃分參考摘要;4)分詞,通過導(dǎo)入預(yù)定義的法律名詞詞典和使用jieba 分詞工具進行分詞。每句摘要中大部分信息來源于原文中標有重要標簽的句子,并且摘要敘述的順序和文書有高度的一致性,文書和摘要預(yù)處理是按照糾紛類型判定、原告訴訟請求陳述、列舉案情細節(jié)及審理結(jié)果的順序進行描述。
本文將TF-IDF 向量作為句子的表示向量,利用句子向量間的余弦值衡量句子間的相似度,同時對摘要與標有重要信息標簽句子的相似度進行可視化實驗研究。某份文書的參考摘要和重要句子之間相似度熱力圖如圖1 所示。熱力圖中顏色越深表示兩者相似度越高。熱力圖呈階梯狀,說明摘要信息分布和原文信息分布具有一致性,且重要句子和摘要句子呈現(xiàn)多對一的特點,即同一個重要句子大概率只與一句摘要的內(nèi)容相關(guān)。
圖1 參考摘要和重要句子之間相似度熱力圖Fig.1 Similarity thermodynamic diagram between reference summarization and important sentences
針對長文檔摘要,“抽取+生成”的流水線模型能夠縮短生成模型中輸入序列和輸出序列的長度,從而改善模型效果[2]。本文將摘要生成過程分為抽取和生成2 個階段,采用“句子集合-摘要全文”和“句子集合-摘要句子”生成序列粒度?!熬渥蛹?摘要全文”找出原文中重要的句子進而生成摘要全文;“句子集合-摘要句子”找出每句摘要對應(yīng)的重要句子集合,通過生成模型對抽取結(jié)果進行壓縮和融合,以生成單句摘要,從而縮短輸出序列和輸入序列的長度。
在CAIL2020 摘要數(shù)據(jù)集中重要句子標簽可用于“句子集合-摘要全文”模型,單句摘要模型所需的數(shù)據(jù)需要做進一步處理。對于L句輸入文檔D={S1,S2,…,SL},N句參考摘要T={T1,T2,…,TN},本文構(gòu)建D中句子索引的N個集合Z={Z1,Z2,…,ZN},其中Zi包含Ti對應(yīng)D中句子的索引。文獻[1]提出針對單句摘要抽取方式,通過對輸入文檔中N個句子進行組合得到集合,同時對這些集合進行分類,因為預(yù)設(shè)組合的數(shù)量限制,所以減少分類次數(shù)。CAIL2020 摘要數(shù)據(jù)集中部分摘要對應(yīng)原文句子遠高于這個限制,且數(shù)量分布不均。因此,該方式處理數(shù)據(jù)集是不合適的。CAIL2020 摘要數(shù)據(jù)集的特點包括摘要和對應(yīng)句子位置分布的基本一致,大部分輸入句子只對應(yīng)一句摘要。本文給出以下假設(shè):Z中集合均為D的子序列,且集合之間不存在重疊。本文采用類似于實體識別的標注方式對每個句子進行標注,并使用“bio”標簽,“b”表示Zi中第一個句子,“i”表示與前一個帶有“i”或“b”標簽構(gòu)成一個集合,“o”表示不重要的句子。該方法與實體識別標注策略不同的是“b”和“i”之間、“i”和“i”之間允許“o”標簽存在。
單句抽取式摘要數(shù)據(jù)集的構(gòu)建通過將D中每組句子集合和對應(yīng)摘要的匹配度之和作為他們的相似度,對重要句子集合分隔成摘要數(shù)目的組,使得所有組合的相似度之和最大。如已知重要句子的索引序列為{5,6,8,9,11,15,16,21},而摘要序列為{a,b,c,d},因此C(7,4)=35 種方式將序列隔成4 組,{{5},{6,8},{11,15,16},{21}}為其中一種方式,分別計算{5}和a、{6,8}和b、{11,15,16}和c、{21}和d 的的相似度,這種方式的相似度之和最大,因此選擇第5 個句子的標簽為“b”,第6 個和第8 個句子的標簽設(shè)置為“b”“i”,其他非重要句子標“o”。
抽取式摘要模型的結(jié)構(gòu)如圖2 所示,分為句子嵌入和文檔級編碼器。句子嵌入采取BERT 模型,文檔級編碼器基于多層Transformer 結(jié)構(gòu),最后接入全連接層,將每個句子分成3 類標簽。
圖2 抽取式摘要模型的結(jié)構(gòu)Fig.2 Structure of extractive summarization model
3.1.1 句子嵌入
BERT 模型通過大量語料的自監(jiān)督學(xué)習(xí)包含豐富語義信息的詞表示,在文本分類任務(wù)中常使用“[CLS]”位置的輸出向量作為文本表示,用于下游具體任務(wù)。在文本分類任務(wù)中,通常在每個句子前后插入“[CLS]”和“[SEP]”,然后拼接所有句子作為BERT 編碼器的輸入。但是,CAIL2020 語料中文書字數(shù)遠超過BERT 單次處理的序列長度,詞的切分和特殊字符的引入導(dǎo)致輸入序列增長和顯卡內(nèi)存不足。
本文單次處理一個句子并緩存“[CLS]”位置的輸出向量Tj,[CLS],文書第L個句子向量序列表示為T[CLS]={T1,[CLS],T2,[CLS],…,TL,[CLS]}。該方式能夠有效減小內(nèi)存,缺點是句子編碼器無法進行微調(diào)。
3.1.2 句子分類器
在抽取式摘要中,句子的文檔級編碼方式比較常見,但此處獲得句子表示是句子級編碼,不包含上下文信息,只包含句子本身的信息,因此將句子向量表示輸入到文檔級編碼器中。文檔級編碼器基于Transformer 結(jié)構(gòu),通過全連接網(wǎng)絡(luò)分類器對句子的文檔級表示向量進行分類。在“集合-全文”的模型中使用二分類,而在“集合-句子”的分段式摘要模型中輸出實體標簽“b”“i”“o”3 個標簽,通過標簽序列獲得句子索引的子序列集合,例如,根據(jù)標簽“{b,o,i,b,o,b}”可以得到抽取式摘要集合“{{0,2},{3},{5}}”。每個句子標簽的概率如式(1)所示,分類指標的損失函數(shù)如式(2)所示:
其中:Zj=0,1,j={0,1,2}。
指針生成器網(wǎng)絡(luò)能夠很好地復(fù)述事實,適用于文本摘要任務(wù),通過計算輸入序列的注意力得分,采用基于時間步的內(nèi)注意力機制(Intra-Temporal Attention)[21]和解碼器內(nèi)的注意力機制(Intra-Decoder Attention)[22]減少輸出序列的重復(fù)。
3.2.1 指針生成器網(wǎng)絡(luò)
在編碼端,將長度為L的序列S={s1,s2,…,sL}的詞向量輸入到雙向長短期記憶(Bi-directional Long Short-Term Memory,BiLSTM)網(wǎng)絡(luò)中,將第i個位置的隱藏層向量拼接后作為編碼器的輸出,如式(3)所示:
在解碼端,式(4)表示LSTM 為主體構(gòu)成的解碼器(g函數(shù)表示解碼器的計算過程),在t時刻接收包括上一時刻隱藏層的輸出ht-1和ct-1、輸出結(jié)果yt-1的詞嵌入,以及編碼器在上一時刻隱藏層向量加權(quán)和,當前時刻的隱藏層輸出ht和ct。輸入序列中第i個詞的注意力權(quán)重值如式(5)~式(6)所示,編碼器當前時刻隱藏層的加權(quán)和如式(7)所示:
其中:W1、W2為參數(shù)可更新的矩陣;V0為參數(shù)可更新的行向量。
詞表概率Pvocab和詞表概率的權(quán)重pgen如式(8)和式(9)所示,Pvocab和原文的詞概率加權(quán)和得到最終拓展后的詞表概率Pexp,如式(10)所示:
3.2.2 時間步內(nèi)注意力機制
為解決長文本的重復(fù)問題,本文基于時間內(nèi)的注意力機制,使得解碼器在每個時刻關(guān)注輸入序列的不同部位。注意力得分計算公式如下:
3.2.3 解碼器內(nèi)注意力機制
雖然基于時間步的注意力機制可以使解碼器在不同時刻關(guān)注輸入序列的不同部位,但是如果解碼器自身的隱藏層在上一時刻的輸出和此時刻相似,存在生成重復(fù)序列的可能。因此,本文通過解碼器所有隱藏層輸出向量計算注意力,并求加權(quán)和作為t時刻輸入的方式,其計算過程如下:
其中:W’和W為可更新參數(shù)的矩陣;V’為可更新參數(shù)的行向量。
3.2.4 損失函數(shù)
在訓(xùn)練階段,參考摘要在該時刻出現(xiàn)的字為wt,t時刻輸出的拓展詞表概率為Pexp(wt),損失函數(shù)如式(16)所示,對所有時刻的損失函數(shù)求平均值得到最終的損失函數(shù),如式(17)所示:
在抽取式摘要模型中BERT 模型采用追一科技有限公司推出的以詞為單位的預(yù)訓(xùn)練模型WoBERT,使用d層Transformer 結(jié)構(gòu),其中全連接層的隱藏層為2 048,注意力層為8,輸出全連接層的隱藏層為128。RNN 編碼器-解碼器的隱藏層均為256,以字為單位構(gòu)建詞表的大小為4 847,采用隨機初始化方式進行字嵌入。在“集合-全文”語料上最大編碼長度設(shè)置為1 370,最小解碼長度設(shè)置為330,“集合-句子”語料最大編碼長度和最小解碼長度分別設(shè)置為360、120,均能滿足95%左右的輸入序列和輸出序列的長度要求,采用束搜索方式進行預(yù)測,Beam Size 設(shè)置為3。所使用的優(yōu)化器均為Adam 優(yōu)化器[23]。抽取式摘要模型和生成式摘要模型的參數(shù)設(shè)置如表1 所示。
表1 抽取式摘要模型和生成式摘要模型的參數(shù)設(shè)置Table 1 Parameter settings of extractive summarization model and generative summarization model
訓(xùn)練集和測試集按照文書類別等比例劃分成8∶2,并在抽取式摘要模型的訓(xùn)練階段中使用訓(xùn)練集的10%用于驗證。由于生成式摘要模型的預(yù)測比較耗時,因此沒有在訓(xùn)練階段進行驗證。
4.2.1 評價指標
大多數(shù)分類系統(tǒng)通常使用精確率(Precision)、召回率(Recall)及F1 值(F1-score)作為評價指標,如式(18)~式(20)所示:
真實正例的集合用S表示,預(yù)測為正例的集合用S*表示。預(yù)測正確的正例表示S和S*中同時存在的元素,預(yù)測錯誤的負例表示S中不存在而S*中存在的元素,預(yù)測錯誤的正例表示S中存在而S*中不存在的元素,它們的數(shù)量分別用TTP、FFP、FFN表示。
本文以參考摘要作為基準評價系統(tǒng)摘要質(zhì)量的評價指標ROUGE[24](Recall-Oriented Understudy for Gisting Evaluation),其是一種常用的文本摘要評價指標。ROUGE-N的召回率如式(21)所示:
其中:gramN表示文本中長度為N的連續(xù)子串;分母為所有參考摘要的所有N-gram 的數(shù)量。PredSums表示模型預(yù)測的摘要,RefSums 表示預(yù)測摘要與參考摘要共現(xiàn)的N-gram 的數(shù)量。精確率的計算如式(22),ROUGE-L的計算如式(23)~式(24)所示,LCS 函數(shù)表示2 個序列最長公共子串的長度,len 函數(shù)為序列總長度,2 類指標的F1 值如式(25)所示:
為探究抽取式摘要模型對信息識別準確性及生成結(jié)果的影響,本文分別用Z和Z*表示真實集合和預(yù)測集合。假設(shè)真實抽取結(jié)果為{{0},{3,5},{10,12,13}},預(yù)測結(jié)果為{{0},{4,5},{10,12,13}}。評價指標主要有2 個:1)exact_match,評價模型識別完整的句子集合的能力,例如,{0}和{10,12,13}存在于Z和Z*中,TP 等于2;2)all,評價模型識別單個句子的能力,分別取Z和Z*中所有集合的并集來替換真實和預(yù)測集合,例如,Z={0,3,5,10,12,13},Z*={0,4,5,10,12,13},TP 等于5。
4.2.2 生成式摘要模型的結(jié)果分析
本文采用2.2 節(jié)的方法處理數(shù)據(jù),將原來重要句子的集合分為若干組,其中有2 例摘要句子數(shù)目少于標有重要標簽的數(shù)目,因此他們無法處理而舍棄。處理前后語料的ROUGE 指標對比如表2 所示。
表2 處理前后語料的ROUGE 指標對比Table 2 ROUGE indexs comparison of the corpus before and after processing %
處理前語料是句子集合拼接的序列和摘要全文的ROUGE 指標,處理后語料是計算單句摘要和對應(yīng)一組句子集合拼接而成序列的指標。處理后語料的召回率比處理前下降比較多,這是由于有些句子劃分到錯誤的一組中或者摘要和文書沒按照同一順序敘述。
為對比序列長度對生成模型的影響,在“句子集合-摘要全文”“句子集合-摘要句子”語料上生成式摘要模型的ROUGE 指標如表3 所示。
表3 在“集合-全文”和“集合-句子”語料上生成式摘要模型的ROUGE 指標Table 3 ROUGE indexs of generative summarization model on"collection-full text"and"collection-sentence"corpus %
本文將在“集合-句子”語料上生成來源于同一文書的摘要句子拼在一起后與“集合-全文”上的結(jié)果進行對比。從表3 可以看出,在“集合-句子”語料上訓(xùn)練模型的指標均優(yōu)于“集合-全文”語料,而且在“集合-句子”語料中有一部分參考摘要和原文句子的組合不匹配,因此,在CAIL2020 數(shù)據(jù)集上該模型能夠有效縮短生成模型的輸入輸出序列長度。
4.2.3 流水線模型結(jié)果分析
抽取式摘要模型的分類指標如表4 所示,不同模型的輸出摘要與參考摘要間的ROUGE 指標如表5 所示。
表4 抽取式摘要模型的評價指標Table 4 Evaluation indexs of extractive summarization models %
表5 不同模型的ROUGE 指標Table 5 ROUGE indexs of different models %
本文baseline 模型是Lead-3,即取輸入文檔的前3 句作為摘要?!癇ERT+Trm4(3)”表示使用BERT 作為句 子嵌入和4 層Transformer 結(jié)構(gòu),“3”和“2”分別代表三分類(“bio”標簽的形式)和二分類(即是否標有“重要”標簽)?!癱rf”表示引入條件隨機場(Conditional Random Field,CRF)[25]。“PG”表示將抽取的結(jié)果輸入到指針生成器網(wǎng)絡(luò)中,上標“0”和“1”表示在“集合-全文”和“集合-句子”的語料訓(xùn)練的模型。
在該數(shù)據(jù)集上Lead-3 模型的性能較差,其原因為相比新聞文檔,法律文書的關(guān)鍵信息一般在末尾或者分布比較均勻。在“exact_match”指標下,在Lead-3 模型上增加CRF,其精確率、召回率及F1 下降。在“all”指標下,“BERT+Trm4(2)”的召回率最高,其次是“BERT+Trm4(3)+crf”。BERT+Trm4(2)+PG0模型抽取的句子最全,其ROUGE-1、ROUGE-2、ROUGE-L的平均值為62.40%,而BERT+Trm4(3)+crf+PG1模型ROUGE-1、ROUGE-2、ROUGE-L的平均值為64.11%,比前者提高了1.69 個百分點。因此,在抽取過程中ROUGE 指標的召回率下降表示在內(nèi)容過程中部分信息被遺漏,提高召回率,使得流水線模型的總體表現(xiàn)提高。在生成的過程中舍棄部分冗余或者不重要的信息,以提高精確率。
本文提出一種基于序列標注的分段式摘要模型。通過將CAIL2020 轉(zhuǎn)換成分段式的摘要抽取數(shù)據(jù)集,將“bio”實體識別標簽用于句子抽取和段落劃分,縮短生成模型的輸入序列長度。實驗結(jié)果表明,該模型在處理生成句子上ROUGE-1、ROUGE-2 和ROUGE-L的F1 平均值為64.11%。后續(xù)將基于流水線式摘要的架構(gòu),不依賴語料本身的結(jié)構(gòu)特點,圍繞抽取句子分組問題開展研究。