施君可
(浙江理工大學 信息學院, 杭州 310018)
近年來,裁判文書結合NLP 衍生出諸多任務,如:類案檢索、信息抽取等,但大多研究均基于刑事案件,缺乏對民事案件領域下的研究。 而且,由于民事案件的判決結果不會出現原告“勝訴、敗訴”等確切字句,只有“支持原告部分請求”、“駁回原告其余請求”等字樣,只能對裁判文書的案件事實進行了傾向性分類。 此外,民間借貸案件存在借貸金額不同、借貸關系復雜等因素,可能還存在“同案不同判”的問題[1],并且相關從事人員不易從大量的文書中尋找到同類別的參考文書。 針對這些狀況,本文基于民間借貸一審判決書數據集,以案件事實作為輸入,通過深度學習技術進行案件事實傾向性類別預測的研究。 本文主要工作如下:
(1)提出了基于Albert-Tiny-DPCNN 的案件事實標簽分類模型。 該模型使用Albert-Tiny 進行詞嵌入,使用DPCNN 的特征提取結構捕獲文本語義,并使用帶類別權重的焦點損失進行模型訓練。 實驗結果表明,相比于對照模型,該模型的準確率與加權F1值更高,準確率能夠達到79.65%。
(2)本文在上述模型的基礎上,采用注意力機制增強特征提取層輸出向量的重要特征、減弱無用特征,使用標簽平滑歸一化方法提升模型的泛化能力,準確率提升到了81.22%,增加了1.97%。
本文研究了近幾年來裁判文書結合深度學習的分類模型的現狀。 王文廣等學者[2]基于HAN 和DPCNN 提出了法律判決預測模型HAC,在刑期預測等各項判決預測任務中表現良好。 王業沛等學者[3]探索了不同層數的LSTM 模型在預測判決結果的傾向性分類時的效果, 發現3 層LSTM 在實驗中準確率較高,但僅使用LSTM 很難凸顯文本的重要信息。 王寧等學者[4]使用基于注意力的BiGRU 模型來預測判決結果的傾向性,實驗發現模型能在一定程度上進行有效預測,但模型的準確率仍有提升空間。 自2018年底始,預訓練模型從最開始的Word2Vec、Glove 過 渡 到 了BERT 系 列、ERNIE、XLNet、MPNet 等模型[5-6]。 目前,預訓練語言模型被廣泛使用在文本分類任務中。 王立梅等學者[7]對比了TextCNN、TextRNN、Transformer、Bert 模型,然后優化了最優模型的嵌入方式。 孟令慈[8]基于Bert-LSTM 模型對刑事案件進行結果分類研究,通過對序列進行編碼和特征融合來獲取類別信息。
本文判決結果傾向性分類模型的主要架構如圖1 所示,主要包括3 個部分:嵌入層的作用是將輸入文本轉為詞向量矩陣,本文比較了Word2Vec[9]與Albert-Tiny[10]在本文任務中的效果;特征提取層是為了提取詞向量矩陣中的語義特征,本文比較了TextCNN[11]、TextRCNN[12]、DPCNN[13]三 種 網 絡 結構對模型的影響;分類層將輸入的神經元數量壓縮至類別個數。 此外,本文對比了交叉熵損失函數和焦點損失函數對模型的影響。

圖1 模型基本框架Fig. 1 Basic structure of the model
本文采用selenium 工具從中國裁判文書官網(https:/ /wenshu.court.gov.cn/)爬取民間借貸一審判決書,并以此構建數據集。 裁判文書的文本格式較為規范,本文通過分析裁判文書的結構,使用正則提取數據中的案件事實(fact)、判決理由(reason)、判決依據(legal)、判決結果(verdict)四個部分。 然后,本文構建了判決結果傾向性類別標簽集合,并結合reason、legal、verdict 的內容進行數據標注,將verdict 轉為數值表示。 標簽集合見表1。

