南京大学学报(自然科学), 2021, 57(6): 1053-1063 doi: 10.13232/j.cnki.jnju.2021.06.014

基于司法案例知识图谱的类案推荐

黄治纲1, 谢新强,1,2, 邢铁军1, 葛东1, 蔡晨秋1, 窦丽莉1, 王天翊1

1.东软集团股份有限公司,沈阳,110179

2.计算机科学与工程学院,东北大学,沈阳,110169

Case recommendation based on knowledge graph of judicial cases

Huang Zhigang1, Xie Xinqiang,1,2, Ge Dong1, Dou Lili1, Cai Chenqiu1, Dou Lili1, Wang Tianyi1

1.Neusoft Corporation,Shenyang,110179,China

2.School of Computer Science and Engineering,Northeastern University,Shenyang,110169,China

通讯作者: E⁃mail:xiexq@neusoft.com

收稿日期: 2021-06-16   网络出版日期: 2021-12-03

基金资助: 国家重点研发计划.  2018YFC0831200

Received: 2021-06-16   Online: 2021-12-03

摘要

近年来,伴随着人工智能的发展及法院裁判文书的公开化,“智慧司法”、案例推荐成为热点问题.针对案例推荐中存在的推荐准确性差、传统知识图谱向量化表示精度不高等问题,提出基于知识图谱的案件推荐(Knowledge Graph based Case Recommendation,KGCR)模型.该模型以知识图谱为辅助信息,利用文本分类和信息抽取技术构建面向刑事案例的知识图谱,针对当事人的陈词供述,利用知识表示学习求解相似的案件,进一步实现法条推荐.针对TransH算法的负采样问题进行改进,提出FU⁃TransH算法模型.以公开的刑事判决书为数据集进行实验,实验结果表明,与相关的具有代表性的算法相比,该算法的推荐准确率更高.

关键词: 知识图谱 ; 信息抽取 ; 表示学习 ; 法条推荐 ; 类案推荐

Abstract

In recent years,with the development of artificial intelligence and the openness of court judgment documents,intelligent justice and case recommendation have become hot issues. Aiming at the problems of poor recommendation accuracy,low accuracy of vectorized representation of traditional knowledge graphs in case recommendation. This paper proposes Knowledge Graph based Case Recommendation (KGCR) model,which uses knowledge map as auxiliary information to solve similar cases. It uses text classification and information extraction technology to build a knowledge map for criminal cases,and uses knowledge representation learning to solve similar cases according to the confession of the parties. Aiming at the negative sampling problem of TransH algorithm,the Fu⁃TransH algorithm is proposed. The experimental results show that,compared with the representative algorithms,the proposed algorithm can improve the recommendation accuracy and recall rate.

Keywords: knowledge graph ; information extraction ; representation learning ; legal recommendation ; case recommendation

