【論文】Legal Judgment Prediction via Topological Learning

摘要

  1. Legal Judgment Prediction (LJP) : 基於案件的事實來預測審判結果。
  2. 法律審判由多個子任務組成: the decisions of applicable law articles(可用法條), charges(罪名指控), fines(罰金), and the term of penalty(處罰).
  3. 存在問題:現有的工作僅僅關注 judgment Prediction(審判預測)中的特定的子任務,而忽略了子任務之間的拓撲依賴關係
  4. 解決方法:本文將子任務之間的依賴視爲有向無環圖(DAG),並提出一個拓撲的多任務學習框架(TOPJUDGE),該框架將多任務學習和DAG依賴融入到judgment Prediction中。
  5. github:https://github.com/thunlp/TopJudge

1、Introduction

  • Legal Judgment Prediction (LJP) :根據事實描述對法律案件預測審判的結果。是法律輔助系統中一項關鍵的技術。
  • 作用:爲不熟悉法律術語和複雜的審判程序的羣衆提供低花費且高質量的法律諮詢服務;不僅能夠提高法律專業人士的工作效率、給予更加專業的法律建議。
  • 現狀:大多數現有的工作將 LJP 當作 文本分類任務(text classification task)——設計有效的特徵、使用先進的NLP技術。
  • 現有兩大問題
    • Multiple Subtasks in Legal Judgment:現有工作通常關注審判中的某個特定的子任務,不適用於真實場景;雖然,有工作同時預測 law articles 和 charges,但這些模型是爲具體的一系列子任務設計的,難以擴展到其他子任務。
    • Topological Dependencies between Subtasks:子任務之間存在嚴格的順序,如圖1所示。具體流程:給定某案件的事實描述,大陸法系的法官首先確定與案件相關的法條(law articles),然後根據相關法條的說明確定指控罪名(charges);基於上述結果,法官進一步確定處罰(penalty)和罰金(fines)。如何模仿法官的邏輯並建模子任務指甲剪的拓撲依賴將極大地影響審判預測的可信度和可解釋性(creditability and interpretability)。
      在這裏插入圖片描述
    • 由於特定任務的限制和忽視拓撲依賴性(the limitation of specific tasks and neglecting topological dependencies),傳統工作無法解決這兩個挑戰。
  • 文本方法:使用一個有向無環圖(Directed Acyclic Graph,DAG)定義子任務之間的拓撲性的依賴關係,並提出一個統一的框架TOPJUDGE。具體來講,給定事實描述的編碼表示,TOPJUDGE根據拓撲順序預測所有子任務的輸出,並且某個特定子任務的輸出將會影響其被依賴的子任務。
  • 貢獻
    • 第一個將LJP的多個子任務統一到一個學習框架,此外,將LJP的子任務之間的依賴建立成DAG的形式並利用先驗知識提升審判預測。
    • 提出統一多子任務的TOPJUDGE框架,和通過topological learning的審判預測。該模型可處理任何DAG依賴的子任務。
    • state-of-the-art 的結果

2、Related Work

2.1 Judgment Prediction

早期工作:通常側重於使用數學和統計算法分析特定場景中的現有法律案例;

機器學習和文本挖掘技術 :將其視爲文本分類問題,

  • 關注:從文本內容或案例註釋(e.g., dates, terms, locations, and types)中提取有效的特徵;
  • 評價:這些方法利用淺層的文本特徵和手動設計的因素,而兩者都消耗大量人力,並且當應用於其他場景時會出現泛化的問題。

基於神經網絡的方法

  • 例如:基於注意力機制的神經網絡等等

2.2 Multi-task Learning(MTL)

Multi-task learning (MTL) 旨在於通過同時解決相關任務,探索它們的共性和差異性(aims to exploit the commonalities and differences across relevant tasks by solving them at the same time),它可以在各種任務之間傳遞有用的信息,並已經有了廣泛的應用。

常用思路

  • hard parameter sharing:sharing representations or some encoding layers among relevant tasks.
  • soft parameter sharing:通常假設每個任務都有其特定的參數,不同任務中的參數之間的距離相近。
  • 有部分工作關注:增加任務 或 處理無標籤數據