表1 類別標簽集合Tab. 1 Collection of category tags
本文采用Word2Vec 詞向量和Albert 詞向量作為詞嵌入進行實驗研究。 由于文本信息不能直接作為輸入,在詞嵌入操作前需要將文本序列化。 文本序列化,即把詞序列表示成一系列能夠表達文本語義的數字表示,每個數字代表一個詞在詞表中的索引號。 之后,形狀為[L] 的文本序列W經過詞嵌入層后會轉換成形狀為[L,D] 的詞嵌入矩陣E,L為文本序列長度,D為詞向量維度,wi表示輸入文本序列中的第i個詞在詞表中的索引,e(wi) 表示詞表中索引為wi的詞對應的詞向量,如式(1)所示:
基于此,進一步展開研究分述如下。
(1)Word2Vec。 Word2Vec[9]把所有詞語投影到K維的向量空間,將文本內容的處理簡化為K維向量空間中的向量運算。 本文使用jieba 工具對案件事實進行分詞,并去除了無關字符與常用停用詞。其次,本文使用分詞去停后的案件事實構建語料庫,使用gensim 開源工具Word2Vec 的skip-gram 算法訓練W2V 詞向量表。 接著,將分詞去停后的案件事實詞序列進行文本序列化處理[4],并統一文本長度為150。 最后,本文用文本序列和W2V 詞向量表實現靜態詞嵌入。
(2)Albert-Tiny。 本文使用了Albert-Tiny 進行下游任務的微調,為保證輸入文本相同,模型的輸入為分詞去停后的案件事實。 首先,本文使用繼承了transformers 的BertTokenizer 的Tokenizer 實現文本序列化。 接著,統一文本序列化長度為300,對超出298 的數據進行截斷,在文本序列首部添加類別符號‘[CLS]’,在尾部添加結束符號‘[SEP]’,并對不足的文本序列進行填充。 最后,使用transformers的AlbertModel 進行下游任務微調,得到需要的AlbertTiny 詞向量。
目前,文本分類模型多種多樣,本文主要探索了TextCNN[11]、TextRCNN[12]、DPCNN[13]三 種 特 征 提取結構在模型中的表現效果。 其中,TextCNN 使用不同大小的卷積核來捕獲輸入文本對應的詞向量矩陣中相鄰詞匯之間的特征信息。 因卷積核尺寸通常不會很大,使得TextCNN 無法捕獲長距離信息,故該模型較為適合中短文本場景,并不適合長文本。TextRCNN 使用雙向長短期記憶網絡獲取輸入文本的上下文信息,并通過最大池化篩選出最重要的特征,能夠獲取長距離依賴。 DPCNN 通過增加感受野來緩解長距離依賴問題,主要用區域卷積增加模型可編碼的輸入文本長度,并通過殘差結構增加網絡深度來緩解梯度彌散問題。
寧都縣是贛南臍橙主產區之一,臍橙種植面積1.33萬hm2,年產量臍橙達60多萬t,遠銷國內外。寧都臍橙平均產量可達3 000 kg/667 m2以上,平均產值可達1.2萬元/667 m2以上,經濟效益非常可觀,是目前贛南臍橙適種區內產業扶貧中最好的一個項目。柑桔紅蜘蛛暴發常造成臍橙減產以及臍橙樹勢虛弱,為害嚴重時造成臍橙逐漸死亡。
分類層采用全連接網絡結構來提取特征間的關系,該層的輸入為特征提取層后的文本語義向量,輸出為每個類別的概率,如圖2 所示。 圖2 中,第一層全連接的維度形狀為1?n,第二層全連接的維度形狀為1?(n/2), 輸出層(即最終結果輸出的網絡層)形狀為1?C的分類結果,這里C為類別標簽的數量,該輸出向量通過softmax分類器后得到的可能性最高的類別即為預測的類別。 除輸出層外的2個全連接層采用了LeakReLu激活函數。 另外,可根據訓練效果來決定是否對全連接的輸出結果進行批歸一化處理。

