CCL“中国法研杯”相似案例匹配评测竞赛 - TOP队伍攻略分享
上周末参加了在云南昆明举办的“第十八届中国计算语言学大会”(The Eighteenth China National Conference on Computational Linguistics, CCL 2019)。CCL作为国内最好的NLP会议之一,笔者收获满满,感触颇深。于是写下这篇文章,和大家分享之所见所闻。
中国计算语言学大会作为国内自然语言处理领域权威性最高、规模和影响最大的学术会,聚焦于中国境内各类语言的智能计算和信息处理,为研讨和传播计算语言学最新学术和技术成果提供了最广泛的高层次交流平台。
笔者主要参加了CCL会议中的评测研讨会,我们队伍(何从庆、朱翔宇(DOTA)、乐雨泉)在CCL“中国法研杯”相似案例匹配评测竞赛取得了三等奖。
作者:何从庆、朱翔宇(DOTA)、乐雨泉
知乎链接:
https://zhuanlan.zhihu.com/p/88207736
代码链接:
https://github.com/hecongqing/CAIL2019
比赛简介
CCL“中国法研杯”相似案例匹配评测竞赛主要是针对多篇法律文本进行相似度的计算和判断。具体地,对于每份文书提供文本的标题以及事实描述,需要从两篇候选集文书中找到与询问文书更为相似的一篇文书。
一般地,三元组相似任务:三元组相似任务是输入一个三元组<a, p ,n >,a表示anchor sample;p表示positive sample,与a是同一类样本;n表示negative sample,与a是不同类别的样本。代表网络有Triplet Network。
二元组相似任务:二元组相似任务是输入一个二元组<X,Y>,判断X与Y是否为同一类样本。代表网络有Siamese network,ESIM,InferSent。
数据集介绍
本任务使用的数据集是来自“中国裁判文书网”公开的法律文本,其中每份数据由三篇法律文本组成。数据总共涉及一万组文书三元对,所有的文书三元组对都一定属于民间借贷案由。对于每篇法律文本,提供该文书的事实描述部分。具体地,文件的每一行对应一组数据,且每行的格式都为一个json数据。
对于每份数据,用(A,B,C)来代表改组数据,其中(A,B,C)均对应某一篇文书。在训练数据中,文书数据A与B的相似度是大于A与C的相似度,即sim(A,B)>sim(A,C)。
任务转化
很明显,这是一个三元组相似任务,即A表示anchor sample, B表示positive sample,C表示negative sample。因此直接可以使用Triplet Network的结构去尝试。但是,在任务中,训练集仅有5000样本,训练集很少;同时,句子长度很长。因此,我们将其转化为二元组相似任务。即假设sim(A,B)>sim(A,C),A与B相似度的标签为1,A与C相似度的标签为0。
难点痛点
1) 法律文本本身在一定程度上具有结构相似性,且事实描述部分存在很多通用词语,如何对法律文本进行预处理是非常重要,这里我没有详细说明如何对法律文本进行预测。
2) 法律文本长度很长,使得任务变得更难处理。机器很难解析一篇很长的事实描述,语义表征也是很复杂。这是法律文本不同于传统的NLP任务之一。
模型方案
在本次任务中,训练集较少,很难训练出一个泛化能力强的模型,那么是否可以结合BERT、XLNET等网络作为encoder,来fine tune网络呢?因此我们尝试了BERT作为encoder,然后余弦相似度计算相似性。线上分数可以达到63.93左右的acc。效果不是很理想,我们觉得法律文本很长,且存在着很多通用相似词语,直接通过余弦相似度计算是否相似,并不是很有效的评估两篇文书的相似度。
2) InferSent
Facebook提出了一种InferSent相似度模型,论文中通过不同的encoder得到句子的表征,然后通过两个句子的向量差值,以及两个向量点乘,得到交互向量,最后区分两者的不同。同样地,这里我们也使用BERT作为encoder,然后通过pooling,然后计算Sent A和Sent B的|u-v|以及u*v,得到两者的交互向量,线上分数可以达到64.5左右的acc。这个比计算余弦相似度的效果好,这说明长度文本利用InferSent模型可以更好的计算两者的向量相似程度。
这里和Digsci比赛的思路也是比较相似,大家也可以看看这篇文章:
DigSci科学数据挖掘大赛-亚军方案分享
https://zhuanlan.zhihu.com/p/88257675
3) 原始BERT模型
原始的BERT模型同样可以解决相似度匹配任务,同样地,我们在原始的BERT模型上也可以取得不错的成绩。这里就不详细说了。
写在最后
参考文献
[1] Learning Text Similarity with Siamese Recurrent Networks
[2] Supervised learning of universal sentence representations from natural language inference data
[3] BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
CCL“中国法研杯”相似案例匹配评测竞赛 - TOP队伍攻略分享相关推荐
- 第三届“中国法研杯”司法人工智能挑赛(CAIL2020)即将启动
中国法研杯 聚焦人工智能技术在司法领域的应用,中国电科X+AI系列挑战赛之"中国法研杯"司法人工智能挑战赛(CAIL2020)将于2020年5月15日放注册报名.本次技术竞赛面向全 ...
- 活动报名 | 第三届中国法研杯司法人工智能挑战赛颁奖会日程出炉
官网:http://cail.cipsc.org.cn/ 法律智能研究旨在赋予机器理解法律文本的能力.近些年来,随着以裁判文书为代表的司法大数据不断公开,以及自然语言处理技术的不断突破,如何将人工智能 ...
- 【论文阅读】2021中国法研杯司法考试数据集研究(CAIL2021)
英文标题:JEC-QA: A Legal-Domain Question Answering Dataset 中文标题:法律领域问答数据集 论文下载:arxiv@1911.12011 项目地址:Git ...
- Computer:字符编码(ASCII编码/GBK编码/BASE64编码/UTF-8编码)的简介、案例应用(python中的编码格式及常见编码问题详解)之详细攻略
Computer:字符编码(ASCII编码/GBK编码/BASE64编码/UTF-8编码)的简介.案例应用(python中的编码格式及常见编码问题详解)之详细攻略 目录 符串编码(ASCII编码/GB ...
- Auto CAD:CAD绘图设计以项目为导向,实战案例中图层、图块运用技巧经验总结之详细攻略
Auto CAD:CAD绘图设计以项目为导向,实战案例中图层.图块运用技巧经验总结之详细攻略 目录 CAD绘图设计以项目为导向,实战案例中图层运用技巧经验总结
- ML之sklearn:sklearn.linear_mode中的LogisticRegression函数的简介、使用方法之详细攻略
ML之sklearn:sklearn.linear_mode中的LogisticRegression函数的简介.使用方法之详细攻略 目录 sklearn.linear_mode中的LogisticRe ...
- DL之Perceptron:Perceptron感知器(感知机/多层感知机/人工神经元)的简介、原理、案例应用(相关配图)之详细攻略
DL之Perceptron:Perceptron感知器(感知机/多层感知机/人工神经元)的简介.原理.案例应用(相关配图)之详细攻略 目录 Perceptron的简介.原理 多层感知机 实现代码 案例 ...
- Python之pandas:对pandas中dataframe数据中的索引输出、修改、重命名等详细攻略
Python之pandas:对pandas中dataframe数据中的索引输出.修改.重命名等详细攻略 目录 对pandas中dataframe数据中的索引输出.修改.重命名等详细攻略 知识点学习 输 ...
- Python之 sklearn:sklearn.preprocessing中的StandardScaler函数的简介及使用方法之详细攻略
Python之 sklearn:sklearn.preprocessing中的StandardScaler函数的简介及使用方法之详细攻略 目录 sklearn.preprocessing中的Stand ...
- CV:NVIDIA驱动程序安装图文教程(根据Anaconda的CUDA版本去安装对应匹配的NVIDIA)之详细攻略
CV:NVIDIA驱动程序安装图文教程(根据Anaconda的CUDA版本去安装对应匹配的NVIDIA)之详细攻略 目录 根据Anaconda的CUDA版本去安装对应匹配的NVIDIA驱动程序图文教程 ...
最新文章
- 【青少年编程】【三级】 合作画画
- nova instance出错:message: Proxy error: 502 Read from server failed
- Python学习系列day2-python基础
- 马云启动“NASA”计划 为未来20年愿景研发核心科技
- Redis各特性的应用场景
- ICPC网络赛第二场G Limit
- 短程调度 中程调度 长程调度
- 数据科学入门与实战:玩转pandas之三
- 【掩耳盗铃】[转载]北京铁路局:“北京站37号窗口售票员内部大量出票”是为分区售票...
- 农业物联网卡存在哪些问题?
- 分享一种快速制作证件照的方法,只要你有自拍照就完全ok啦
- 多种方法破解Windows 系统密码
- 曾宪武《物联网通信技术》课后答案(四)
- 计算机扫描的配置文件在哪里找,打印机扫描文件到电脑哪里找
- 解决谷歌自带翻译不出现问题
- bingo update1
- server服务器系统2019安装,windowsserver 2019系统安装教程图文详解
- JS打印表格时边框缺失问题
- 【编译原理】NFA转DFA(子集构造法)
- OHIF记录(二)——Viewers和React-vtk工具包互联