一种面向司法的个性化案例推荐方法及系统
技术领域
本发明属于自然语言处理领域,具体涉及一种面向司法的个性化案例推荐方法及系统。
背景技术
传统基于案例案由,关键词等条件的搜索方法精确度较低,使得搜索推荐结果变差,工 作人员需要在推荐结果中进行二次筛选,极大影响了工作效率。为此,研究人员提出更精细 的个性化案例推荐方法,根据用户兴趣和行为记录,预测用户更期望的搜索结果。
个性化推荐研究目前主要集中于搜索引擎,电商,影视娱乐等场景。例如,谷歌的wide&cross,阿里的DIN,DIEN,华为的DeepFM等推荐算法,但这些算法主要研究点击率预测问题,而个性化推荐更应该视为一个有机系统。目前常用方案是协同过滤和基于知识图谱 的推荐方式,但是协同过滤需要用户数据较多,从而可以匹配到相似特征用户,否则会产生 冷启动问题。基于知识图谱的方式需要用户输入关键信息,然后在较为完备的知识图谱中搜 索相关知识,但是知识图谱的构建工作量大。此外,推荐系统常常考虑短时间序列的影响, 而无法实现长时间序列的挖掘,导致季节等长周期性影响因素的缺失。
发明内容
针对上述背景技术介绍中存在的问题,本发明提出一种面向长时间序列,基于半自动知 识图谱,解决用户数量少等条件下精准的面向司法的个性化案例推荐方法及系统。
本发明采用的技术方案是:
一种面向司法的个性化案例推荐方法,其包括:
S1,获取案例数据库,对案例文本进行结构化处理,构建案件要素知识图谱,并根据知 识图谱提取案例数据库中的案件要素,形成案件关键特征表;
S2,获取用户数据库,构建用户画像特征表;
S3,根据用户画像特征表结合案件要素知识图谱和案件关键特征表初步计算候选推荐列 表;
S4,根据候选推荐列表结合用户画像特征表给出最终推荐列表。
进一步,步骤S1中对文本案例进行结构化处理步骤如下:
S1.1,将案例文本分割为段落或句子为单元的文本片段,每个文本片段对应一个细分标 签,获得样本数据;
S1.2,将样本数据输入CNN文本分类模型,训练模型,根据预测细分标签和真实细分标 签的差距最小化来优化训练模型;
S1.3,待标注案例文本,输入训练好的CNN文本分类模型,输出待标注案例文本的预测 细分标签。
进一步,案件要素知识图谱的构建还包括利用半监督的方法更新案件要素知识图谱,具 体如下:
将案例文本结构化被分解为文本片段,以细分标签为类别归集;
对单标签对应的文本片段,按句子进行切割,筛选出句子形式的法律要素集Q;
根据案件要素知识图谱的基础事件图谱K,从法律要素集Q中筛选出标准要素句子集U, 结合标准要素句子集U建立起ki到ui的一对一元素手动映射,未经映射到事件图谱的要素 句子集为U’,其中ki为一个图谱的一个元素,K为整体图谱,标准要素句子集U和未经映射 到事件图谱的要素句子集U’组成法律要素集Q;
利用文本相似性度量方法,计算未经映射到图谱的要素样本u’i与ui的相似度,并根 据经验设定相似度阈值,大于阈值的标准句子要素作为原有图谱节点的下位样本被融合到基 础事件图谱,小于阈值的样本则归为离群样本集A;
对离群样本集A进行聚类,按聚类簇规模顺序进行事件图谱扩增判定。
进一步,更新案件要素知识图谱使用图谱嵌入算法,具体如下:
计算基础的案件要素知识图谱中事件节点间距离;
使用umap方法计算基于距离的降维映射模型;
计算新加节点与标准节点间的距离,使用umap映射模型计算嵌入位置。本发明通过图谱 嵌入可以使图谱节点更稠密,提高节点降维的准确性。
进一步,步骤S1中案件关键特征表的形成过程如下:
利用结构化方法对案件进行结构化,提取文本片段;
进行对文本片段进行句子分割,并利用sent-bert句子向量匹配到图谱标准句子要素, 匹配到的图谱节点即为关键特征,从而形成关键特征列表。
进一步,步骤S2中用户画像特征表包括兴趣特征、浏览历史、收藏案例列表。
进一步,步骤S3中候选推荐列表的计算步骤如下:
使用案件要素知识图谱和结构化,计算每个案例的多个维度上的知识特征,知识特征包 括最细级结构化类型,定义为Fs,以及细分图谱知识节点,定义为Fk;
利用独热编码将知识特征转为向量;
使用线性回归方法,计算各个特征的权重W;
利用方差最小化估计权值W,如下式所示
式中,i、j表示样本序号,ε表示两样本是否相似,表示为0或1;
用此权重计算与历史浏览案例和收藏列表案例最相关的案例,作为候选推荐结果。
进一步,步骤S4中最终推荐列表的获取步骤包括:
使用用户兴趣信息,协同用户信息,长时序用户历史浏览及收藏案例列表记录,计算对 用户可能有用的案例或法条,获得点击概率列表;
利用时间距离,案例质量特征,上下文相关性,并结合列表点击概率,以线性加权最大 化原则进行排序,其中,案例质量通过被点击次数,浏览时长,被收藏次数作为变量进行计 算,被点击次数多,浏览时间长,收藏次数多则案件质量高。
进一步,点击概率计算采用基于长时序用户信息点击率预测算法,使用层级模型,利用滑 动交叉结合特定周期,具体如下:
对浏览历史的案件特征h进行嵌入,生成定长向量e;
使用短时序特征计算特定时间窗条件下待预测对象的点击概率,结果记为b;
在全周期序列上进行滑动交叉运算,找出点击概率高的短时间序列相关序列,并连接成 新序列e’;
对序列e’结合待预测对象r1进行点击预测,得到最终点击预测概率b’。
上述面向司法的个性化案例推荐方法的系统,其特征在于:包括
用户画像特征模块,用于对司法领域用户的兴趣特征进行构建;
标准知识图谱模块,用于构建案件要素知识图谱;
案件特征模块,用于根据知识图谱提取案件要素,形成案件关键特征表;
召回模块,用于根据用户画像特征表结合案件要素知识图谱和案件关键特征表初步计算 候选推荐列表;
推荐排序模块,用于根据候选推荐列表结合用户画像特征表给出最终推荐列表;
存储模块,用于存储用户列表,案件列表,要素列表。
进一步,所述推荐排序模块包括:
基于长时序用户信息的点击率预测模块,用于使用用户兴趣信息,协同用户信息,长时 序用户历史浏览及收藏案例列表记录,计算对用户可能有用的案例或法条,获得点击概率列 表;
排序模块,用于利用时间距离,案例质量特征,上下文相关性,并结合列表点击概率, 以线性加权最大化原则进行排序。
本发明与现有技术相比,其显著优点包括:适用于用户数量少的情况,个性化推荐精准, 可面向长时间序列,图谱构建工作量少。
附图说明
图1是本发明的流程示意图。
图2是本发明的知识图谱及结构化示例。
图3是本发明的基于半监督方法更新案件要素知识图谱的流程示意图。
图4是本发明的基于长序列的点击概率预测流程示意图。
图5是本发明的系统结构示意图。
具体实施方式
下面结合具体实施例来对本发明进行进一步说明,但并不将本发明局限于这些具体实施 方式。本领域技术人员应该认识到,本发明涵盖了权利要求书范围内所可能包括的所有备选 方案、改进方案和等效方案。
实施例一
参见图1-4,本实施例提供了一种面向司法的个性化案例推荐方法,其包括:
S1,获取案例数据库,对案例文本进行结构化处理,构建案件要素知识图谱,并根据知 识图谱提取案例数据库中的案件要素,形成案件关键特征表;
对文本案例进行结构化处理步骤如下:
S1.1,将案例文本分割为段落或句子为单元的文本片段,结构化的对象为片段,每个文 本片段对应一个细分标签,获得样本数据;可以是句子或者段落,例如原告诉求按句子标注。 证据和陈述以段落为单元标注。每个文本片段对应一个细分标签,细分标签由一级标签、二 级标签组成,如(Smn|Tn,Tagba|Taga),Smn|Tn指编号n的文本中编号为mn的片段,Tagba| Taga指编号a的一级标签下编号为ba的二级标签。细分标签也可以由多级标签组成。
S1.2,将样本数据输入CNN文本分类模型,训练模型,根据预测细分标签和真实细分标 签的差距最小化来优化训练模型;样本数据,N个案例文本,案例文本中每个片段对应的细 分标签;
S1.3,待标注案例文本,输入训练好的CNN文本分类模型,输出待标注案例文本的预测 细分标签。
本发明以案例为输入进行文本的结构化,将案例分为当事人,庭辩过程,判决结果,并 再次细分一个层次,如图2左结构化部分所示。然后,按照结构化细分标签,以段落或句子 为单位进行数据标注;进而使用基于字符级CNN的文本分类方法训练模型,实现案例大数据 自动结构化。其中CNN文本分类模型还可以采用RNN、LSTM、DPCNN模型。
本实施例案件要素知识图谱的构建还包括对结构化结果进行按句子切割,并利用半监督 的方法更新案件要素知识图谱,结合了阈值文本相似性以及基于聚类的新知识挖掘,如图3 所示。具体如下:
将案例文本结构化被分解为文本片段,以结构化细分标签为类别归集;
对单标签对应的文本片段,按句子进行切割,筛选出句子形式的法律要素集Q;其中法 律标准要素,指比较规范的法律事件或属性表述用句。我们将一个句子视为一个要素,例如 ‘原告诉称,两被告向其购买皮革,尚欠其货款xxx元’和‘原告梁xx在2015年1月9日, 向被告网络店铺账号“xx力”,购买颜色分类:SC500A可移动可折叠液压吊机,订单号:9309978xxxx289’,前者用语准确,事件单一,为标准要素,后句用语不标准,事件及属性冗乱,为非标准要素。
根据案件要素知识图谱的基础事件图谱K,从法律要素集Q中筛选出标准要素句子集U, 结合标准要素句子集U建立起ki到ui的一对一元素手动映射,未经映射到事件图谱的要素 句子集为U’,其中ki为一个图谱的一个元素,K为整体图谱,标准要素句子集U和未经映射 到事件图谱的要素句子集U’组成法律要素集Q;其中基础事件图谱,是按照专家规则和标准 要素集列出的事件图谱节点及节点关系集合。如婚姻的基础事件图谱,包含3个级别的事件, 一级:{婚约、离婚、儿女抚养、同居};一级{离婚}下二级节点{财产分割}又分为{婚前财产} 和{共同财产}等三级节点,形成标准事件图谱,{List,Relation},List={node1, node2,…},Relation=<father_node,node,son_node>。一个节点一个标准句要素,多个下位 句。
然后利用基于sent-bert的文本相似性度量方法,计算未经映射到图谱的要素样本u’i 与ui的相似度,并根据经验设定相似度阈值,大于阈值的标准句子要素作为原有图谱节点的 下位样本被融合到基础事件图谱,小于阈值的样本则归为离群样本集A;也可以采用其他文 本相似性度量方法,如DSSM-LSTM方法、doc2vec方法等。sent-bert可将文本转换成向量, 然后利用常规的余弦距离即可度量文本向量间的相似性。sent-bert(sentence-bert)方法 对预训练的BERT语义模型进行修改,生成具有语义的句子嵌入向量,用于计算文本相似度。
最后对离群样本集A进行聚类,按聚类簇规模顺序进行事件图谱扩增判定。
假定离群标准要素句集A有8000个样本,利用sent-bert对这些样本进行向量转换,然 后进行聚类,形成M个离群聚类簇。按离群簇大小进行优先级排列,若第i个离群聚类簇Mi 中要素一致性较好,法律释义明确,则将其嵌入基础事件图谱。更新案件要素知识图谱使用 图谱嵌入算法,具体如下:
首先,计算基础的案件要素知识图谱中事件节点间距离;方法是:利用sent-bert计算 图谱事件节点对应标准要素句的文本向量;因一个事件节点对应多个要素句,节点位置可以 用要素句的文本向量均值表示。
接着,使用umap方法计算基于距离的降维映射模型;umap是非线性降维方法,降维结 果保留高维数据空间关系,适用于处理稀疏非均匀分布数据。
然后计算新加节点与标准节点间的距离,使用umap映射模型计算嵌入位置。本发明通过 图谱嵌入可以使图谱节点更稠密,提高节点降维的准确性。
本实施例案件关键特征表和id,文本一起存储起来,经过预处理后,搜索的速度更快。 案件关键特征表的形成过程如下:首先利用结构化方法对案件进行结构化,提取原告诉求, 原被告证据等片段;然后,进行对文本片段进行句子分割,并利用sent-bert句子向量匹配 到图谱标准句子要素,匹配到的图谱节点即为关键特征。最终,案件被表示为关键特征列表, 此列表被用于进行用户画像及案件召回模块。
S2,获取司法领域用户数据库,构建用户画像特征表;用户画像特征表包括兴趣特征、 浏览历史、收藏案例列表等。
具体的,以月为跨度,根据概率计算用户兴趣。用户画像根据应用领域的不同有较大差 异,例如电商关注用户复购,因此画像包括用户性别,年龄,所在地,爱好商品类别等;而 司法领域中,关注用户擅长或期望拓展的案件类别方向,因此画像包括历史关注案件的案由, 案件对应的要素特征,用户所在区县等。画像方法是:首先,收集用户浏览数据,用户收藏 数据。用户浏览数据包括案件ID,浏览时长,是否有帮助等。用户收藏包含案件ID,收藏时 间。然后,从存储数据中通过案件ID读取已经处理的案件的案由,要素特征等,按频次顺序 统计用户的兴趣类型。例如,兴趣案由为[离婚],兴趣要素特征为[婚前财产,房产]等。在 存储时,案件id,案件文本,案件对应的特征等都存储一起,通过id索引可以读取对应内容。
S3,根据用户画像特征表结合案件要素知识图谱和案件关键特征表初步计算候选推荐列 表;
具体的,用于根据用户兴趣类型及用户浏览历史,收藏案例列表等,列出所有相关案例。 商品相关性可以使用天然的品牌和品种属性计算,与此不同,案例的属性需要根据模型生成, 然后度量两个案例属性特征的相关性。首先,使用事件图谱和结构化,计算每个案例在庭辩 和判决多个维度上的知识特征;这里的特征包括两种,首先是最细级结构化类型,例如“原 告诉求”,“原告证据”等,定义为Fs,其次是细分图谱知识节点,如“协议离婚”,“诉讼离 婚”等,定义为Fk。接着,利用独热编码将知识特征转为向量;然后,使用线性回归方法, 计算各个特征的权重W;利用方差最小化估计权值W,如下式所示;
式中,i、j表示样本序号,ε表示两样本是否相似,表示为0或1;
最后,用此权重计算与历史浏览案例和收藏列表案例最相关的案例,作为召回结果。
S4,根据候选推荐列表结合用户画像特征表给出最终推荐列表。
本实施例最终推荐列表的获取步骤包括:使用用户兴趣信息,协同用户信息,长时序用 户历史浏览及收藏案例列表记录,计算对用户可能有用的案例或法条,获得点击概率列表; 利用时间距离,案例质量特征,上下文相关性,并结合列表点击概率,以线性加权最大化原 则进行排序,其中,案例质量通过被点击次数,浏览时长,被收藏次数作为变量进行计算, 被点击次数多,浏览时间长,收藏次数多则案件质量高。
本实施例点击概率计算采用基于长时序用户信息点击率预测算法,使用层级模型,利用滑 动交叉结合特定周期可以提升效率并实现超长时序预测,如图4所示。首先,对浏览历史等 案件特征h进行嵌入,生成定长向量e。然后,使用短时序特征计算特定时间窗条件下待预 测对象的点击概率,结果记为b。所述的短时序是指截取的短时间历史浏览信息,比如一天 或两天内的浏览数据;所述特定时间窗,为选定的节假日或特定周期如月,季,周等。接着, 为实现整体序列的覆盖,在全周期序列上进行滑动交叉运算,找出点击概率高的短时间序列 相关序列,并连接成新序列e’。此处,使用一种先验专家规则,即影响点击的历史浏览记录 之间有较强相关性。最后,对序列e’结合待预测对象r1进行点击预测,得到最终点击预测 概率b’。
除点击概率列表外,需考虑案例排列顺序对点击的影响,以获得最终的推荐案例列表。 例如,列表相邻案例通常需要有明显差异性,用户对案例发生时间和地点的偏好也有差异, 那么排序的参考变量就以这些影响因素组成,计算用户偏好线性权值。
本发明适用于用户数量少的情况,个性化推荐精准,可面向长时间序列,图谱构建工作 量少。
实施例二
参见图5,本实施例提供了实施例一所述面向司法的个性化案例推荐方法的系统,包括 用户画像特征模块,用于对司法领域用户的兴趣特征进行构建;
标准知识图谱模块,用于构建案件要素知识图谱;
案件特征模块,用于根据知识图谱提取案件要素,形成案件关键特征表;
召回模块,用于根据用户画像特征表结合案件要素知识图谱和案件关键特征表初步计算 候选推荐列表;
推荐排序模块,用于根据候选推荐列表结合用户画像特征表给出最终推荐列表;
存储模块,用于存储用户列表,案件列表,要素列表,与算法模块结合实现高效地用户 搜索响应。其中,用户列表记录用户ID,用户浏览数据,用户画像,用户收藏案件等,以用 户ID为索引列。案件列表包括案件ID,案件要素,案件top-n关联案件列表,以案件ID为索引列。每个案例最相近的top-n条案例被记录在存储模块中,便于快速召回。当有新案例加入时,计算其对现有案例的相关性,找出相关案例列表;同时,遍历现有案例的相关性列表,按照相关性大小顺序更新到现有案例的相关案例列表中。要素列表包括要素ID,要素标准类型,要素top-n关联要素,以要素ID为索引列。
本实施例所述推荐排序模块包括:
基于长时序用户信息的点击率预测模块,用于使用用户兴趣信息,协同用户信息,长时 序用户历史浏览及收藏案例列表记录,计算对用户可能有用的案例或法条,获得点击概率列 表;
排序模块,用于利用时间距离,案例质量特征,上下文相关性,并结合列表点击概率, 以线性加权最大化原则进行排序。
本实施例以婚姻案件为例,实施步骤如下:
1.数据准备
首先,收集案例等数据,主要为裁判文书数据。然后,将文书数据结构化为ID号,案由, 判决所在地,当事人,案情,判决结果等。
2.事件图谱
事件图谱为案情特征提取提供基础,是精确推荐的重要条件。本发明提出半监督图谱构 建方法:首先,构建基础事件图谱。在发明内容中以婚姻法为例,展示了婚姻法相关基础图 谱。然后,人工标注图谱节点对应的标准事件。接着,以标准事件为基础,利用句子向量相 关性找出标准事件的下位实例,如下表所示。最后,对无法匹配到图谱节点的事件进行聚类 分析,判定为是否新的图谱节点。如果是新节点,则进一步计算新节点的嵌入位置,扩增图 谱的空间覆盖范围或稠密度。
3.用户画像
用户指使用案情推荐的用户,其画像特征包括案由,案情要素特征,所在地,浏览记录 等。利用结构化案件和用户的浏览记录,可以计算用户的兴趣案件类别等;然后,根据用户 之间的相似性,找出兴趣,所在地等相近的用户,组成列表,用于召回等模块。例如,某法 律人员负责婚姻法案件,又在处理婚姻法中涉及买卖合同,民间及金融借贷等,则其兴趣案 由主要集中在[离婚,房屋买卖,民间借贷,金融借贷]。除案由之外,婚姻个案的案件特征 不同,若要进行精确推荐,需根据用户浏览案件的具体特征进行特征级统计,例如[婚前财产, 共同财产,财产分割,抚养权]等。
4.召回模块
召回模块作为粗筛选过程,用于限定推荐对象范围。我们使用离线定期更新方式,分别 以案例和用户为核心,找出案例的相关案例,用户的相关用户,并根据相关性顺序存储到存 储模块中。召回时,直接读取存储单元中案例的相关案例列表,以及相关用户的历史浏览案 例及相关案例列表,经过去重复去相关的方式合并后作为召回列表。召回列表的总长度通常 设定为固定值。
5.推荐模块
推荐模块用于对召回列表进行排序,包括点击预测模块和排序模块。点击预测模块输入 为{召回案例,用户浏览历史案例},计算输出为召回案例的被点击概率,例如85%。这样, 遍历召回案例列表,计算被点击概率列表,结果形如[85%,64%...]。然后,结合点击概率, 展示相邻案例的差异性和时间,发生地等偏好,通过线性权值计算最终的案例排列列表。
6.存储模块
用于存储原始案例数据,案例相关等中间数据,包括案例存储,用户存储,图谱存储, 其中案例和用户存储为关系型数据,图谱存储为图数据库。案例表存储字段包括‘案例ID’, ‘案例要素特征’,‘案例原文’,‘案例相关列表ID’等。用户表字段包括‘用户ID’,‘用户 兴趣’,‘相关用户’等。图谱关系型表字段包括‘节点名’‘相关节点’‘节点位置’等。