崔 斌, 鄒 蕾, 徐明月
(北京京航計算通訊研究所信息工程事業(yè)部, 北京 100074)
違法事實要素作為訴訟案件的關(guān)鍵要素之一,影響著對案件進行決策的效率。違法事實要素抽取可以協(xié)助高檢人員從海量訴訟案件中快速有效提取出違法事實,以用于案情摘要、可解釋性的類案推送以及相關(guān)知識推薦等司法領(lǐng)域的實際業(yè)務(wù)需求中,并可以為高檢人員提供參考,以推動案件辦理流程,加快處理速度。通常情況下,要素抽取問題[1-4]可以轉(zhuǎn)化為文本分類[5-8]。
早期的研究工作大都采用基于統(tǒng)計規(guī)則的文本分類方法來進行相關(guān)要素抽取,如王亞坤等[9]提出一種級聯(lián)模型并通過手動建立規(guī)則的方法對相關(guān)事實要素進行抽??;程良等[10]通過依存樹與規(guī)則相結(jié)合的方法提取語句關(guān)鍵要素。該類方法可以有效提高抽取效果,但需要人為建立規(guī)則,使得抽取效果受人為因素影響較大。隨著機器學習的發(fā)展,越來越多的學者開始將其用于要素的抽取過程,如Li等[11]提出一種基于馬爾科夫邏輯網(wǎng)絡(luò)方法并將其用于民事訴訟案件的決策中,該方法可以有效抽取出相關(guān)要素;文獻[12]對事實要素進行擴充,比如添加了雙方是否有不良習慣、庭外調(diào)解是否有效等,事實要素越全面,就更加符合實際情況。但是該類方法主要適用于訓練語料規(guī)模較小且要素種類較少的情況。針對上述方法存在的高度依賴人工制訂規(guī)則模板,只局限于少量數(shù)據(jù)的問題,很多學者提出將深度學習方法用于相關(guān)要素抽取工作中,如劉宗林等[13]提出一種基于雙向長短時記憶(bi-long short term memory,Bi-LSTM)模型[14]對法條和罪名要素進行抽取,完成了司法領(lǐng)域的要素抽取工作,利用word2vec[15]得到詞向量,采用Bi-LSTM循環(huán)網(wǎng)絡(luò)模型進行深度編碼,在對文本進行編碼時考慮上下文信息,得到文本表示并抽取出法條和罪名要素。該類方法相比傳統(tǒng)機器學習方法抽取效果有較大的提高。但是,此類方法采用word2vec模型得到的詞向量是固定的,不能跟隨上下文語境進行改變,所以不具備詞義消歧能力,影響了最終的抽取效果。為了提高抽取效果,有學者提出了基于BERT的增強型(BiLSTM conditional random field,BiLSTM-CRF)模型[16],來對推文惡意軟件名稱進行抽取,相比基于word2vec的詞向量編碼方法,該方法借助雙向編碼器表示(bidirectional encoder representations from transformer, BERT)預(yù)訓練模型[17],獲得了具有語義消歧能力的增強型抽取模型,提高了抽取效果。然而,對訴訟案件違法事實要素抽取效果往往依賴相關(guān)領(lǐng)域內(nèi)知識,BERT作為一種預(yù)訓練模型,可以將豐富的領(lǐng)域知識輸入到后續(xù)模型訓練中用來提高抽取結(jié)果。
綜合以上分析,針對訴訟案件違法事實要素抽取效果依賴領(lǐng)域內(nèi)知識的問題,現(xiàn)提出一種基于BERT的訴訟案件違法事實要素抽取方法,通過領(lǐng)域內(nèi)知識對BERT模型進行預(yù)訓練可以將其融入到模型中,使得模型參數(shù)對訴訟案件數(shù)據(jù)變得更為擬合。同時,模型采用BERT來獲得詞向量,具備詞義消歧能力,以期提高抽取效果。最后,采用循環(huán)卷積神經(jīng)網(wǎng)絡(luò)(BiLSTM convolutional neural networks, BiLSTM-CNN)[14,18]對文本進行編碼并獲取在文本分類任務(wù)中扮演關(guān)鍵角色的信息并完成違法事實要素抽取。
訴訟案件違法事實要素抽取模型結(jié)構(gòu)如圖1所示,主要包括BERT模型預(yù)訓練模塊、訴訟案件特征提取模塊(包括BERT文本表示、BiLSTM-CNN特征提取)和模型輸出模塊三個部分組成。
E1,E2,…,EN為監(jiān)督數(shù)據(jù)的向量化表示;T1,T2,…,TN為經(jīng)過BERT模型的輸出
對于訴訟案件,采用領(lǐng)域內(nèi)的無監(jiān)督數(shù)據(jù)對BERT模型進行預(yù)訓練。將原始訴訟案件數(shù)據(jù)經(jīng)過分句處理,每一個句子作為預(yù)訓練階段的輸入,經(jīng)過掩碼語言模型(mask language model,MLM)和下一句預(yù)測(next sentence prediction,NSP)任務(wù)預(yù)測[17],訓練得出相關(guān)模型參數(shù)。其結(jié)構(gòu)框圖如圖2所示。
圖2中,輸入的無監(jiān)督數(shù)據(jù)用Z1,Z2,…,ZN表示,經(jīng)過詞嵌入向量化輸出為I1,I2,…,IN[式(1)]。經(jīng)過BERT預(yù)訓練模型的輸出為T1,T2,…,TN。
圖2 經(jīng)過MLM和NSP兩個任務(wù)預(yù)測輸出模型的參數(shù)Fig.2 The parameters of the output model predicted after MLM and NSP
BERT通過MLM任務(wù)進行預(yù)訓練,即在一句話中掩蔽掉幾個單詞,然后通過上下文對掩蔽掉的單詞進行預(yù)測。假設(shè)無監(jiān)督領(lǐng)域內(nèi)數(shù)據(jù)用Z1,Z2,…,ZN表示,經(jīng)過向量化輸出為I1,I2,…,IN[由式(1)得到]。這個嵌入過程包括三個部分:詞嵌入Ke(token embeddings),分割信息嵌入Se(segment embeddings),位置信息的嵌入Pe(position embeddings)。詞嵌入Ke是對輸入的每一個字信息Ze(1≤e≤N)進行編碼,分割信息嵌入Se是對分割信息Fe進行編碼,位置信息嵌入Pe是對位置的信息We進行編碼。對無監(jiān)督數(shù)據(jù)的向量化表示過程如圖3所示。
圖3 無監(jiān)督數(shù)據(jù)的向量化表示Fig.3 Vectorization representation of unsupervised data
由圖3可得最終BERT編碼器的輸入信息Ie可表示為
Ie=Ke+Se+Pe
(1)
式(1)中:
Ke=Ze×W1
(2)
Se=Fe×W2
(3)
Pe=We×W3
(4)
式中:W1、W2、W3為可以訓練的參數(shù)。
同理,BERT對監(jiān)督數(shù)據(jù)的向量化表示為Ee,其原理與圖3類似。
訴訟案件特征提取模塊包括BERT對訓練過程中的監(jiān)督數(shù)據(jù)進行文本表示和BiLSTM-CNN特征提取兩部分構(gòu)成。BERT主要采用多層多個Trm(transformer)模塊對文本進行編碼,對于每一個Trm,輸入監(jiān)督數(shù)據(jù)的嵌入信息Ee,由“多頭注意力網(wǎng)絡(luò)”和“前饋神經(jīng)網(wǎng)絡(luò)及正則化”兩部分構(gòu)成,Trm的結(jié)構(gòu)如圖4所示。
圖4 Trm 結(jié)構(gòu)圖Fig.4 Structure of Trm
1.2.1 多頭注意力網(wǎng)絡(luò)
其中多頭注意力網(wǎng)絡(luò)是由多個“頭”組成的網(wǎng)絡(luò),對于一個“頭”,其結(jié)構(gòu)圖如圖5所示,輸出hi為
圖5 單頭注意力機制Fig.5 Single-headed attention mechanism
hi=attention(Qi,Ki,Vi)=
(5)
MultiHead(X)=Concat(h1,h2,…,hN)Wo
(6)
式(6)中:Wo為網(wǎng)絡(luò)里可以訓練的參數(shù)。
1.2.2 前饋神經(jīng)網(wǎng)絡(luò)及正則化
在多頭注意力機制之后,文中采用前饋神經(jīng)網(wǎng)絡(luò)來防止網(wǎng)絡(luò)中產(chǎn)生“退化”問題,由兩層線性的ReLU函數(shù)構(gòu)成,輸出FFN(x)為
FFN(x1)=max(W4x1+b1,0)W5+b2
(7)
式(7)中:x1為公式中的MultiHead(X);W4、W5、b1、b2為網(wǎng)絡(luò)中可以訓練的參數(shù)。
對FFN(x)進行正則化操作,設(shè)輸出h′f為
為考察該方法用于實際樣品中Hg2+檢測的性能,人體尿液為檢測對象構(gòu)建檢測體系。實驗采用加標法,向離心管中加入4 μL的本底尿液,然后加入不同濃度的汞離子溶液,反應(yīng)溶液中的汞離子濃度分別為15 pmol/L、20 pmol/L、50 pmol/L。結(jié)果如表2所示,檢測尿液樣品的平均回收率為97.6%~103.7%之間,RSD在1.7%~3.1%之間;說明設(shè)計的傳感器可用于尿液樣本中的汞離子檢測,具有較好的準確度。
h′f=LN[FFN(x1)]=LN[max(W4x1+b1,0)W5+b2]
(8)
式(8)中:LN(layer normalization)為正則化函數(shù)。
1.2.3 循環(huán)卷積神經(jīng)網(wǎng)絡(luò)
h″j=BiLSTM[h′f]
(9)
之后將其輸入給CNN單元,提取關(guān)鍵信息kj為
kj=CNN(h″j)
(10)
(11)
采用focal loss[19]作為模型的損失函數(shù),表達式為
(12)
數(shù)據(jù)來自“裁判文書網(wǎng)”的公益訴訟類型數(shù)據(jù),以公益訴訟案件中的食品安全案件為例,經(jīng)過數(shù)據(jù)預(yù)處理,得到訓練集869條數(shù)據(jù),開發(fā)集192條數(shù)據(jù),測試集208條數(shù)據(jù)。請法律專業(yè)博士生對數(shù)據(jù)集的要素標簽進行標注,其中相關(guān)事實要素標簽有20種。部分數(shù)據(jù)如表1所示。
表1 數(shù)據(jù)集舉例Table 1 Example of data set
以精確率P、召回率R、F1和準確率A為評價指標。
(13)
(14)
(15)
(16)
式中:TP、FP、TN、FN分別為正類判定為正類、負類判定為正類、負類判定為負類、正類判定為負類。
實驗采用python語言進行編程,采用基于tensorflow的框架實現(xiàn)模型架構(gòu),操作系統(tǒng)是Win10, 64位,處理器采用Nvidia 系列GPU 12 GB 顯存。
輸入數(shù)據(jù)集相關(guān)參數(shù)設(shè)置:訓練集批次大小batch_size 32, 驗證集和測試集batch_size 8,最大句子長度設(shè)為128。對于模型主要參數(shù)如表2所示。
表2 相關(guān)參數(shù)設(shè)置Table 2 Related parameter setting
為了驗證本文方法的有效性,實驗中采用Text-CNN、BiLSTM、CNN-BiLSTM、法律判決預(yù)測模(LJP)[20]、BERT-FC進行實驗。
2.3.1 各模型結(jié)果對比
表3是各種方法對比結(jié)果,從中可以得出兩個結(jié)論。一是本文方法相比其他方法,無論是否經(jīng)過預(yù)訓練,在各指標上,取得了一致性的結(jié)果,均優(yōu)于其他方法。本文方法相比表現(xiàn)最好的 (BERT fully-connect,BERT-FC)方法,未經(jīng)過預(yù)訓練和經(jīng)過預(yù)訓練,在F1指標上,分別提高了1.31%和1.27%,原因在于本文方法在用BERT得到向量文本表示后,又添加了BiLSTM-CNN對文本進一步進行編碼并提取出對后續(xù)分類任務(wù)中具有影響力的關(guān)鍵詞語,捕捉到了文本中的關(guān)鍵信息,以此信息作為分類依據(jù),可以提高分類結(jié)果。本文方法和BERT-FC方法相比,其他基于詞嵌入編碼的方法(Text-CNN,BiLSTM,CNN-BiLSTM,LJP),在F1指標上也均有了較大的提高,說明基于BERT的編碼方法,要優(yōu)于基于詞嵌入的編碼方法,原因在于BERT在對字或者詞進行編碼時,考慮到了上下文的關(guān)系,可以解決“一詞多義”問題,可以根據(jù)上下文情況不同,靈活對當前字或者詞進行理解,這樣得到的編碼更符合現(xiàn)實,以此為依據(jù)得到的分類結(jié)果勢必會提高,而基于詞嵌入的編碼方法,對詞的理解是機械性的,沒有考慮到上下文關(guān)系,一個詞往往只賦予一個向量或者一個編碼,不能解決“一詞多義”問題。二是對各方法,經(jīng)過預(yù)訓練的模型較未經(jīng)過預(yù)訓練的模型,各指標均有所提高。比如,經(jīng)過領(lǐng)域內(nèi)預(yù)訓練后,每種方法在F1指標上平均提高了2%,說明對模型進行領(lǐng)域內(nèi)數(shù)據(jù)的預(yù)訓練,可以提升分類任務(wù)結(jié)果。其中的一個原因可能是經(jīng)過訴訟案件領(lǐng)域內(nèi)數(shù)據(jù)的預(yù)訓練,使得模型的參數(shù)與數(shù)據(jù)變得更為“擬合”,利用這種擬合后的參數(shù)再去對案件進行違法事實要素抽取(分類),分類結(jié)果得到提升。為了進一步說明本方法的有效性,對比了不同方法對違法事實要素抽取的準確率,結(jié)果如圖6和圖7所示,圖6是各個方法經(jīng)過預(yù)訓練后抽取準確率,圖7未經(jīng)過預(yù)訓練,對比圖6和圖7可以看出,對于每一種不同的方法,經(jīng)過預(yù)訓練后,均取得了更高的準確率,這也驗證了預(yù)訓練是可以提高抽取結(jié)果的。單獨比較每一種方法,無論是否經(jīng)過預(yù)訓練,本文方法均取得了最高的準確率,分別達到98.80%和96.90%。
圖6 經(jīng)過預(yù)訓練的各方法準確率對比Fig.6 Accuracy of each method after pre-training
圖7 沒有經(jīng)過預(yù)訓練的各方法準確率對比Fig.7 Accuracy of each method without pre-training
表3 各個模型的違法事實要素抽取結(jié)果Table 3 Extraction results of illegal fact elements of each model
2.3.2 focal 損失函數(shù)對比實驗
實驗?zāi)康氖菍Ρ冉徊骒負p失函數(shù)和focal損失函數(shù)對最終分類結(jié)果的影響,分類結(jié)果如表4所示。
表4 不同損失函數(shù)結(jié)果對比Table 4 Comparison of results of different loss functions
從表4可以看出,對于不同編碼方法,采用focal損失函數(shù)比交叉熵損失函數(shù)均取得了較高的分類結(jié)果,前者在F1值指標上,對于Text-CNN、BERTFC、本文方法平均提高了1%,這說明focal損失函數(shù)對于不同難度的類別均有了正確的分類,原因在于采用focal loss函數(shù)時,通過調(diào)整因子γ的取值減少易分類樣本的權(quán)重,使得模型在訓練時更專注于難分類的樣本,從而減少了簡單樣本的影響。這說明focal損失函數(shù)可以處理訴訟案件存在的違法事實要素種類繁多,同時可能存在好幾種,而且每一種要素對應(yīng)的樣本數(shù)量不一樣,存在容易區(qū)分的和難以區(qū)分的類別等問題。
基于BERT的訴訟案件違法事實抽取模型相比傳統(tǒng)模型,抽取效果均有較大的提升。模型融入領(lǐng)域內(nèi)無監(jiān)督數(shù)據(jù),能夠使其參數(shù)更為“擬合”抽取過程的監(jiān)督型數(shù)據(jù),提高抽取效果。BERT對訴訟案件進行編碼,可以解決特征提取中存在的“一詞多義”問題。加入BiLSTM-CNN網(wǎng)絡(luò),能夠抽取出與結(jié)果相關(guān)的關(guān)鍵信息,提高訴訟案件違法事實要素抽取的性能。對于各個模型經(jīng)過預(yù)訓練后,均取得了更高的準確率,說明預(yù)訓練可以提高違法要素抽取的準確率。