本文工作中,我們介紹 拓撲(topological)學習框架 TOPJUDGE,用於處理 LJP 中的多個子任務。TOPJUDGE 不同於傳統的 MTL 模型,這些模型側重於如何在相關任務之間共享參數,TOPJUDGE 使用可擴展的 DAG 形式對這些子任務之間的顯式依賴關係進行模型

3、Method

在這裏插入圖片描述

3.1 Problem Formulation

本文關注的是民法(civil law)中的 LJP 任務。

LJP 任務的定義

  • 假設一個案件的事實描述是一個單詞序列 x={x1,x2,...,xn}\mathrm{x}=\{x_1,x_2,...,x_n\},其中 nn 表示 x\mathrm{x} 的長度,且每個單詞 xix_i 都來自固定的詞彙 WW
  • 基於事實描述 x\mathrm{x},LJP TT 的任務是預測適用 law articles(法律條款)、charges(罪名指控)、term of penalty(處罰期限)、fines(罰款)等的判斷結果。
  • 形式上,假設 TT 包含 T|T| 個子任務,即 T={t1,t2,...,tT}T=\{t_1,t_2,...,t_{|T|}\},每個都是一個分類任務。對於第 ii 個子任務 tiTt_i\in{T},我們的目標是預測相應的結果 yiYi\mathrm{y}_i\subseteq{Y_i},其中 YiY_i 是子任務特定標籤集合。
  • 以 charges prediction 的子任務爲例:其對應的標籤集合應該包括 Theft(偷竊),Traffic Violation(交通違章), Intentional Homicide(故意殺人)等等.

3.2 DAG Dependencies of Subtasks

我們假設 LJP 的多個子任務之間的依賴關係可形成 DAG。因此,任務列表 TT 應滿足 topological constraints(拓撲約束)。

形式上:

  • 使用記號 titjt_i\triangleleft{t_j} 來定義第 jj 個子任務取決於第 ii 個子任務;Dj={tititj}D_j=\{t_i|t_i\triangleleft{t_j}\} 定義依賴集合。
  • 則任務列表 TT 需要滿足以下約束:
    i<j,    (i,j){(i,j)tiDj}(1)i<j,\ \ \ \ \forall{(i,j)}\in{\{(i,j)|t_i\in{D_j}\}}\tag{1}

我們通過描述兩個特殊情況,以展示公式的靈活性。

  • (1)如圖(a)所示,若不存在依賴,即 Dj=D_j=\varnothing,它對應於典型的 MTL setting,即我們同時對所有子任務進行預測。
    在這裏插入圖片描述
  • 如圖(b)所示,若每個任務僅依賴於前一個的任務,即 Dj={tj1}D_j=\{t_{j-1}\},它形成了一個順序的學習過程。

在這裏插入圖片描述

3.3 Neural Encoder for Fact Descriptions

我們使用 a fact encoder 來生成 事實描述的向量表示,它作爲 TOPJUDGE 的輸入。此處使用一個基於 CNN 的 encoder

將單詞序列 x\mathrm{x} 作爲輸入,the CNN encoder 通過三個層(即lookup layer, convolution layer 和 pooling layer) 計算文本表示。

  • Lookup:將 x\mathrm{x} 中的每個單詞 xix_i 轉換爲 word embedding xiRk\mathrm{x}_i\in{\mathbb{R}^k},其中 kk 表示 word embedding 的維度,則 word embedding 序列表示爲
    x^={x1,x2,...,xn}(2)\hat{\mathrm{x}}=\{\mathrm{x}_1,\mathrm{x}_2,...,\mathrm{x}_n\}\tag{2}
  • Convolution卷積操作 涉及 卷積矩陣 WRm×(h×k)\mathrm{W}\in{\mathbb{R}^{m\times(h\times k)}},在該矩陣上應用 mm 個filter(其長度爲 hh),以生成 feature map,其中 xi:i+h1\mathrm{x}_{i:i+h-1}ii-th window 中 word embedding 的串聯結果,bRm\mathrm{b}\in{\mathbb{R}^m} 是偏置向量。通過在每個window上運用conv操作,獲得 c={c1,...,cnh+1}\mathrm{c}=\{c_{1},...,c_{n-h+1}\}
    ci=Wxi:i+h1+b(3)\mathrm{c}_i=\mathrm{W}·{\mathrm{x}_{i:i+h-1}}+\mathrm{b}\tag{3}
  • Pooling:在 cc 的每個維度上應用 max pooling,並獲得最終的事實表示 d=[d1,d2,...,dm]\mathrm{d}=[d_1,d_2,...,d_m],計算公式如下:
    dt=max(c1,t,...,cnh+1,t),    t[1,m](4)d_t=max(c_{1,t},...,c_{n-h+1,t}),\ \ \ \ \forall{t}\in[1,m]\tag{4}