圖2 分類層結構Fig. 2 Classification layer structure
本文的標簽分類任務屬于多分類問題,故模型的最后一層應使用softmax函數進行歸一化,并在計算真實標簽與預測結果之間的損失值時以softmax結果中概率最高的類別為預測標簽。 本文對比了Pytorch框架中的交叉熵損失(CrossEntropyLoss)函數以及自定義的焦點損失函數(FocalLoss)在模型訓練中的表現效果,并在訓練過程中增加類別權重w來緩解類別不平衡問題。 由于上述的損失函數內部已使用softmax分類器,故本節模型的最后一層不必再使用softmax進行歸一化。 這里,給出帶類別權重的交叉熵損失函數見式(2):
其中,N是批大小;Xn是批中第n條數據的預測標簽值,xn,i為第n條數據的第i類別的預測概率;Yn是批中第n條數據的真實標簽,yn,i為第i類別的真實標簽值,只有一個類別為1,其余類別為0;C是類別數目;LCE為N條數據的交叉熵損失均值;wi是第i類別的類別權重。 接下來,給出焦點損失函數[14]見式(3):
其中,N、Xn、xn,i、Yn、yn,i、C的含義與式(2)相同;LF為N條數據的焦點損失均值;pn(Xn,Yn) 表示第n條數據預測的各類別輸出為1 的概率;αt是權重因子;γ∈ [0,5] 是聚焦參數。 本文中將超參αt替換為類別權重數組來緩解類別不均衡問題。
本文使用的操作系統環境為Ubuntu18.04,硬件環境為Intel Xeon Platinum 8163(Skylake) 2.5 GHz,內存為92 GB,GPU 為1 ?Tesla V100 NVLink-32 G,python 集成平臺Anaconda3,采用的Deep Learning框架為pytorch,使用的依賴有:numpy、pandas、regex、 jieba、 gensim、 scikit - learn、 pytorch、transformers、matplotlib、tensorboard。
本文通過爬蟲在中國裁判文書網收集相關的民事一審判決書,使用數據篩選過后留下30000條數據來進行實驗研究,并按6 ∶2 ∶2 的比例劃分訓練集、驗證集、測試集。
本文的數據集共有7 個類別,但各類別的樣本數量分布并不均勻,分別為{600,100,11300, 480,70, 15950, 1500},故對于該問題,本文在模型訓練過程中使用了帶類別權重的損失函數,類別權重W的計算方式具體如下:

表2 對比模型實驗中的參數表Tab. 2 Parameters in the comparative model experiment
本 文 采 用 準 確 率(accuracy)、 加 權F1值(Weighted -F1) 作為結果傾向性預測模型的評價指標。 準確率計算方法公式具體如下:
其中,Nright,Nwrong分別表示預測正確、錯誤的數量。
加權F1值可以用作多分類問題的評價指標之一,可以減輕數據不平衡帶來的影響。 加權F1值考慮了樣本不均衡的原因, 在計算查準率(Precisionweighted) 和召回率(Recallweighted) 時,需要各個類別的查準率(precision) 和召回率(recall) 乘以該類在總樣本中的占比來求和。 而加權F1值為Precisionweighted和Recallweighted的調和平均數,詳見式(6)~式(10):
其中,TPi表示真實類別為第i類、且被模型判定為第i類的樣本數;FPi表示真實類別非第i類、且被模型判定為第i類的樣本數;FNi表示真實類別為第i類、且被模型判定為非第i類的樣本數;
本文比較了不同的詞嵌入方式、特征提取方式、損失函數相互組合的模型在訓練時的表現效果,結果見表3。 表3 中,W2V 表示Word2Vec 嵌入方式,TextCNN、TextRCNN、DPCNN 為特征提取方式,CEL表示交叉熵損失函數、FL 表示焦點損失函數。
從表3 的實驗數據可知,與交叉熵損失函數相比,焦點損失函數能夠在一定程度上提高模型準確率。 相比于Word2Vec 靜態詞向量,AlBert-Tiny 詞向量的嵌入效果更好,能更好地學習詞之間的關系,使得特征提取層輸出的特征向量包含更多的文本語義信息。 特征提取層使用的網絡結構中,DPCNN 的效果相對較好,能更準確地捕獲文本特征。