PDF (1246KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

黄治纲, 谢新强, 邢铁军, 葛东, 蔡晨秋, 窦丽莉, 王天翊. 基于司法案例知识图谱的类案推荐. 南京大学学报(自然科学)[J], 2021, 57(6): 1053-1063 doi:10.13232/j.cnki.jnju.2021.06.014

Huang Zhigang, Xie Xinqiang, Ge Dong, Dou Lili, Cai Chenqiu, Dou Lili, Wang Tianyi. Case recommendation based on knowledge graph of judicial cases. Journal of nanjing University[J], 2021, 57(6): 1053-1063 doi:10.13232/j.cnki.jnju.2021.06.014

近年来,我国不断深入推进“智慧司法”建设.随着中国裁判文书网、中国庭审公开网等平台的相继建成运行,我国司法公开达到前所未有的广度和深度,以案例信息为基础构建知识图谱将产生巨大价值.知识图谱是用于描述海量实体、实体属性及实体间关系的有效工具,随着语义网络的快速发展,互联网上出现了大量的知识图谱,如国外的YAGO和国内的开放中文知识图谱OpenKG,CN等.但以上知识图谱都是面向通用领域的,面向专业领域尤其是司法领域的知识图谱寥寥无几.本文以刑法案例为例,构建刑法知识图谱,提出基于知识图谱特征学习的案情分析和相似的案例匹配以及相关的法条推荐.

1 相关理论

1.1 智能司法的相关研究

对智能司法国内外都有相关的研究.国外,Winkels et al1发明了一种基于荷兰案例法的法律推荐系统,Kim et al2建立了一个结合法律信息检索和文本蕴含的法律问答系统.国内,陈彦光等3在公开的30余万份涉毒类案件中抽取实体建成了关于涉毒案件的知识图谱;马灿4提出“智慧司法”的知识图谱构建,并实现了关于案件的查询系统;乔钢柱等5实现了基于知识图谱的盗窃案件推理;张虎等6提出基于多模型融合的法条推荐方法,提高了法条推荐的准确率;叶菁菁7提出结合文本相似性和协同过滤技术的法条推荐,协同过滤缩小了备选法条的范围,解决了法条数目过多导致模型训练困难的问题;殷玥8利用神经网络提出基于注意力机制的循环卷积神经网络的法条推荐算法.

1.2 知识图谱推荐相关研究

知识图谱中不同实体间的联系十分丰富,它将实体间的关联形式化,构建中融合了实体间丰富的语义信息,因此能在一定程度上解决数据稀疏与冷启动问题.通过知识图谱进行推荐来提高推荐系统性能,已成为当下研究的一个热点9.

知识图谱表示学习的目的是在不丢失知识图谱固有结构的条件下将知识图谱中的实体和关系嵌入向量空间,使用数值化向量对实体和关系进行表示,并对语义信息进行保留.表示学习获得广泛关注源于Mikolov et al9对词向量空间平移不变现象的研究.Mikolov et al提出并实现了Word2Vec词表示学习模型和工具包,使表示学习进入实际应用领域10.知识表示学习的主要方法有距离模型11、多层神经网络12、张量神经网络模型13、矩阵分解模型14和翻译模型15.由于翻译模型在性能上提升巨大,不仅大大降低参数数量,还提升了准确率,因此翻译模型成为目前知识表示学习的代表模型.

基于知识图谱表示学习的推荐将知识图谱中丰富的实体间关联关系融入推荐过程,能够更好地对实体之间的相似性进行评估.翻译模型算法将知识图谱中的实体嵌入向量空间,通过实体向量对实体间的相似性进行评估,兼具准确高效的特点,因此在目前的推荐研究中获得广泛关注.

Hu et al16构建个人兴趣点敏感知识图谱,使用翻译模型算法进行实体向量化,通过相似度计算实体间相似度进行推荐.Zhang et al17提出CKE (Collaborative Knowledge Base Embedding)推荐系统框架,对知识图谱的结构、文本及图像进行综合考虑,使用翻译模型算法对知识图谱中的结构信息进行处理得到实体的向量特征,然后融合文本信息和图像信息得到用户推荐列表.Wang et al18将新闻内容中的每个单词与知识图中的相关实体相关联,通过翻译模型中的TransD算法获得知识的嵌入向量,将向量信息引入项目信息并形成推荐.

2 司法案例知识图谱构建

2.1 命名实体识别介绍

命名实体识别(Named Entity Recognition,NER)是自然语言处理的一个基础任务,目的是识别语料中人名、地名、组织机构名等命名实体.信息抽取就是从非结构化的文本中抽取结构化的数据和特定的关系.例如:“小李在1996年从清华大学毕业”,其中“小李”“1996年”“清华大学”都是命名实体,而这些实体包含了极为重要的信息:人物、时间、组织,其他词将这些实体串起来,才能表达这句话的完整语义.在一些专业领域,如化学、医药领域,经常出现如四氧化三铁、阿尔兹海默症等专业词汇,只通过简单的分词很难将这些重要的关键词汇识别出来,在这样的场景下NER就能发挥威力.传统的命名实体识别任务使用基于统计的机器学习方法将任务转化为序列标注或者分类问题.例如:冯静等19基于隐马尔可夫模型对桥梁检测文本进行命名体识别;王昌厚20提出条件随机场模型解决中文命名体识别问题;为了在特定领域提高命名实体识别效果,程名等21融合注意力机制和BiLSTM⁃CRF (Bi⁃Long Short⁃Term Memory⁃Conditional Radom Field)使模型有效学习上下文结构特征:注意力机制能输出不断变化的语义向量,可有效解决长序列语义稀释问题,BiLSTM⁃CRF模型将从文本中进行实体和属性抽取等问题转化为序列标注任务进行解决.

2.2 实体关系分析

知识图谱中的关系定义为两个或多个实体之间的某种联系,实体关系学习就是自动从文本中检测和识别出实体之间具有某种语义的关系,也称为关系抽取.关系抽取的结果通常是一个三元组1,,2.目前典型的实体关系抽取方法有基于规则的关系抽取、基于机器学习的关系抽取等.基于规则的关系抽取方法首先由通晓语言学知识的专家根据抽取任务的要求设计一些包含词汇、句法和语义特征的手工规则(或称为模式),然后在文本分析中寻找与这些模式匹配的实例,从而推导出实体之间的语义关系.基于机器学习的关系抽取方法,按照机器学习的方法对于语料库的不同需求大致分为三类:无监督关系抽取、有监督关系抽取和弱监督关系抽取.无监督关系抽取把相同关系的模板聚合起来,不需要人工标注的数据,自动提取实体关系.有监督关系抽取使用人工标注的语料进行训练,这种方法是目前效果最好的,但是需要大量的人力标注,费时费力.因此有学者提出利用知识库回标文本自动获取大量的弱监督数据.基于上述基本原理,结合法院判决书数据内容,本文识别了四种实体以及四种关系.

2.2.1 实体及其属性分析

本文中的实体包括案件、诉讼对象、法院以及审判人员.

案件是法院知识图谱的核心概念.为了对案件进行充分描述,突出案件的重点信息,在知识图谱中案件实体的属性包括相关法条、案件名称、审判结果、结案时间以及案发地点.

诉讼对象是被审判的一方,在案件审理中处于被告地位,一般包含的属性有性别、籍贯、文化水平、姓名以及出生日期.

法院是案件审判的司法机关,一般属性包括法院名、地区以及审判人员数量.

审判人员,俗称法官,是判决书中的重要组成实体.审判人员的属性包含角色、姓名和ID,角色是指某一个审判人员在案件审理中的具体角色,例如审判长.

2.2.2 实体关系分析

在关系方面,以案件为核心,将案件与法院、审判人员、诉讼对象之间的关系进行知识图谱的语义关系定义.一共定义四种实体之间的四种逻辑关系:诉讼对象和案件是Accused(被起诉)关系;审判人员和案件是Judge(审判)关系;审判人员和法院是Work(工作)关系;法院和案件是Accepted(被受理)关系.具体实体及实体间的关系如图1所示.

图1

图1   四种实体及其关系

Fig.1   Four entities and their relationships


2.3 实体及其关系词的提取

确定了知识图谱中需要包含的实体以及实体之间的关系,接下来就需要从法院判决书中将这些数据抽取出来.针对从法律文书中自动提取关键词的问题,现有的解决方法大多基于二分类的思想,但这种方法忽略了单词之间的关联性,无法通过联系上下文来准确把握文书的有效信息,而BiLSTM⁃CRF的关键词抽取模型可以解决这一问题.关键词自动抽取模型包含三部分:(1)对法律文书进行分词和词性标注的预处理;(2)将处理后的文本利用Word2Vec模型进行Word Embedding向量化;(3)使用BiLSTM⁃CRF进行关键词的自动抽取.

2.3.1 分词和词性标注

对于分词和词性标注,本文利用一个开源的分词工具NLPIR大数据语义智能分析平台(https:∥github.com/NLPIR⁃team/NLPIR).NLPIR大数据语义智能分析平台针对大数据内容处理的需要,融合网络精准采集、自然语言理解、文本挖掘和网络搜索技术等13项功能,将词项按照其词性分为名词、动词、数词、量词、副词、形容词、区别词、状态词、介词、代词和连词等不同的类别.不同词性的词项在表述案情时的重要性也不同,而具体到案情的分词以及词性标注情况参照图2所示.

图2

图2   案情分词及词性标注

Fig.2   Case segmentation and part⁃of⁃speech tagging


2.3.2 BiLSTM⁃CRF模型

BiLSTM同时考虑过去和未来的特征,既能捕捉从前到后的信息,也能捕捉从后到前的信息,在序列标注中BiLSTM已被证实比LSTM效果更好.BiLSTM⁃CRF模型将实体和属性抽取等问题转化为序列标注任务:把句子中的每个词转换为词向量,利用Bi⁃LSTM处理分布式向量得到句子特征,使用CRF标注并抽取实体.BiLSTM⁃CRF的结构如图3所示.第一层(Look⁃up Layer)将每个字由One⁃hot向量映射为低稠密的字向量.第二层双向LSTM层将一个句子的各个字的字向量序列作为双向LSTM各个时间步的输入,再将正向LSTM输出的隐序列与反向LSTM的各个位置输出的隐状态进行按位置的拼接,得到完整的隐状态序列.第三层CRF对各标签的之间的转移概率进行建模,然后在所有的标签序列中选取一条最优结果,进而完成句子级的序列标注.这里使用BIO标注的方法来定义所有的命名实体(人名、地名、法院名、时间等),如人名的首个汉字用B⁃PER表示,其余用I⁃PER表示.BiLSTM⁃CRF网络将BiLSTM的输出,也就是每个单词对应的标签的值输入CRF,通过CRF预测最终的标签序列.

图3

图3   BiLSTM⁃CRF模型

Fig.3   BiLSTM⁃CRF model


2.4 知识图谱存储

按照存储方式的不同,知识图谱的存储可以分为基于表结构的存储和基于图结构的存储.基于表结构的存储是利用二维的数据表对知识图谱中的数据进行存储,如三元组表、类型表、关系数据库.基于图结构的存储是利用图的方式对知识图谱中的数据进行存储,如图数据库.常见的图数据库包括Neo4j,titabDB以及ArangoDB等,本文利用Neo4j建立司法知识图谱.Neo4j是一个高性能的NOSQL图形数据库,是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但它将结构化数据存储在网络(从数学角度叫作图)上而不是表中.Neo4j也可以看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性,它提供了大规模可扩展性,在一台机器上可以处理数十亿节点/关系/属性的图,可以扩展到多个机器上并行运行.Neo4j重点解决了拥有大量连接的传统RDBMS (Relational Database Management System)在查询时的性能衰退问题,还提供了非常快的图算法、推荐系统和OLAP (Online Analytical Processing)风格的分析.将抽取的实体和实体属性导入Neo4j图数据库,按照实体间的关系建立知识图谱.具体的知识图谱如图4所示.

图4

图4   司法知识图谱

Fig.4   Judicial knowledge graph


3 基于知识图谱的相似类案推荐模型

本节提出基于知识图谱的案件推荐模型(Knowledge Graph based Case Recommendation,KGCR),其整体框架如图5所示:(1)首先对传统的TransH算法进行改进,提出基于图聚类向量优化的案件知识图谱表征学习方法(FU⁃TransH),旨在提高实体向量化的准确性;(2)在构建的司法案例知识图谱基础上,利用改进的向量表征方法(FU⁃TransH)对司法案件知识图谱中所有的实体和关系进行向量化表征(Embedding)学习;

图5

图5   基于知识图谱的案件推荐模型KGCR整体框架

Fig.5   The framework of knowledge graph based case recommendation


(3)在FU⁃TransH方法构建的知识图谱向量表征基础上,给出基于欧式距离的相似案件计算方法;(4)在上述相似案件计算的基础上,给出相似案件的推荐过程.

3.1 TransH算法改进

翻译模型的目的是使用向量对实体和关系进行向量化表示,将知识图谱中的实体和关系表示在向量空间中,并能对知识图谱的固有结构以及语义信息进行保留.Bordes et al22提出的TransE算法是翻译模型的代表算法.TransE算法对实体间一对一的关系有较好的结果,但对一对多、多对一和多对多的关系处理效果较差,主要是因为TransE在同一个平面上对实体和关系进行向量表示,因此在非一对一关系的情况下无法准确区分相似实体,造成不同实体的区分度不足,进而造成无法区分复杂关系的问题23.为了能够处理实体间复杂的关系,方阳等24提出TransH算法,通过建立面向关系的超平面模型来改善上述问题.

3.1.1 TransH算法及其不足

TransH对于知识图谱中每一种实体间的关系r,将r对应的向量dr放在关系特定的超平面lnr(法向量)上,而不是与实体表示在同一个平面中.这样向量的投影满足式(1)即可,因此对不同实体具有更加准确的区分.对于一个三元组h,r,th表示图谱中的头节点,t表示尾节点,r是节点链接关系.ht先被映射到超平面nr*上,假设ht在超平面上的表示为lhrltr,在超平面上将lhrltr和关系r对应的向量dr联系起来可以得到三元组的得分函数:

frh,t=lhr+dr-ltr22

根据向量表示,通过原本实体向量、关系向量及法向量对映射向量进行表示,当对lnr进行lnr2=1的限制时,映射向量可表示为式(2)和式(3):

lhr=h-lnrT*h*lnr
ltr=t-lnrT*t*lnr

综合式(2)和式(3)可以得到使用超平面模型之后最终的得分函数,如式(4)所示:

frh,t=h-lnrT*h*lnr+dr-t-lnrT*t*lnr2

根据最终得分函数,可以得到如式(5)所示的损失函数:

L=h,r,tKh',r,t'K'λ+frh,t-frh',t'

其中,K表示正确的三元组集合,K'表示错误的三元组集合,λ表示调节因子,为训练时样本中正确三元组与样本中错误三元组之间的距离边界,一般设为非负整数.当最小化损失函数时考虑式(6)、式(7)和式(8)所示的约束条件:

h,tE,lh21,lt21
rR,lnrT*dr/dr2ε
rR,lnr21

其中,E表示实体集合,dr表示关系r的特征向量,ε是常量.约束1保证实体向量长度不超过1,约束2保证lr在超平面上,约束3保证法向量为单位法向量.

TransH根据关系的一对多、多对一的性质,使用不同的概率进行头尾实体替换,获得负样本,替换时随机选取实体进行替换.TransH的向量表示形式如图6所示.

图6

图6   TransH算法的向量表示

Fig.6   The vector representation of TransH


TransH通过拉大正确三元组与错误三元组的距离对目标函数进行优化,因此在TransH目标函数的优化过程中,训练样本不仅要有正确的三元组,还要有相应的错误三元组.知识图谱中的全部三元组构成正确的三元组集合.原有的负采样算法对于每一个正确的三元组h,r,t替换头实体或者尾实体时,从所有实体集合中随机抽取实体进行替换得到一个新的三元组,将这个新三元组作为负例三元组加入训练样本.

但是TransH原有的负采样算法存在两个不足:一是将正确三元组当作负例三元组,影响算法的准确性;二是得到的负样本因为得分过高导致参数不进行更新,使此次训练对向量的获得没有意义.为了解决TransH原有负采样算法的不足,本文提出FU⁃TransH算法,通过图聚类对TransH的负采样算法进行改进,提高实体向量化的准确性.

TransH算法将每个实体和关系以向量的形式嵌入向量空间,对于每个正确三元组h,r,tht在超平面的投影lnrltr和关系向量lr应该满足.因为相似实体在空间中距离很近,因此在向量化结果中,可能得到错误的链路预测.

3.1.2 基于图聚类的TransH算法改进

通过以上分析可以看到,替换正确三元组的实体生成负例时,在替换实体的相似性实体中选择能够使参数有效更新,同时也能拉大易混淆三元组的距离.而且在算法迭代次数较少、实体向量表示没有满足知识图谱结构时,从非相似实体中选择实体替换能够降低将正确三元组当作负例三元组的概率.知识图谱由大量三元组构成,不同的实体之间具有大量联系,图聚类算法能够将知识图谱中关系更紧密的相似实体聚集在一起,因此本文使用图聚类算法对知识图谱中的实体进行聚类,将相似实体划分到同一社区.

Fast Unfolding是通过模块度进行社区划分判断的自底向上的图聚类算法25.模块度可以衡量与评价社区划分的优劣,通常将模块度最大的社区划分作为最优社区划分.模块度(Modula⁃rity)指网络中连接社区结构内部顶点的边所占的比例减去在同样的社团结构下任意连接这两个节点的比例的期望值.模块度是度量社区划分优劣的重要标准,划分后的网络模块度值越大,说明社区划分的效果越好.Fast Unfolding算法便是基于模块度对社区划分的算法,它是一种迭代算法,主要目标是不断划分社区使划分后的整个网络的模块度不断增大.

本文使用Fast Unfolding算法对知识图谱进行社区划分,通过模块度对社区的划分进行衡量,最终得到模块度最大的社区划分.模块度采用式(9)进行计算:

Q=12mi,jAi,j-kikj2mδci,cj

其中,Q表示模块度;m=i,jAij表示图谱中所有关系的权重和;Aij表示拥有关系的节点i和节点j之间关系的权重;ki=jAij表示与节点i连接的边的权重;ci表示节点i被划分到的社区;δci,cj是表示函数值,当节点i与节点j被划分在同一个社区时值为1,若不在同一社区值为0.在本文构建的Web服务知识图谱中,每种关系不存在权重的概念,因此将节点间的权重都设为1.

Fast Unfolding算法的过程如下:

(1)初始化,将每个点划分在不同的社区中.

(2)尝试将每个节点与其邻接节点划分到同一社区中,计算划分后的模块度与进行此次划分之前模块度的差值.若差值为正数则模块度增大,本次的划分作为正确划分被接受;若差值不为正数,则视为错误划分被放弃.

(3)重复以上的过程,直到不能再增大模块度为止.

(4)使用步骤(3)划分的社区构造新图,继续执行步骤(2)和步骤(3),当社区的结构不再改变时停止.

将知识图谱中所有三元组变为,,1的形式作为Fast Unfolding算法的输入,通过Fast Unfolding算法将知识图谱中的实体节点划分为n个社区,定义为C1,C2,,Cn,其中每个社区中的实体相似度较高.

针对原有的负采样算法的问题,FU⁃TransH算法在不同迭代次数时使用不同的负采样方案.负采样过程进行实体替换时,对三元组h,r,t中不同的关系r替换头实体或尾实体得到正确负例的概率不一样.在一对多关系中,替换头实体得到正确负例的可能更大;在多对一关系中,替换尾实体得到正确负例的可能更大.具体地,对于每个关系r所在的所有三元组,计算每一个头实体对应的尾实体的平均数量,记为tph,统计每一个尾实体对应的头实体的平均数量,记为hpt.得到tphhpt后,计算替换概率p,如式(10)所示:

p=tphtph+hpt

计算出p后,对于给定的正确三元组h,r,t,在进行负样本采集替换时,将头实体替换概率设置为p,则尾实体替换概率为1-p.

例如,若知识图谱中对于关系r仅有h1,r,t1h2,r,t2以及h3,r,t1三个三元组,头节点h1h2h3只对应一个尾节点,因此tph=(1+1+1)/3,即1;尾节点t1对应两个头结点,尾节点t2对应一个头节点,因此hpt=(2+1)/2,即1.5.所以p=0.4,那么在构建关系r的三元组的负样本时,替换头节点的概率为0.4,替换尾节点的概率为0.6.

本文采用改进了负采样方法的TransH算法,即FU⁃TransH算法.FU⁃TransH的损失函数与TransH相同,在训练过程中使用随机梯度下降算法进行参数的更新.下面介绍算法步骤:

(1)首先采用随机方式对实体、关系和法向量的嵌入向量进行符合均匀分布的初始化,初始化之后进行归一化处理.每一个实体、关系以及法向量初始化的方式如式(11)所示:

v=uniform-6k,6k

其中,uniform是均匀分布函数,k代表向量的维度.归一化的方式如式(12)所示:

v=vv

(2)令迭代次数k为1,最大迭代次数为epoch,分割参数为ω,训练样本大小为batchsize.

(3)令循环次数j为1.

(4)选取一个batchsize的正确三元组样本组成集合Sbatch.

(5)取Sbatch中的一个正确三元组h,r,t.

(6)求h,r,t的负例三元组,如果迭代次数k小于ω×epoch,则从不包含替换实体的社区中选择实体,根据替换概率来替换三元组的头实体或尾实体;否则,从包含替换实体的社区中选择实体进行替换.

(7)根据目标函数,计算正样本梯度,根据梯度下降速率a更新正确三元组中实体和关系对应的向量;计算负样本梯度,根据梯度下降速率a更新负例三元组中实体和关系对应的向量.

(8)取Sbatch的下一个正确三元组,如果能取到,返回步骤(6),否则转步骤(9).

(9)循环次数j加1,当j小于等于知识图谱实体总数除以batchsize时,返回步骤(4).

(10)迭代次数k加1,如小于等于设定迭代次数返回步骤(3),如大于设定迭代次数结束,输出知识图谱的实体和关系的向量集合.

3.2 基于知识图谱的相似案件推荐过程

本文提出的通过知识图谱辅助的相似案件推荐方法的具体流程如图7所示,其推荐过程主要包括:(1)对当事人陈述的供词进行文本处理;(2)将分词后的当事人陈述组成三元组;(3)抽取法律裁判文书中的关键信息;(4)根据抽取的关键信息建立知识图谱;(5)将基于陈词供述生成的三元组和基于裁判文书生成的知识图谱进行实体对齐,此处采用余弦相似度度量方法并结合人工干预的方法实现实体对齐;(6)利用改进的TransH算法将案件向量化;(7)根据欧式距离求解Top⁃m个与当事人相似的案例并推荐出来.

图7

图7   相似类案推荐流程图

Fig.7   Similar case recommendation process


3.2.1 案例相似度计算

在实体向量空间中,每个案例实体都表示成si=e1i,e2i,e3i,,eniT的形式.为了准确衡量案例之间的语义相似度,使用欧氏距离来计算服务的相似度.两个案例之间的距离体现案例的语义相似性,所以先计算案例之间的距离.欧氏距离也称欧几里得距离或欧几里得度量,是一个通常采用的距离定义.案例sisj之间的距离为两个k维向量e1i,e2i,e3i,,ekie1j,e2j,e3j,,ekj之间的距离,如式(13)所示:

dsi,sj=m=1kemi-emj2

其中,dsi,sj表示向量之间的欧式距离.假设案例的相似度用simcasei,j来表示,则其实现方式可以通过式(14)进行计算,目的是把相似度限制在0,1

simcasei,j=11+dsi,sj=11+m=1demi-emj2
3.2.2 相似案例推荐

本文的KGCR模型将案例和当事人作为实体嵌入一个低维空间,计算当事人与案例之间的相似度后将其存到相似度矩阵,根据矩阵取与当事人最相似的TOP⁃m个案件作为最终的推荐对象,并根据知识图谱推荐案件的相关法条.

关于当事人陈词供述的文本处理,内容与前文的关键词提取等内容相同,这里不再复述.在提取关键词后组成,,这样的三元组,利用FU⁃TransH算法求解其实体法向量并根据案例相似度计算公式求解相似案例,具体推荐结果如图8所示.

图8

图8   相似案例的法条推荐

Fig.8   Recommendations for similar cases


4 实验结果及分析

本文实验分两个部分:一是链路预测;二是评估模型的精确度和召回率.

4.1 链路预测实验设计 

链路预测的主要任务是,对于一个完整的三元组h,r,t,给定h,r预测t或给定h,t预测r,从而验证模型预测实体的能力.选择三类不同的模型进行对比实验:第一类是基于TransE的距离模型,以TransE,TransH为代表;第二类是以SME (Structure Mapping Engine)为代表的语义匹配模型;第三类是基于矩阵分解的RESCAL(Research And Special Collections Available Locally)模型.

评价指标:为了验证测试模型好坏采用平均排序得分(Mean Rank,MR)和排序不超过10的百分比(HITS@10)两个评价指标25.MR是针对一系列查询Q返回排名ranki的平均值,其定义分布如下:

MR=1Qi=1Qranki

HITS@N表示排名在前N名所占的比例,定义如下,如果rankiNσxNranki=1,否则,σxNranki=0.

HITS@N=1Qi=1QσxNranki

在排名过程中将一个正确的三元组a中的头实体或者尾实体依次替换为整个知识库中的所有其他实体就会产生n个三元组.分别计算这n个三元组的能量,例如在TransE算法中就是计算h+r-t,可以得到n个能量,分别对应n个三元组.对n个能量进行升序排序,记录三元组a的能量排序后的序号.对所有的正确三元组重复上述过程.对每个正确三元组的能量排序后的序号求平均,得到的值即为Mean Rank.计算正确三元组的能量排序后的序号小于10的比例,得到的值即为HITS@10.Mean Rank越低,HITS@10越高,实验结果越好.但上述过程存在一个不合理的地方:在将一个正确的三元组a的头或者尾实体替换成其他实体之后得到的这个三元组也有可能是正确的,在计算每个三元组的能量并排序之后,这类正确的三元组的能量有可能排在三元组a的前面,但是上述的基本评价过程没有考虑这点.为了避免这样的错误,记录三元组a的能量排序后的序号k,如果前k-1个能量对应的三元组中有m个三元组也是正确的,那么三元组a的序号改为k-m;然后对所有正确的三元组重复上述过程.原始方法称为Raw,新的方法称为Filter.以公开的数据集FB15K进行实验,具体实验数据如表1所示.

表1   几种算法的模型预测能力对比

Table 1  Model prediction ability of several algorithms

ModelMean RankHITS@10
RawFilterRawFilter
RESCAL78068029.832.2
SME28017033.539.6
TransE2108241.961.3
TransH2026745.764.4
FU⁃TransH1905449.873.6

新窗口打开| 下载CSV


表1可见,在处理三元组数据时,TransH算法比前面的几个传统算法有很大提升.和TransE相比虽然提升较少,但TransH处理这种多对多关系的三元组数据明显优于TransE算法.

4.2 算法对比分析

4.2.1 数据集

从裁判文书网抽取55000份裁判文书作为数据集进行实验.为了提高推荐的准确性,去掉了某些低频的罪名并对裁判文书进行文本预处理及信息抽取,数据包含案件、罪名、法条,如表2所示.

表2   实验使用的数据集

Table 2  Datasets used in experiments

数据集类型案件数量罪名数量法条数量
训练集50000120101
测试集5000120101

新窗口打开| 下载CSV


4.2.2 评价指标

选用准确率(Precision,P)、召回率(Recall,R)和F值(F⁃measure)来评估实验效果.准确率表示被分为正例的示例中实际为正例的比例.召回率度量法条推荐结果的覆盖度,是推荐正确的法条占实际引用的法条的比例.F值是一个综合评价指标,可对准确率和召回率进行综合评价.另外,TP(True Positive)表示分到正确罪名的案例文本数量,FP(False Positive)表示其他类的案例被分到错误罪名中的案例文本数量,FN(False Negative)表示推荐列表中没有推荐而用户行为发生了的样本.由此,准确率的计算如式(17)所示:

P=TPTP+FP

召回率的计算如式(18)所示:

R=TPTP+FN

F值的计算如式(19)所示:

F=2PRP+R

4.2.3 实验对比

选取LDA⁃CNN (Linear Discriminant Analysis⁃Conventional Neural Network)模型7、A⁃RCNN模型8、CNN融合模型6以及KGCR模型在本文的数据集上进行实验.LDA⁃CNN模型先通过LDA模型对案件进行向量化,然后利用球树算法计算特征间的欧几里得距离得到最相似的m个案件.A⁃RCNN模型获取文本的上下文信息和句法信息后,通过联合训练多个二分类器提高运算效率,实现法条推荐任务.CNN融合模型通过分析法律文书的事实描述和法条的具体司法解释,挖掘司法文书事实描述部分的特征,能较好地解决单一案例事实描述对应多个法条的推荐问题.四个模型的对比实验结果如表3所示.

表3   四种模型的对比实验结果

Table 3  Experimental results of four algorithms

ModelPrecisonRecallF
LDA⁃CNN0.610.520.56
A⁃RCNN0.670.680.68
CNN融合0.820.810.82
KGCR0.860.850.86

新窗口打开| 下载CSV


由表可见,FU⁃TransH算法借助知识图谱计算相似度的方法能更好地反映各案例之间的关系,而单纯利用基于词频的传统机器学习算法来计算案例相似度忽略了案件本身、案件和案件之间的潜在关系,将知识图谱作为辅助信息能有效地提升相似案例推荐的精确性.KGCR模型与以往的模型相比在准确率和召回率上都有明显的提高,证明了本文提出的基于司法案例知识图谱的类案推荐模型在相似案例推荐任务上的有效性.

5 结 论

针对案例推荐中存在的推荐准确性差、传统知识图谱向量化表示精度不高等问题,提出基于知识图谱的司法案件推荐模型,以知识图谱为辅助信息,借助文本分类和信息抽取技术学习相似案件并实现相似案件推荐.此外,对TransH算法负采样存在的不足进行改进,提出FU⁃TransH算法模型.FU⁃TransH借助知识图谱计算相似度的方法能更好地反映各案例之间的关系,而且,将知识图谱作为辅助信息可有效解决冷启动和矩阵稀疏问题.实验结果表明,KGCR模型与以往的模型相比,在准确率和召回率上都有明显的提高,证明本文提出的基于司法案例知识图谱的类案推荐模型在相似案例推荐任务上的有效性.

参考文献

Winkels RBoer AVredebregt Bet al.

Towards a legal recommender system

International Conference on Legal Knowledge and Information Systems. Krakow,2014169-178.

[本文引用: 1]

Kim M YXu YGoebel R.

Legal question answering using ranking SVM and syntactic/semantic similarity

JSAI International Symposium on Artificial Intelligence. Springer Berlin Heidelberg,2014244-258.

[本文引用: 1]

陈彦光刘海顺李春楠.

基于刑事案例的知识图谱构建技术

郑州大学学报(理学版),201951(3):85-90.

[本文引用: 1]

Chen Y GLiu H SLi C Net al.

Know⁃ledge graph construction techniques based on criminal cases

Journal of Zhengzhou University (Natural Science Edition),201951(3):85-90.

[本文引用: 1]

马灿. 面向“智慧法院”的知识图谱构建方法与研究. 硕士学位论文. 贵阳贵州大学2019.

[本文引用: 1]

乔钢柱冯婷婷张国晨.

基于知识图谱的盗窃案件法律文书智能推理研究

计算机系统应用,201928(7):206-213.

[本文引用: 1]

Qiao G ZFeng T TZhang G C.

Research on intelligent reasoning of legal documents in theft case based on knowledge graph

Computer Systems & Applications,201928(7):206-213.

[本文引用: 1]

张虎王鑫王冲.

面向法律裁判文书的法条推荐方法

计算机科学,201946(9):211-215. (Zhang H,Wang X,Wang C,et al. Law article prediction method for legal judgment documents. Computer

[本文引用: 2]

Science201946(9):211-215.

[本文引用: 2]

叶菁菁. 综合协同过滤和文本相关性的法条智能推荐技术研究. 硕士学位论文. 南京南京大学2019.

[本文引用: 2]

Ye J J. Research on intelligent statutes recommendation technology based on collaborative filtering and text relevance. Master Dissertation. NanjingNanjing University2019.

[本文引用: 2]

殷玥. 基于神经网络的法条推荐算法研究. 硕士学位论文. 南京南京师范大学2019.

[本文引用: 2]

Yin Y. Statutes recommendation algorithm based on neural networks. Master Dissertation. NanjingNanjing Normal University2019.

[本文引用: 2]

Hu YPeng Q MHu X Het al.

Time aware and data sparsity tolerant web service recommendation based on improved collaborative filtering

IEEE Transactions on Services Computing,20158(5):782-794.

[本文引用: 2]

刘知远孙茂松林衍凯.

知识表示学习研究进展

计算机研究与发展,201653(2):247-261.

[本文引用: 1]

Liu Z YSun M SLin Y Ket al.

Knowledge representation learning:A review

Journal of Computer Research and Development,201653(2):247-261.

[本文引用: 1]

Bordes AWeston JCollobert Ret al.

Learning structured embeddings of knowledge bases

Proceedings of the 25th AAAI Conference on Artificial Intelligence. Menlo Park,CA,USAAAAI Press2011.

[本文引用: 1]

Socher RChen D QManning C Det al.

Reasoning with neural tensor networks for knowledge base completion

Proceedings of the 26th International Conference on Neural Information Processing Systems. Red Hook,NY,USANIPS2013926-934.

[本文引用: 1]

Bordes AGlorot XWeston Jet al.

A semantic matching energy function for learning with multi⁃relational data

Machine Learning,201494(2):233-259.

[本文引用: 1]

Nickel MTresp VKriegel H P.

A three⁃way model for collective learning on multi⁃relational data

Proceedings of the 28th International Conference on International Conference on Machine Learning. Madison,WI,USAOmnipress201111809-816.

[本文引用: 1]

Wang ZZhang J WFeng J Let al.

Knowledge graph embedding by translating on hyperplanes

Proceedings of the 28th AAAI Conference on Artificial Intelligence. Menlo Park,CA,USAAAAI Press20141112-1119.

[本文引用: 1]

Hu S HTu Z YWang Z Jet al.

A POI⁃sensitive knowledge graph based service recommendation method

2019 IEEE International Conference on Services Computing (SCC). Milan,ItalyIEEE2019197-201.

[本文引用: 1]

Zhang F ZYuan N JLian D Fet al.

Collaborative knowledge base embedding for recommender systems

Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York,NY,USAACM2016353-362.

[本文引用: 1]

Wang H WZhang F ZXie Xet al.

DKN:Deep knowledge⁃aware network for news recom⁃mendation

Proceedings of 2018 World Wide Web Conference. Geneva,SwitzerlandInternational World Wide Web Conferences Steering Committee20181835-1844.

[本文引用: 1]

冯静李正武张登云.

基于隐马尔可夫模型的桥梁检测文本命名实体识别

交通世界,2020(8):32-33.

[本文引用: 1]

Feng JLi Z WZhang D Yet al.

Axial detection text named entity recognition based on hidden Markov model

Traffic World,2020(8):32-33.

[本文引用: 1]

王昌厚.

基于条件随机场的中文命名体识别

福建电脑,201228(2):8993.

[本文引用: 1]

程名于红冯艳红.

融合注意力机制和Bi⁃LSTM+CRF的渔业标准命名实体识别

大连海洋大学学报,202035(2):296-301. (Cheng M,Yu H,Feng Y H,et al. Fishery standard named entity recognition with integrated attention mechanism and

[本文引用: 1]

BiLSTM+CRF.

Journal of Dalian Ocean Univer⁃

[本文引用: 1]

sity202035(2):296-301.

[本文引用: 1]

Bordes AUsunier NGarcia⁃Duran Aet al.

Translating embeddings for modeling multi⁃relational data

Proceedings of the 26th International Conference on Neural Information Processing Systems NIPS. Cambridge,MA,USAMIT Press20132787-2795.

[本文引用: 1]

陈晓军向阳.

STransH:一种改进的基于翻译模型的知识表示模型

计算机科学,201946(9):184-189.

[本文引用: 1]

Chen X JXiang Y.

STransH:A revised translation⁃based model for knowledge representation

Computer Science,201946(9):184-189.

[本文引用: 1]

方阳赵翔谭真.

一种改进的基于翻译的知识图谱表示方法

计算机研究与发展,201855(1):139-150.

[本文引用: 1]

Fang YZhao XTan Zet al.

A revised translation⁃based method for knowledge graph representation

Journal of Computer Research and Development,201855(1):139-150.

[本文引用: 1]

Blondel V DGuillaume J LLambiotte Ret al. Fast unfolding of communities in large networks. Journal of Statistical MechanicsTheory and Experiment20082008(10):P10008.

[本文引用: 2]

/