3.4 Judgment Predictor over DAG

基於 DAG 假設,我們獲得一個有順序的任務列表 T=[t1,t2,...,tT]T^*=[t_1,t_2,...,t_{|T|}]。對於每個任務 tjTt_j\in{T},我們的目標是 根據事實表示向量 d\mathrm{d} 及其所依賴任務的判斷結果來預測其判斷結果 yj\mathrm{y}_j

爲了預測,我們爲每個任務使用特定的 LSTM cell,並按拓撲順序獲取每個任務的輸出。更具體地說,對於每個任務 tjTt_j\in{T},通過三步獲取其最終的判決結果,步驟:cell initialization, taskspecific representation, 和 prediction。

  • Cell Initializationtjt_j 的預測結果將以 事實表示 d\mathrm{d}所有依賴任務yk, tkDj\mathrm{y}_k,\ \forall{t_k}\in{D_j} 的輸出 爲條件。因此,有
    [hjˉcjˉ]=tiDj(Wi,j[hici])+bj(5) \left[ \begin{matrix} \bar{\mathrm{h}_j} \\ \bar{\mathrm{c}_j} \\ \end{matrix} \right] =\sum_{t_i\in{D_j}}(\mathrm{W}_{i,j} \left[ \begin{matrix} {\mathrm{h}_i} \\ {\mathrm{c}_i} \\ \end{matrix} \right])+\mathrm{b}_j\tag{5}
    • 其中,hi{\mathrm{h}_i}ci{\mathrm{c}_i} 是 cell tit_i 的 hidden state(隱藏狀態) 和memory cell (內存單元)。hjˉ\bar{\mathrm{h}_j}cjˉ\bar{\mathrm{c}_j} 是 cell tjt_j 的 initial hidden state(初始隱藏狀態) 和memory cell (內存單元)。Wi,j\mathrm{W}_{i,j}bj\mathrm{b}_j是特定於 tit_itjt_j 的變換矩陣和偏置矢量。
  • Task-Specific Representation
    • 輸入:the fact representation d\mathrm{d}, the initial hidden state hjˉ\bar{\mathrm{h}_j}, 和 the initial memory cell cjˉ\bar{\mathrm{c}_j}
    • 使用LSTM cell 處理輸入:我們將 final hidden state hj\mathrm{h}_j 作爲任務 tjt_j 的特定任務的表示。The last cell state cj\mathrm{c}_j 用於構建接下來的任務的 the initial hidden state(初始隱含狀態),如公式5所示。
  • Prediction:在表示 hj\mathrm{h}_j 上使用放射變換(affine transformation),然後應用 softmax,之後獲得 the final prediction 如下:
    y^j=softmax(Wjphj+bjp)(6)\mathrm{\hat{y}}_j=\mathrm{softmax}(\mathrm{W}_j^p\mathrm{h}_j+\mathrm{b}_j^p)\tag{6}
    • 其中,Wjp\mathrm{W}_j^pbjp\mathrm{b}_j^p 是特點任務 tjt_j 的參數。
    • 優化:最小化 y^j\mathrm{\hat{y}}_jyj\mathrm{{y}}_j 之間的交叉熵,公式如下:
      Lj(y^j,yj)=j=1Yjyj,klog(y^j,k)(7)\mathcal{L}_j(\mathrm{\hat{y}}_j,\mathrm{{y}}_j)=-\sum_{j=1}^{|Y_j|}\mathrm{{y}}_{j,k}\log(\mathrm{\hat{y}}_{j,k})\tag{7}

3.5 Training