表3 對比模型的準確率與加權F1值Tab. 3 Comparing the accuracy and the weighted-F1value of the model
上述實驗中,模型AlBert-Tiny +DPCNN 在對比實驗中的準確率最高,基于該模型,本文進行了變體測試與參數實驗。 變體測試主要包括2 個方向:對特征提取層輸出的文本特征向量進行注意力加權、標簽平滑歸一化。 接下來,可做闡釋表述如下。
(1)Albert-Tiny +DPCNN:對比實驗中表現最優的模型。
(2)Albert-Tiny +DPCNN +LSR:LSR 表示標簽平滑歸一化[15],該技術通過平滑歸一化方法擾動真實標簽來解決過度擬合的問題。 對標簽的具體處理詳見式(11):
(3)Albert-Tiny +DPCNN+Att:注意力原理不依賴于任何框架,本文搭建了2 層全連接層的Att注意力模塊,通過該模塊來捕獲重要特征,減小無用特征,提升特征提取層的文本語義表征能力。 具體如圖3 所示。

圖3 特征提取層使用的注意力模塊Fig. 3 Attention module
(4)Albert-Tiny +DPCNN+Att+LSR:結合了(2)、(3)中的Att 與LSR 兩種方式。
表4 為變體模型的對比實驗結果,從中可以得到以下結論:

表4 Albert-Tiny+DPCNN 及其變體的準確率與加權F1值Tab. 4 Accuracy and weighted-F1value of Albert-Tiny+DPCNN and its variants
(1)在特征提取層中使用注意力機制在一定程度上可以提高模型準確率,增強特征提取層的文本語義提取效果。
(2)標簽平滑正則化在一定程度上增強了模型泛化能力,加快了模型的收斂。 圖4(a)、圖4(b)分別為模型訓練過程中準確率與加權F1的變化曲線,明顯可見使用Albert-Tiny 進行詞嵌入時,在epoch等于4 或5 時能達到較好效果。

圖4 準確率與加權F1值變化曲線Fig. 4 Change curve of accuracy and weighted -F1value
圖5 (a)、圖5(b)分別記錄了Albert-Tiny +DPCNN +Att +LSR 的準確率Acc與加權F1值(Weighted- F1) 隨標簽平滑歸一化參數alpha、隨機失活層的失活系數beta的變化過程。 標簽平滑歸一化參數alpha能夠用來提高模型的泛化能力,從圖5(a)可見,當alpha在0.2 附近時,模型的表現效果較好。 隨機失活系數beta是防止過擬合的優化參數,并從圖5(b)中可知,當alpha =0.2、beta值在0.5附近時,模型的表現效果較好。

圖5 準確率與加權F1值隨alpha、beta變化的曲線Fig. 5 The curve of accuracy and weighted-F1values changing withalphaandbeta
本文提出了基于Albert-Tiny-DPCNN 的分類模型,并將其應用于案件事實標簽預測任務。 該模型以案件事實為輸入,以判決結果的傾向性類別為真實標簽,通過對案件事實進行單標簽多分類來實現類別預測。 基于民間借貸一審判決書數據集的實驗結果證明,本文提出的模型準確率能夠達到79.65%,高于其他對照組。 此外,本文使用注意力機制加強了重要特征信息,減小了噪聲與無用特征的影響,并用標簽平滑歸一化提升模型泛化能力,模型的準確率達到了81.22%,提升了1.97%。
雖然,本文提出的模型在實驗數據集上擁有較好的表現,但若想在實際應用場景中使用依舊存在以下改進之處。 第一,深度學習中的網絡模型需要大量數據的支撐,本文數據集的樣本數量亟待擴充,模型泛化能力有待加強;第二,目前,NLP 領域中除Albert 外還有ELMO、MPNet 等預訓練語言模型,因此下一步工作可以嘗試深入探討其他模型,另外采用多特征融合或結合傳統機器學習的方法可能取得不錯的效果。