作者 | 杨鲤萍
编辑 | 唐里

2019 年 10 月 19 日,第十八届中国计算语言学大会「中国法研杯」相似案例匹配评测研讨会在云南昆明完美落幕。 会上,清华大学刘知远副教授、中国科学院软件研究所韩先培研究员、幂律智能科技有限公司 CEO 涂存超博士等均出席了该会议。 其中,基于大会开展的中国法研杯相似案例匹配评测竞赛,由来自支付宝的 AlphaCourt 团队摘得桂冠,这是一支致力于搭建属于支付平台的「互联网法院」的队伍。 本次大赛中,他们充分运用了数据挖掘、深度学习、神经网络等方法,实现了对「多篇法律文书的相似度计算与判断」等任务的多模型融合、优化以及可视化探索,最终以 71.88 的优良成绩,夺下了本次大赛冠军! 在大赛中,我们也能看到京东、华宇元典、同济大学等强劲对手的身影,但究竟 AlphaCourt 团队是在哪些技术与方法上略胜一筹,才从 711 支参赛队伍中脱颖而出? 我们有幸采访到冠军团队,并将其冠军方案解析如下,也许我们可以一起来找到答案。
比赛任务简介本届法研杯司法人工智能挑战赛主要围绕「相似案例匹配评测」主题展开,比赛任务则涉及到类案的理解与判断等问题,其中最具代表性的则是: 民间借贷相似案例。 如果能通过 AI 技术将大量类案进行分类与判断等,将大大减少重复性的人力成本等实际问题。 因此,本次的任务第一步是针对多篇法律文书进行相似度的计算和判断; 然后对于每份文书提供文书的标题和事实描述,从两篇候选集文书中找到与询问文书更为相似的一篇。 其中,相似案例匹配的数据限于民间借贷一类文书。

打开网易新闻 查看精彩图片
民间借贷相似案例匹配举例 在数据集方面,本任务所使用的数据集是来自「中国裁判文书网」公开的法律文书,每组数据由三篇法律文书组成。 对于每篇法律文书,仅提供事实描述; 对于每份数据,用(A,B,C)来代表该组数据; 对于训练数据,保证文书数据 A 与 B 的相似度是大于 A 与 C 的相似度。 在这样的赛题背景下,各个参赛团队开始运用他们的技术方法不断提高 AI 判断的准确度。
AlphaCourt 团队本次冠军团队 AlphaCourt 来自支付宝安全实验室。 参赛成员包括:
  • Kaggle Master 鲍晟霖

  • KDD 2019 冠军得主易灿

  • 帝国理工博士刘星

  • 杜克大学硕士叶珩

  • 爱丁堡大学硕士林晓彤

这个小组的日常业务是根据用户反馈的欺诈等风险信息,通过 AI 算法分析处理从而更好地防控,保护用户账户安全。 这也正是他们队名「AlphaCourt——智能法院」的来历,因为在他们业务范围内,大家的职能与法院一样,旨在分配正义,消除不公。 因此我们可以发现,团队在本次竞赛上有两大主要优势:
  • 一是业务涉及丰富的文本,沉淀了很多文本相关的算法;

  • 二是团队曾搭建过诈骗案由的知识图谱,这也更好的帮助他们轻车熟路地构建业务抽象要素框架,并与文本模型结合,丰富了模型的学习维度。

尽管团队有着丰富、熟稔的经验和技巧,但除了面临法律案件中各种的难题,如: 案件文本长、案件复杂度高、案情灵活多变、案件分析数值繁多等之外,他们依旧还有需要克服的其它困难及挑战。
挑战一:数据构建及句子相似度判定在比赛过程中,团队首先面临的是赛题数据构建形式较少见这一大挑战。 队长表示,虽然日常工作中他们很熟悉文本分类问题,但赛题是三段文本之间的对比,所以需要一定的转换。 因此,一开始他们做了一个简单的假设,把赛题转化为了一个绝对相似的问题。 假定文书数据 A 和文书数据 B 之间是符合绝对的相似,同时文书数据 A 和文书数据 C 之间是符合绝对的不相似,即原先的三元组数据拆分成两两文书数据之间是否绝对相似的问题,这样就可以使用二分类模型来解决此类问题。 但实际上在第二阶段检查数据时,团队发现之前的绝对相似假设存在一定问题。 虽然数据(A,B,C)保证了文书数据 A 与 B 的相似度是大于 A 与 C 的相似度,但是另一条数据中会出现(A,D,B)的情况; 当把这两条三元组样例同时拆分成两两对比相似的数据时,会发现产生数据的标签存在冲突。 因此,团队在第一阶段使用二分类模型思路的情况下,重新考虑了三元组的相对相似问题。 最终,他们采用了损失函数为 Triplet Loss 的 Rank 模型来解决三元组的相对相似的问题,从两两文本间的相似距离来评估两两文本之间相似度。 两种模型的思路框架如下图所示。
打开网易新闻 查看精彩图片
解决相对相似问题的模型
挑战二:文本形式差异队长告诉我们,他们日常处理的是用户自由填写的文本,信息稀疏且没有固定结构,而赛题则是半结构化的法律文书,所以需要构建赛题案由相关的业务抽象特征。 因此,他们主要参考了合同法、担保法、婚姻法及相关司法解释,总结出了原告/被告属性、担保类型(一般、连带)、计息方式、约定借期利率、约定逾期利率、抵押物、借款合意凭据等七个特征。 最终根据可行性以及数据表现,选用了原告被告特征、担保特征、利息特征等特征。 原告被告特征包括原告是否属于公司、原告人数、被告是否属于公司和被告人数; 担保特征包括文书中是否包含担保人、担保人个数、文书中是否包含抵押物和抵押物的个数; 利息特征包括文书中是否包含利息和对利息金额的转换。 其他业务特征包括文书中被告间是否存在夫妻关系和被告的死亡情况; 具体提取的结构化特征如下图所示:
打开网易新闻 查看精彩图片
具体提取的结构化特征 虽然这些工作与建模关系不大,但在结果上证明了这些业务抽象特征确实会带来不错的增益; 同时,从参赛方案来看,这也是其他参赛对手没有特别重视的细节之处。 对于这一点的把控,不禁让人感叹: 这确实是「细节决定成败」最有力的说明!
挑战三:模型优化本次比赛有 711 支队伍,共计 1003 位参赛者。 激烈的竞争是在所难免的,而且在比赛过程中前几名之间的分数差距基本都在 5 以内,互相你追我赶,颇有剑拔怒张之势。 因此,AlphaCourt 团队也在不断对模型进行优化,其中主要使用了两个 Trick。

1、模型融合

2、Triple Loss 过拟合