融入法因层次结构的法因预测IHLCP模型
2024-03-26黄思嘉彭艳兵
黄思嘉,彭艳兵
(1. 武汉邮电科学研究院,湖北 武汉 430074;2. 南京烽火天地通信科技有限公司,江苏 南京 210019)
0 引言
法律领域是一个由大量数据积累的领域,非常适合运用由数据驱动的各项人工智能技术。与金融、医疗等其他垂直领域相比,法律文书拥有高质量的文本信息,不仅表述严谨规范,且具有丰富的数据支撑。按照诉讼性质的不同,法律文书可以分为两类: 刑事案件文书和民事案件文书。基于这些法律文书,本文将法官判决结果作为标准答案,将案情事实描述作为训练样例,期望以数据驱动的方法学习法律体系的相关信息,以形成一套较为有效的自动判决预测系统。
智能法因预测的目的是根据案情事实描述预测刑事案件的罪名或民事案件的纠纷类型。其作为法律自动判决体系的一项代表性工作,有望推动诸如自动量刑、智能法官助理、案情关系网络构建等一系列现实应用。但目前这一工作并不乐观,表现如下:
(1) 基于民事案件的研究较少。由于民事案情较刑事案件更为复杂多样,判决结果无法简单地用分类或回归建模,因此现有的工作主要集中在对刑事案件的研究上,基于民事案件的研究相对较少。
(2) 一些低频、易混淆法因难以预测。本文针对中国裁判文书网(1)https://wenshu.court.gov.cn/中的刑事和民事数据集的分布情况进行了统计分析,分析结果如图1所示。可以看出,该分布是典型的长尾分布,极少数法因标签具有较高的数据量,而大部分法因标签数据量较少。这种极不平衡的分布现象使得预测低频类别变得十分困难。
图1 刑事、民事数据分布统计图
现有的预测系统针对高频类别能够充分发挥作用,但对于低频类别的处理效果并不理想,而且案件事实描述部分存在着许多极为相似的易混淆原因对。例如,在我国刑事案件语境中,采用模型区分“强迫他人吸毒罪”和“容留他人吸毒罪”的关键,是能否从事实描述中确定被告在他人吸食、注射毒品时是否存在暴力胁迫行为,而该工作需要基于文本的语义差异性进行建模。
(3) 案情事实描述存在数罪并罚问题。由于犯罪嫌疑人在一条案例中可能存在多种指控,因此法因预测并非简单的单标签分类任务,案情事实描述中也存在着部分数罪并罚问题,需要作多标签分类处理。Boutel等人[1]指出目前主流的多标签文本分类方法,主要包括: 标签 powerset、分类器链和二元关联策略。其中,标签powerset是通过额外添加预测类别的方式将每一组共现的标签组合归一为一种新类别。分类器链方法则适用于标签之间存在特定关联的场景(总分、承接关系等),这种作法是将上层分类器的预测结果链入后层分类器以实现关联性的多标签分类方法。二元关联策略则是将多标签中的每一个标签拆分为一个单独类别,并对每个类别进行二元分类。基于这些多标签的学习算法,我们可以将数罪并罚问题进行转化。
(4) 现有模型可解释性差。现有的法律文书自动研判模型已经具有良好的性能,但模型的判断过程难以解释,结果并不可靠。这种不可解释性使得法律自动判研系统难以为法律专业人士提供良好的技术支撑,从而影响系统的实际应用。
图2为部分法因层次结构示意图。从图2可知,无论是刑事罪名还是民事纠纷类型,都存在着显著的层次依赖关系。这种层次结构能够为各种法因提供有效的信息,特别是对于那些低频、易混淆类别而言,每个叶子节点(法因),都有唯一一条路径将其与根节点(案情描述)连接起来。因此本文借鉴多标签分类问题的分类器链思想来进行法因预测,并将法因的外部层次依赖关系作为模型可解释性的来源,在预测法因路径的过程中通过父法因来区分低频、易混淆法因。
图2 部分法因层次结构示意图
此外,法律领域的法因通常十分明确,它们的每一个名称可以被视为对某类案例准确和精炼的描述。而这种关键的文本信息可以被用来过滤掉事实描述中的噪声信息,仅保留影响判决结果的关键部分,为准确预测提供可能。然而,现有的分类模型只是将每个法因视为一个分类标签,而忽略了其名称中隐含的内部信息,具有不可靠性。
需要说明的是,数罪并罚任务属于多标签分类问题,会增加模型预测的难度,故本文将该任务作为后续工作的研究方向,在本文中不做深入讨论。
总之,本文针对法律智能体系的现状提出了IHLCP模型,该模型融入了法因的外部层次依赖关系,在提升模型可解释性的同时,基于内部文本信息对法因进行预测,期望打破自动判决预测系统在低频易混淆法因预测上的瓶颈。具体来说,本文将法因路径作为模型可解释性的来源,将每个法因转换为从根节点到叶子节点的路径,提出了一个基于内部文本注意的Seq2Seq模型,并通过事实描述的语义差异性来预测法因路径。
1 相关工作
1.1 少样本学习
目前主流的传统深度学习模型需要大量的数据进行支撑,而少样本学习的提出则是为了解决缺少足够多训练数据的特定场景问题。少样本学习主要有两种方法,一种是构建网络结构或图结构。借鉴人眼可以自动提取物体特征并进行比较学习的思想,Sung等人[2]提出了一种关系网络来将嵌入单元和关系单元进行联合比较,并根据比较的结果判断测试数据所属的类别。另一种是增加额外的附加信息,如 Hu 等人[3]通过引入一些罪名的区分属性(盈利、买卖行为、死亡情节、暴力行为等)作为事实描述到罪名之间的内部映射来捕捉与特定属性相关的关键事实信息,进行低频罪名预测任务。
近年来,诸如 BERT[4]、XLNet[5]等各种预训练语言模型的出现,使得我们可以凭借大规模的外部知识或数据在无标注数据上进行学习。
1.2 罪名预测任务
深度学习技术的快速发展,使得各种神经网络模型在NLP 任务中表现出了良好的性能。
Luo等人[6]将罪名预测任务和相关法条提取任务用一个统一的框架进行建模。该模型采用一个两阶段式的注意力机制从案件事实描述预测相关法律条款,并进一步预测罪名,通过使用一系列注意力组件来建模单词和句子之间的相关性,从而捕捉整个案件的重要细节。Hu 等人[3]引入了一些罪名的区分属性作为事实描述到罪名的内部映射,并将这些属性感知表示与无属性表示相结合,以预测最终罪名。
受这些工作的启发,本文在模型中引入了刑法和民法体系中所有法因的依赖结构,这种直接的层次依赖关系能够缓解刑法和民法数据分布不平衡的现象,并有助于区分不同父节点下的易混淆法因。同时由于Seq2Seq模型在层次化依赖建模方面的优势,本文利用法因的名称作为注意的Query值,达到逐级过滤实际描述中噪声信息的效果。
1.3 模型可解释性
可解释性是指模型解释其预测的能力,目前已经引起了越来越多的关注。Hendricks等人[7]将解释的概念分为自省解释和正当解释。
所谓自省解释,即解释模型如何确定其最终输出。考虑到罪名和法条之间的高度相关性,Luo等人[6]将该次预测相关的法条视为对罪名预测的一种解释性,采用事实和法条之间的注意力机制进行罪名预测。另外一种内省解释为定罪要素,通过标注事实描述中的定罪要素作为判决的中间结果,也能够起到解释最终判决结果的作用。Zhong等人[8]基于无罪推论和要素审判原则,对定罪要素进行预测,并直接基于要素预测结果进行罪名预测,使整个系统更具透明性和可解释性。
所谓正当解释,则是通过生成一些句子,作为支撑系统预测结果的相关依据。Ye等人[9]将庭审意见作为罪名预测的解释性来源,使用Seq2Seq模型,根据案件的事实描述和给定的罪名标签来生成庭审意见。
本文将罪名之间的层次依赖关系作为模型可解释性的来源,通过预测法因路径来提升模型的可解释性。
2 IHLCP法因预测系统
本节首先给出法因预测的任务定义,再详细介绍本文提出的IHLCP模型。
2.1 任务定义
本文维护了刑事和民事法律文书的词表V,及层次结构中所有法因的集合Y。定义输入的案情事实描述序列X={x1,…,xm,…,xM},其中xm∈V。
如图2所示,将待预测法因沿外部层次结构,转化为从根节点到叶子节点的路径,即法因序列y={y1,…,yi,…,yI} ,其中,yi∈Y。定义每个法因yi的简短描述为nyi={x1,…,xl,…,xLy},用于过滤事实描述中的噪声信息。
综上所述,模型定义法因序列y的预测概率如式(1)所示。
(1)
如图3所示,IHLCP模型由事实编码器和法因预测器两部分组成。事实编码器负责将案情事实描述X进行编码,法因预测器则按照法因的层次结构解码出法因序列y,本文将在接下来的部分进行详细介绍。
图3 IHLCP模型流程示意图
2.2 事实编码器
由于案情事实描述文档包含较长的文本,且文本上下文之间关联性较强,本文在事实编码器部分采用改进的XLNet-DPCNN模型,将事实描述的词序列进行编码,作为法因预测器的输入。
其中,XLNet[5]模型采用了Transformer-XL[10]进行编码。相较于Transformer[11]模型,Transformer-XL的段循环机制[10]和相对位置编码[10]策略使得模型更具上下文语义相关性,且具有更低的评估代价。XLNet 模型使用了双流自注意力机制[5]和段缓存机制[5]来建模,以应对更长的距离依赖,打破了BERT模型无法有效处理超长文本的弊端。
DPCNN[12]模型则通过不断交替卷积层和下采样层来使模型在加深网络层次的过程中捕获更多全局信息。DPCNN模型采用了Region Embedding[12]的词嵌入方法,该方法类似于Text-CNN[13],是对一个文本区域段进行多尺度卷积的结果。但Region Embedding无法充分理解语义,当把词压缩到低维稠密的语义空间之后,相似意义的词会出现共线问题,即拥有相同的词向量。因此本设计采用XLNet模型生成词向量来替代DPCNN模型中原有的Region Embedding词向量。
网络层次的不断加深,会使模型的整体分布逐渐向激活函数不敏感的区域靠近。而把每一层神经元的激活值作批标准化BN[14]处理,能够使模型保留更多的信息,有效避免梯度消失现象,加快模型训练速度。因此本文在 DPCNN 模型的每一个 Block 中引入一层BN[14]来加速模型的收敛过程,使模型训练更加稳定。
DPCNN原模型中采用了ReLU[15]激活函数,与sigmoid等激活函数相比,ReLU[15]收敛更快,能够在一定程度上能够缓解梯度消失和过拟合现象,如式(2)所示。
fReLU(x)=max(0,x)
(2)
由式(2)可以看出,ReLU的输出均为非负值,当参数初始化不当时,可能会导致训练过程中某些神经元无法被激活,相应参数无法被更新的结果。
为了解决ReLU激活函数的弊端,本文在DPCNN模型中采用 Mish 激活函数[16],如式(3)所示。
fMish(x)=x·thanh(ln(1+ex))
(3)
与ReLU激活函数相比,Mish 激活函数理论上对负值有轻微允许,这种相对平滑的激活函数允许更好的信息进入神经网络,从而提升模型的准确性和泛化能力。随着网络层数的加深,ReLU的精度会迅速下降,而Mish 激活函数仍然能够保持良好性能[16]。
图4 事实编码器模型架构图
(4)
然后采用等长卷积[12]生成特征,设卷积核W∈Rkf×(w×k),偏置b∈Rkf,其中kf为滤波器大小,w为滤波器宽度,fMish代表使用Mish激活函数进行非线性激活,则词向量Xi: i+w-1产生的特征vi如式(5)所示。
vi=fMish(W·Xi: i+w-1+b)
(5)
h0,j=max(v1,j,…,vM,j), ∀j∈[1,kf]
(6)
hf,j=mean(v1,j,…,vM,j), ∀j∈[1,kf]
(7)
2.3 法因预测器
本模块基于seq2seq[17]模型的解码器进行法因预测,并在其中加入注意力机制,模型结构如图5所示。
图5 法因预测器模型架构图
时间步i中LSTM单元的输入由两部分组成: 法因表示yi和法因感知事实表示ci。其中,法因表示yi是法因名称nyi的表示,由上一时间步预测得到的法因编码得到,如式(8)所示。
yi=vec(nyi)
(8)
其中,U、W0、W1和b均为训练参数,则法因感知事实表示ci如式(11)所示。
(11)
同时为了保证预测的法因序列与法因的层次结构一致,本文借鉴Teacher Forcing[19]的思想,采用mask分类来限制模型的预测范围。对于每一时间步中解码器单元的输出hi,本文使用一个权重共享全连接层将其映射到法因空间。对于法因yi,若其不是yi-1的子节点,将被mask到负无穷。因此,在Softmax操作后,这些不符合法因层次依赖关系的法因的概率将为0。这意味着当前预测范围中的法因必须是之前预测法因的子节点。该操作可以形式化为式(12)、式(13)所示。
p(yi|y1: i-1,x)=Softmax(Mask(Wphi+bp,yi-1))
(12)
(13)
其中,Wp和bp为全连接层参数,π(y)代表y的父法因。
综上,本模块在法因预测器部分采用法因类型作为注意的Query值来过滤事实描述中的噪声信息,并引入了法因之间的层次依赖关系,来有效解决由于标签数据长尾分布导致的数据不平衡问题,同时来区分那些事实描述部分极为相似却位于不同父节点下的易混淆法因。
2.4 模型训练
由于刑法和民法体系数据分布极不平衡,本文在Sequence Loss[17]中结合了焦点损失[20]的思想,训练目标是最小化待预测的法因序列与真实值之间的损失,损失函数如式(14)所示。
(14)
3 实验与分析
为了证明本文提出的IHLCP模型的有效性,本文在几个刑事和民事数据集上进行了实验。
3.1 数据集构建
针对我国公开发布的刑事法律文书和民事法律文书搜集整理了3个大规模数据集: CAIL[21]、FSC[3]和CIVIL。其中,CAIL[21]是我国第一个用于判决预测的大规模法律竞赛数据集。FSC[3]是Hu等人构建的侧重于对我国刑法数据集中的低频易混淆罪名学习的数据集。CIVIL数据集是从中国裁判文书网上收集的民法数据集。
基于中国裁判文书网中公布的刑事罪名和民事纠纷的层次结构,本文维护了刑事案件和民事案件的法因序列分布。三种数据集的具体细节见表1。
表1 刑事/民事数据集细节统计表
其中父节点为叶子节点的概括性法因。由于本设计不对数罪并罚问题作深入研究,本文在所有数据集中过滤掉这些案件,以便专注探索法因之间的层次关系对于模型性能的影响。
3.2 基线模型
为了验证模型的有效性,本文设计了三种类型的基线:
经典文本分类模型: Text-CNN[13]、LSTM-attention、DPCNN[12]、HAN[22]、FastText[23];
经典序列生成模型: seq2seq[17];
LJP任务的前期工作: Fact-Law Attention (FACT)[6]、 Attribute charge (ATCH)[3]。
3.3 实验设置
对于IHLCP模型,本文在三个数据集中统一使用XLNet模型的SentencePiece[24]方法进行切词。由于FSC[3]数据集中包含了词嵌入文档,本文在该数据集的基线模型中严格按照该模型上的实验设置进行实验,以得到和该模型相似的效果。对于其他数据集的其他基线模型,我们统一使用THULAC分词器(2)http://thulac.thunlp.org/进行分词。
我们将所有LSTM单元的隐藏大小设置为256,对于IHLCP模型,设置DPCNN单元卷积核大小为3,步长为2,集束宽度为5,焦点损失函数的γ值为2。
在训练阶段,我们统一使用Adam作为优化器,文档的最大长度设置为500字,初始学习率设置为0.001。批大小设置为256,drop out rate设置为0.5,最大迭代次数设置为100,并使用早停策略以防止模型过拟合。同时本文通过复制部分低频法因样本并向其中加入随机噪声的形式对数据进行过采样,并采用加权随机采样算法对数据进行重采样来缓解数据分布的不平衡现象。
本文使用准确率(ACC)、宏观精度(MP)、宏观召回率(MR)和宏观F1值(F1)作为评价指标。
3.4 结果分析
通过跟踪法因层次结构,我们可以将所有模型的输出转换为法因序列。因此,我们能够在不同层次上比较HLCP模型和基线模型的性能。
如表2所示,本文比较了IHLCP模型和基线模型在验证集上的性能(“*”代表模型不适用该数据集,“-”代表模型在最大迭代次数内无法收敛),我们发现: IHLCP模型在所有数据集上的性能均显著优于基线模型,证明了该模型的鲁棒性和实用性。
表2 模型效果对比表 (单位: %)
其中,模型在包含最多父因的CIVIL数据集中的ACC和F1值分别提升了6.6%和12.3%,在数据分布极不平衡的CAIL数据集中,ACC和F1值分别提升了3.5%和13.4%。同时我们可以看出,模型在FSC数据集上相较于需要人为设计罪名属性的ATCH模型的F1值提高4.2%,证明了该模型在利用法因之间的层次依赖关系和内部的文本信息来应对数据分布不平衡导致的低频、易混淆法因难以预测的问题上具有一定效果。
为了更为直观地说明IHLCP模型对于低频法因的预测性能,本文根据法因类别的样本数据量将CAIL数据集中的刑事罪名和CIVIL数据集中的民事纠纷类型分别划分为低频、中频和高频三个等级,在验证集中测试模型的MP值和F1值。实验结果如表3所示。
表3 不同类别的模型效果对比表 (单位: %)
由表3可以看出,刑事和民事样本数据分布不均衡,会导致低频法因类别特征难以学习,检测性能较低。IHLCP模型相较于其他基线模型,在高频和中频法因预测上的效果提升不太明显,但在低频法因预测上得到了显著提升,由此可以看出IHLCP模型能够有效应对数据分布不平衡导致的低频法因难以预测的问题。
同时,为了验证IHLCP模型引入的法因层次结构的合理性,本文对于待预测法因序列的后4层法因预测的性能进行了实验,其中第4层法因即为子法因(叶子节点),1~3层法因是子法因的父法因(父节点),实验结果见表4。
表4 IHLCP模型法因序列预测性能评估表 (单位: %)
由表4可以看出,IHLCP模型在集束搜索的过程中,根据法因的层次依赖关系,采用Softmax分类的方式使模型在每个时间步都能便捷地找到条件概率分布最大的候选路径。同时,法因的层次依赖结构作为模型的正当解释,使得预测结果更具说服力。
3.5 个案研究
为了直观地说明IHLCP模型的层次结构在易混淆法因预测上的巧妙性,本文从我国刑事和民事数据集中选取了6对位于不同父法因节点下的易混淆法因进行测试,这6对易混淆法因在事实描述中极为相似,难以区分,其对应的父法因如表5所示。
表5 易混淆法因-父法因关系映射表
本文分别在DPCNN、FACT及IHLCP模型中对于选取的易混淆法因的预测效果进行了对比实验,其中模型对于6个易混淆法因预测的准确率如图6所示。
图6 易混淆法因预测准确率
将6个法因预测成其对应的易混淆法因的误判率如图7所示。
图7 易混淆法因误判率
从图6和图7能够看出,IHLCP模型相较于其他基线模型,对于易混淆法因的识别能够达到较高的准确性和较低的误判率。这说明法因的层次结构及其名称所含的内部信息能够有效应对易混淆法因难以预测的问题。通过层次预测,我们可以直接在其父法因上加以选择,并不需要花费太大的代价就可以对易混淆法因进行有效区分。
同时我们引入的层次结构可以缓解数据不平衡现象,通过将法因划分为更小的组,使每个法因在更小的区域内竞争,进而提升模型预测性能。
此外,本文还通过刑事、民事的具体案例来验证法因的层次结构,展现该模型的良好性能,具体细节如图8所示。
图8 个案分析效果示意图
对于输入的案例,模型可以预测对应的法因链路,该链路可以作为模型的正当解释,支撑模型预测结果。
4 总结与展望
本文针对当前法律智能体系可解释性差、低频易混淆法因预测效果不佳、民事纠纷研究过少的问题提出了IHLCP模型。该模型对于刑事和民事领域的案例进行了研究,基于改进的XLNet-DPCNN模型对具有语义差异性的事实描述进行编码,法因内部的文本信息用于消除事实描述中的噪声信息。在解码器部分引入了法因的层次依赖结构来有效解决刑法和民法数据分布不平衡导致的低频、易混淆法因难以预测的问题。同时本文采用法因路径作为模型可解释性的来源,从而开拓了我国法律智能体系的应用场景。
实验结果表明,本文设计的IHLCP模型能够缓解数据分布的不平衡现象,无论是整体性能还是对于低频、易混淆法因的预测性能,均优于基线模型,证明了该模型的有效性和鲁棒性。
未来工作中,我们将从以下几方面对法律智能领域进行探索: ①数罪并罚问题; ②将原告主张纳入民事事由的预测任务; ③基于联合学习或投票策略的类案匹配和刑期预测任务。