我們對每一個子任務使用交叉熵損失,並對所有任務的損失進行加權求和所有的損失來訓練TOPJUDGE:
L=j=1TλjLj(y^j,yj)(8)\mathcal{L}=\sum_{j=1}^{|T|}\lambda_j\mathcal{L}_j(\mathrm{\hat{y}}_j,\mathrm{{y}}_j)\tag{8}

  • 其中,λj\lambda_j 是子任務 tjt_j 的權重因子。

子任務的DAG依賴確保了本文模型是可微分的,並且可以以端到端的方式進行訓練。在實踐中,我們設置所有的 λj=1\lambda_j=1,使用 Adam 進行優化。爲了防止過擬合,我們在fact representation上使用dropout。

4、Experiments

三個典型的子任務: law articles, charges, and the terms of penalty

4.1 Dataset Construction

數據集:CJO, PKU, 和 CAIL

  • CJO:包含犯罪案件,數據來源 中國裁判文書網
  • PKU:包含犯罪案件,數據來源 北大法寶
  • CAIL:競賽數據集,數據來源 中國裁判文書網
  • 上述數據集文檔有很好的結構和註釋,易於提取 fact descriptions, applicable law articles, charges and the terms of penalty。

數據預處理:

  • 數據過濾:對於存在多個被告和多項指控罪名的案件過濾,原因:本文關注點是子任務之間的拓撲性依賴的有效性;
  • 數據過濾:對不常見的指控罪名(charges)和法律條款(law articles)的案件進行過濾,只保留頻率大於100。
  • 將 penalty 離散成非重疊的區間。

數據統計
在這裏插入圖片描述

4.2 Baselines

  • TFIDF+SVM:特徵提取 + 文本分類器
  • CNN:多尺度核來 fact encoding、classification
  • Hierarchical LSTM (HLSTM):
  • Fact-Law Attention Model(2017):使用注意力機制捕捉fact描述和適用的law articles之間的交互作用來charge預測的神經網絡模型;
  • Pipeline Model (PM):3 separate CNN classifiers for law articles, charges, and term of penalty,每個子任務的輸入爲 the concatenation of the fact representation 和 the embeddings for predicted labels of previous subtasks

4.3 Experimental Settings

分詞:THULAC
預訓練詞向量:Skip-Gram model,embedding size = 200,frequency threshold = 25.
模型參數:the fact representation and task-specific representation = 256,maximum sentence length=128words,maximum document length=32sentences
超參數:learning rate(Adam)=10310^{-3},dropout=0.5,batch size=128,epochs=16
評價指標:accuracy (Acc.), macro-precision(MP), macro-recall (MR) 和 macro-F1 (F1)

4.4 Results and Analysis

子任務:law articles:t1t_1, charges:t2t_2, the terms of penalty:t3t_3

依賴設置:D1=,D2={t1},D3={t1,t2}D_1=\varnothing,D_2=\{t_1\},D_3=\{t_1,t_2\},即charges依賴於law articles,the terms of penalty依賴於law articles和charges。
在這裏插入圖片描述

實驗結果:
在這裏插入圖片描述
在這裏插入圖片描述

  • 優於其他方法,體現本方法的有效性和魯棒性;
  • 與單任務模型相比:多任務模型利用相關子任務的相關性,並得到提升,體現子任務聯合建模的重要性;
  • charges and the terms of penalty的預測結果顯著高於MTL方法,體現了LJP子任務的DAG依賴模型的合理性和重要性。

其他實驗

研究:不同DAG依賴對結構性能的影響
在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述

5 Conclusion

In this paper, we focus on the task of legal judgment prediction (LJP) and address multiple subtasks of judgment predication with a topological learning framework. To be specific, we formalize the explicit dependencies over these subtasks in a DAG form, and propose a novel MTL framework, TOPJUDGE, by integrating the DAG dependencies. Experimental results on three LJP subtasks and three different datasets show that our TOPJUDGE outperforms all single-task baselines and conventional MTL models consistently and significantly.

探索思路:

  • (1) 更多子任務、多場景案件(eg:多被告、多項指控罪名)下 TOPJUDGE 的有效性;
  • (2) LJP + temporal factors(時間因素)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章