惠欣恒,白雄文,王红艳,安 娜,张 萌
(中国航天科工集团第二研究院 七〇六所,北京 100854)
随着大数据、人工智能等新一代信息技术的发展,从海量数据中侦查、检察和审判已成为我国建设智慧司法体系的一项重要课题[1],也是这一领域的未来的发展趋势[2]。在办案过程中,参考类似裁判规则的案例,尤其是两高一部发布的指导性案例,能够辅助办案人员在案件事实、案件办理和案件裁判等方面进行判断,以案件相关信息为基础构建知识图谱可以有效提高办案质效[3]。知识图谱可以描述海量数据中存在的实体、实体属性及关系[4],将案件相关信息形成具备丰富语义及潜在语义关系的知识网络结构。本文基于本体构建技术[5,6],梳理案件相关信息知识体系与专家知识结合,归纳总结案件相关信息专业术语,定义案件相关信息对应的类及类关系,并使用自然语言处理、深度学习等信息抽取技术将案件信息结构化,与本体类及关系建立映射,形成案件知识图谱。基于知识图谱信息,融合子图知识表示和注意力知识表示,并使用文本卷积神经网络进一步增强案件知识表示,提出一种基于案件知识表示融合及增强的类案推荐模型,将传统的单一需求检索和关键词匹配检索转变为办案场景化感知、案件相关的智能知识服务。
目前,推荐系统主要分为基于协同过滤、基于内容、基于知识及混合推荐的推荐方法[7]。基于协同过滤的推荐方法依靠历史数据进行推荐[8],由于推荐性能受到冷启动、数据稀疏性等问题的制约,因此引入了聚类、辅助信息以及隐含特征来缓解数据稀疏。基于内容的推荐方法使用描述信息进行推荐,为了与基于知识的推荐方法进行区分,这里的描述信息侧重于文本描述内容,如推荐信息的详细特征描述,由于特征描述容易引入噪声,因此会使推荐精度变差[9]。基于知识的推荐方法[10,11]依赖于推荐结果的特征知识的表征,传统的知识表征取决于人工设计的特征知识是否符合推荐偏好,尤其是在众多项目中,特征知识的设计需要具备深入的领域知识,因此,将深度学习、知识图谱等技术引入知识表示,是当前研究的一个热点。混合推荐方法[12]将多种推荐策略整合一起实现混合设计,特征组合的混合方案将不同种类的输入数据进行组合,会导致推荐行为包含更多噪声,对推荐行为造成干扰。
随着人工智能、大数据技术的发展,针对使用知识图谱以及图谱嵌入获取知识特征表示在推荐中的应用[11],研究者进行了大量研究,进一步推动了推荐技术的研究和发展。通过构建知识图谱,将领域知识引入点节点与边的定义中[4],并使用知识图谱嵌入技术将文本中包含的领域知识、语义信息进行向量化表示,可以得到领域知识图谱的特征表示[12]。
综上所述,本文提出一种基于知识表示增强的类案推荐模型,该模型对文本内容进行知识图谱构建以及图谱嵌入,得到基于知识图谱的知识表征向量,使用注意力机制抓取关键语义信息,通过文本卷积神经网络对知识表征进行增强与融合,最后预测推荐候选集的点击概率。本模型的贡献在于:
(1)将知识图谱的构建任务及图嵌入任务进行联合,提高模型对特征知识的表示学习能力;
(2)融合子图表示和注意力表示的案件知识表示,增强模型对文本关键特征的语义理解能力,从而进一步提升推荐的准确率;
(3)使用文本卷积神经网络进行案件知识增强能够有效提升注意力范围,进一步提升模型对长文本的推荐准确率。
本节提出一种基于知识表示增强的类案推荐模型(similar case recommendation model based on knowledge representation enhancement,KRE),以智能辅助办案中类案推荐任务为例对模型进行介绍。模型框架如图1所示,首先构建案件知识图谱,通过知识图谱嵌入技术学习案件知识表示向量;其次,针对查询案件与候选案件集,获取查询案件与候选案件知识表示和其对应的子图表示,并对查询案件表示向量与候选案件表示向量进行注意力矩阵构建,形成融合子图表示和和注意力表示的案件知识向量;再基于文本卷积神经网络进一步获取深层次案件知识特征;最后,定义模型目标函数及损失函数,训练优化模型超参数,获取最优模型状态。
图1 推荐模型整体框架
本文基于司法案件研究相似案例推荐模型,属于对长文本数据的信息处理与加工。知识图谱通过实体与关系的三元组刑事表示案件信息:一是有效缓解长文本带来的数据稀疏性;二是知识图谱的强表达能力,可以更加清晰表示案件的关系信息。
案件知识图谱构建的数据类型包括结构化文本和非结构化文本。结构化文本涉及的案件基础信息包括:“案件名称”、“案件罪名”,非结构化文本只包含“案件案情信息”。本文基于本体构建技术,定义案件知识本体涉及类及关系[13],并使用信息抽取技术,获取案件信息三元组 (h,r,t),h,t分别表示案件要素的头实体和尾实体,属于案件要素集合中的元素,r表示案件要素间的关系,属于案件要素关系集合中的元素。将案件知识本体的类及关系与案件要素三元组数据进行映射,形成案件知识图谱,其构建流程如图2所示,由模式层和数据层两大模块组成。
图2 案件知识图谱构建
(1)模式层
模式层作为案件知识图谱构建的核心,本文通过与法学专家研究和讨论,以案件构成要素为基础,对案件案情信息的结构层次及各层次之间的逻辑关系进行分析,提炼案件要素相关概念,定义案件要素类和类属性及关系,形成案件知识图谱模式层结构,即完成案件知识本体构建。
本文以案件为核心,依据案件构成要素将案件划分为5个类,分别是“案件相关人”、“案件相关时间”、“案件相关空间”、“案件相关物”及“案件犯罪行为”,并对这5个类的子类进行划分,如图3所示。
图3 案件类及子类层次结构
对案件类及子类进行划分后,形成案件知识本体整体框架,为了更准确描述案件涉及语义信息,进一步充实案件知识本体的内容,对类及子类的关系属性进行定义,以“盗窃罪”案件案情信息为研究对象,梳理案件知识本体类及关系,见表1。本次案件知识本体设计定义15个类实体,12个关系属性,在定义的关系属性中,存在一个关系对应一个实体对的情况,也存在一个关系对应多个实体对的情况。
表1 案件知识本体类实体及关系属性
(2)数据层
司法案件文书数据包括非结构化数据和结构化数据类型。通过大量案件文书内容分析,发现文书部分信息相对规范,例如报案时间、案件案由等基础信息,可以采用正则规则匹配方式进行信息抽取,而案件案情相关信息相对复杂,采用信息抽取算法抽取案件案情实体,使用知识融合及知识加工技术将所有案件信息进行三元组表示,形成<案件要素头实体,关系,案件要素尾实体>形式。最后,将模式层的定义的类及关系与数据层获取的三元组进行映射,形成案件知识图谱。
本文以案件知识图谱作为司法知识类案推荐模型的数据基础,有效解决推荐模型存在的数据稀疏性问题,进一步提升推荐模型的准确性。
案件知识图谱是将案件要素以<实体,关系,实体>三元组的方式表示。使用知识图谱嵌入技术将三元组的实体和关系表征为低维连续空间向量,在保留结构信息的基础上方便后续的计算。同时,为考虑知识图谱中实体因长尾分布导致在表征学习过程中变得稀疏,而且知识图谱中往往存在噪音的问题,因此在表征学习时加入图增广缓解噪音问题。
2.2.1 图增广
在案件知识图谱G中,为保证知识图谱结构的稳定性和可解释性,通过不同的实体来区分生成的增强知识图谱视图,以保证在图增广的过程中知识噪音扰动的不变性。以案件要素e的子图Ge为例,设计数据增广算子η,也就是说针对子图Ge的图增广η(Ge)
η(Ge)={(h,r,t)⊙Me}
(1)
这里 (h,r,t) 表示子图Ge的三元组,即在案件知识图谱G中以案件要素e为头实体或者尾实体的三元组,Me∈{0,1} 是二元指标,采取随机取值,⊙表示在三元组采样过程中是否选择对应的三元组。
通过数据增广算子η,生成具有不同扩充结构视图的子图,这样做可以识别对结构变化不太敏感的实体,并对有噪声的实体连接更宽容,使知识图谱嵌入模块更有助于捕捉相关实体间的实际关系,并在表征学习时重点关注。
2.2.2 图嵌入
考虑到嵌入的多样性,本文使用基于距离评分的翻译向量模型(translating embeddings for modeling multi-relational data,TransE)[14]和基于相似性匹配的语义匹配能量模型(semantic matching energy,SME),训练两种不同类型的案件知识图谱嵌入。
基于距离评分的TransE,是将知识图谱中的实体集合E和关系集合R表示在同一空间中,给定的案件三元组 (h,r,t), 向量分别表示为h,r,t∈Rd, 空间结构如图4所示。在向量空间中对于头实体h和尾实体t以及关系r需要满足h+r≈t, 则对于每一个三元组 (h,r,t), 距离评分函数表达式如下
图4 TransE中实体和关系空间表示
fr(h,t)=h+r-t1/2
(2)
其中,· 表示L2距离。
基于相似性匹配的SME在向量表示上与TransE类似,都是将案件三元组 (h,r,t) 的实体与关系映射同一空间中。假设嵌入向量h,r,t∈Rd, 头实体嵌入向量h、尾实体嵌入向量t与关系嵌入向量r,如图5所示,SME分别计算头实体与关系、尾实体与关系的语义匹配向量为gu(h,r)、gv(t,r),并将其结果做点积运算,表达式如下
图5 SME模型说明
fr(h,t)=gu(h,r)Tgv(t,r)
(3)
进一步,使用双线性函数组合语义匹配函数gu(·)、gv(·), 其表达式如下
{gu(h,r)=(M1uh)∘(M2ur)+bugv(t,r)=(M1vh)∘(M2vr)+bt
(4)
其中,M1u,M2u,M1v,M2v∈Rd×d是对应的参数矩阵,bu,bv∈Rd是对应的偏置向量。在双线性函数中∘表示哈达玛(Hadamard)积。
本文采用两类知识图谱嵌入方法是为了发挥知识图谱特有的空间结构性,基于距离评分的TransE表达图结构的性质信息,基于相似性匹配的SME表达节点间、关系间的相似性。
知识表示增强模块是在图谱嵌入的基础上,融合子图和注意力机制的知识表示,并使用文本卷积网络进一步获取案件信息特征,增强案件知识表达能力。
2.3.1 子图知识表示
子图表示可以作为图谱嵌入的补充信息,增强实体之间关系语义信息。对于每一个案件要素都可以作为头实体或尾实体与其它案件要素建立关系链接,形成案件要素对应的一阶子图结构,其表示为Ge={(e,r,t)or (h,r,e)|h,t∈Ee;r∈Re},Ee表示与案件要素e直接链接的案件要素集合,Re是它们之间的关系集合。
对给定的案件要素实体ei有对应的子图Gi,ei的子图知识表示为其子图中所有实体与关系的嵌入向量的平均值
ei=1|Gi|∑e,r∈Gi(e+r)
(5)
(6)
其中,d表示知识图谱嵌入维度,n表示案件的案件要素实体数量,4是通道数量。
2.3.2 注意力知识表示
注意力机制是一种利用有限资源从大量信息筛选有效信息的手段[15],本次采用注意力机制将查询案件的知识表示与待查案件的知识表示进行筛选与重新分配,获取注意力矩阵,进一步提升案件特征表达能力。
如图6所示,注意力矩阵的构建是通过查询案件知识表示S0,r∈Rd×n×4与候选案件知识表示S1,r∈Rd×m×4间矩阵的计算,形成一个大小为n×m×4的注意力矩阵,具体计算表达式如下
图6 注意力知识表示构建
(7)
其中,score(·)的计算方式可以是多种,本文的注意力矩阵采用score(x,y)=1/(1+|x-y|) 进行计算,x表示查询案件要素ei的嵌入向量,y表示待查案件要素ej的嵌入向量,|x-y| 是计算两个向量间的欧式距离。在得到注意力矩阵A∈Rn×m×4后,将查询案件和候选案件的注意力知识表示矩阵表示如下
S0,a=W0·ATS1,a=W1·A
(8)
W0∈Rd×n×4,W1∈Rd×m×4是对应的注意力知识表示的计算参数。
最后,将案件知识表示矩阵Si,r和注意力知识表示矩阵Si,a进行堆叠,形成完整的案件知识表示矩阵。其表示如下
Si=[Si,rSi,a]∈Rd×n×8
(9)
当i=0时表示查询案件,i=1,2,…时表示候选集合中的候选案件。
2.3.3 文本卷积神经网络
文本卷积网络是对案件知识表示进行特征提取,进一步加深模型对案件知识的语义理解能力,其结构由输入层、卷积层、池化层和输出层构成,如图7所示,输入层是融合子图知识和注意力知识的案件表示矩阵,卷积层选择宽卷积形式,主要是为了在同宽池化后保证输入的平移不变性,在提高可解释性的同时扩大案件知识表示范围,使模型获取更全面的案件信息,从而获取案件知识更加丰富的语义信息。
图7 文本卷积神经网络
输入层:输入是式(9)的Si∈Rd×n×8, 其中下标i表示案件标识,n表示案件i的案件要素实体数量,d表示在知识图谱嵌入时案件要素嵌入维度,8是通道数量,表示案件知识表示种类。
记卷积向量cj=[ej-m+1,ej-m+2,…,ej]∈Rm·d,0 pj=tanh(Wcj+b) (10) 其中,W∈Rd1×md是卷积核的集合,是d1个维度为d×m的卷积核的权重,b∈Rd1是对应的偏置量。 池化层:采用卷积核的宽度m,将输入转化为n+m-1宽度的表示向量,为保证卷积后的平移不变性,采用等宽的池化方法,沿案件要素方向进行连续池化,将表示向量转换回n列。 输出层:对卷积层结果全量池化,得到最终案件表示向量。 模型训练部分,考虑到人工神经网络的存在的过拟合问题以及在具体计算两个向量时传统受限与欧式距离的函数选取问题[16],本文使用基于注意力机制的因子分解机(attention factor machine,AFM)算法构建推荐模型目标函数的计算方式。 针对类案推荐,构建查询案件表示向量v=[v1,v2,…,vi,…]∈Rd与候选案件表示向量x=[x1,x2,…,xj,…]∈Rd。 通过组合特征将两向量融合后,构建自注意力网络筛选重要特征,使其对模型结果提供不同的贡献值,其结构如图8所示。 图8 AFM计算流程 首先将两个向量进行交互,对特征向量V,X进行哈达玛积,并将向量中的元素V,X乘积进行组合,表达式如下 fInt(v,x)=∑(i,j)∈d(v∘x)vixj (11) 其中,v,x分别表示查询案件表示向量v与候选案件表示向量x的元素值,i,j∈d是对应的下标值,∘表示哈达玛积,fInt表示向量融合函数。 为实现区分两个不同向量元素乘积对推荐模型的贡献,对上述表达式添加权重,表达式如下 fAtt(fInt(v,x))=∑(i,j)∈daij(v∘x)vixj (12) 其中,aij为注意力权重矩阵,表示不同v,x元素乘积对最终预测结果的贡献程度。fAtt表示带有注意力的向量融合函数。 为进一步解决模型训练的泛化问题,利用多层感知器初始化注意力权重。其输入是两个特征的交互向量,计算表达式如下 a′ij=hTReLU(W(v∘x)vixj+b) aij=exp(a′ij)∑(i,j)∈dexp(a′ij) (13) 其中,W∈Rd×d,b∈Rd,h∈Rd是注意力模型的参数。设置激活函数为ReLU,在初始化权重上通过softmax函数进行归一化。 综上分析,本文推荐模型的目标函数计算表达式如下 (v,x)=b0+∑di=1∑dj=1bijvixj+∑di=1∑dj=1aij(v∘x)vixj (14) ∑di=1∑dj=1bijvixj是传统的线性模型,bij是其模型参数;∑di=1∑dj=1aij(v∘x)vixj是两个案件特征的交互结果,aij是对应的注意力权重,b0是模型的偏置量。 进一步,定义模型训练的损失函数计算表达式如下 L=((v,x)-y(v,x))2+λW2 (15) 为了体现本文提出的KRE模型的有效性,本次实验选取了清华大学计算机系信息计算组总结的中国法律案例检索数据集(LeCaRD)[17]作为本次的评估数据集。LeCaRD的数据都是取自中国裁判文书网公开的刑事案件数据,并由法律专家完成候选案例的标注与关联判断标准工作,其中包含107 个查询案件和10 700 个候选案件,每个查询案件对应100个候选案件。与此同时,根据章节2.2设计的案件本体,对全部的案件数据通过相应的实体识别、关系抽取、实体融合等自然语言处理技术,通过构建三元组实现案件知识图谱。具体的数据信息见表2。 表2 数据集基本统计信息 考虑具体推荐场景下使用推荐列表的方式判断模型性能,基于推荐Top-K任务方式,选取参数F1@K和NDCG@K作为模型性能评估指标: (1)F1@K是一种分类模型的评估指标,是精准率(Precision)与召回率(Recall)的调和平均值,其表达式如下 F1@K=2×P@K×R@KP@K+R@K (16) 其中,P@K表示准确率指标,R@K表示召回率指标。 (2)归一化折损累计增益(normalized discounted cumulative gain,NDCG),是一种考虑了返回顺序的评价指标,公式如下 NDCG@K=DCG@KIDCG@K (17) 其中,DCG@K是折损累计增益(discounted cumulative gain,DCG)在考虑到排序顺序的因素,使排名靠前案例的累计增益(cumulative gain,CG)更高,对排名靠后的进行折损计算。IDCG@K是理想的折损累计增益(ideal discounted cumulative gain,IDCG),是一个完美状态。两者计算公式如下 DCG@K=∑Ki=1relilog2(i+1) (18) IDCG@K=∑|REL|i=1relilog2(i+1) (19) 在式(18)中,reli是指推荐列表第i个结果的真实相关性分数,在式(19)中,|REL|表示按照reli真实相关性从大到小排序,取前K项结果组成的集合,即按照最优的排序方式对结果进行排序。 本文提出的基于知识表示增强的类案推荐模型采用Torch深度学习框架和Python3编程语言搭建实验环境,并基于CentOS Linux x86_64平台,使用NVIDIA Tesla A100图形处理单元(GPU)32 GB显存进行模型训练和验证。具体的实验参数设置如下: 通过调节模型训练轮次和卷积核大小,观察模型性能变化趋势,确定模型最优超参数。模型训练轮次对其性能影响如图9所示,卷积核宽度对模型性能影响如图10所示。 图9 模型训练轮次对模型性能的影响 图10 卷积核宽度对模型性能的影响 由图9得出,随着训练次数的增加,基于5轮次一步的模型评价指标F1@10、NGCG@10在稳步提升,并在训练轮次为35时同时达到最优,而在模型轮次超过35之后,两个评价指标值都处于波动状态,由此说明,模型的训练轮次为35时,性能达到最优。 由图10得出,不同卷积核大小对模型训练的损失函数值存在一定影响。当卷积核大小为1,2,3,4,5,7,10时,模型训练损失值的变化趋势是先减后增,当卷积核大小为4时,损失值达到最低,故文本卷积核大小设置为4。同时,从图中得出,卷积核大小对模型损失的整体影响并不大,这是因为在知识图谱嵌入层添加了子图向量,并且知识图谱嵌入的训练本身就保留了附近邻域的信息。 基于章节3.3实验参数基本设置及超参数调节,对基于知识表示增强的类案推荐模型KRE进行实验分析及性能评估。本文选取NFM[16]模型、KGNN[11]模型、CKAN[18]模型、KGCL[19]模型在数据集LeCaRD上进行实验,分析指标F1@5、F1@10、NDCG@10、NDCG@30的变化,进一步对比分析模型性能。KRE模型与其它4种模型的实验对比结果见表3。 表3 不同模型性能指标比较 由表3可得,KRE模型在4个计算指标上相较于其它4种模型都取得了最好的结果。首先,当Top-K推荐数都为10,所有模型的NDCG@10的评价指标值较高,由此得出,推荐列表排序越靠前,模型准确率越高;其次,对于F1@K和指标NDCG@K,推荐数越大,模型性能表现越好,这是因为模型推荐列表个数K值的小幅度增加会提高F1@K和NDCG@K的值,进而提升模型性能。最后,从表中看出,基于知识图谱的算法改进模型相比没有使用知识图谱信息的模型NFM,F1@K和NDCG@K取值均较大,从而模型推荐性能更好。由此验证,知识图谱技术对推荐模型性能有一定的改进作用。然而,基于知识图谱技术的模型KGNN相比其它模型,表现不是很好,这是因为KGNN模型主要依赖节点的邻域信息,而邻域拓扑结构对推荐模型性能改善并不是很大,导致知识图谱信息没有更好运用,从而使得KGNN模型性能较差。而基于知识图谱技术的模型KGCL相比其它模型,表现较好,这是因为KGCL模型对知识图谱嵌入进行改进,通过加入对比学习来抑制图谱嵌入学习时存在的噪声和长尾分布问题,增加知识嵌入,丰富模型知识表达能力,提升模型推荐性能。 此外,本文还对模型进行了消融实验,讨论本文提出的各个模块对推荐模型的贡献情况,结果见表4。 表4 消融实验结果 表4中w/o表示去掉某一模块但不影响模型的整体训练。模块部分包括翻译距离嵌入(TransE)、语义相似嵌入(SME)两种基础嵌入模块,消融实验的对比结果表明两种不同方式的向量嵌入有互补效果;子图嵌入(sub graph,SG)、注意力嵌入(attention,Att)两种变体嵌入模块,实验对比结果显示去掉这两个模块对模型结果都有较大的影响,说明子图嵌入与注意力嵌入的融合对提升模型准确率有明显的作用;点击预测模块,将模型AFM替换为多层感知器(multilayer perceptron,MLP)预测,从结果上看,在预测阶段使用注意力将两个案件的表示向量进行交互有一定的效果;最后w/oALL为参照组,表示只保留基础嵌入模块TransE和MLP预测,验证本文提出的模型的效果以及其组成部分的有效性。 综上分析,本文提的KRE模型在F1@K和NDCG@K下表现均优于其它模型,这是因为KRE使用知识图谱信息作为辅助,通过融合子图嵌入和注意力嵌入知识,增加模型嵌入知识,并通过文本卷积网络增强知识表示,使得模型具备丰富的知识表达能力,更深层次理解语义及关系,从而提升模型推荐性能。 本文提出一种基于知识表示增强的类案推荐模型,基于知识图谱构建网络拓扑结构,通过图增广技术筛选有效的案件知识实体及关系,并融合子图嵌入和注意力嵌入进行案件知识表示,使模型对案件知识具备更丰富的表达能力,最后,采用文本卷积神经网络进行案件知识表示增强,进一步挖掘模型对案件知识的语义理解力,最终提升模型的推荐性能。本文在数据集LeCaRD上进行实验分析,得出基于知识表示增强的类案推荐模型有较好的性能。在后续的工作中,计划针对推荐模型与图谱嵌入学习的联合进行深入研究。2.4 模型训练
3 实验结果与分析
3.1 数据来源
3.2 评价指标
3.3 实验环境及超参数
3.4 实验结果及分析
4 结束语