【顶会论文解析】罪行预测

27 篇文章 2 订阅
26 篇文章 11 订阅

作者 bamtercelboo

原文地址

https://bamtercelboo.github.io/2018/07/19/Learning-to-Predict-Charges-for-Criminal-Cases-with-Legal-Basis/

 

导读

2017年EMNLP(Conference on Empirical Methods in Natural Language)收录了论文《Learning to Predict Charges for Criminal Cases with Legal Basis》,作者是北京大学—罗炳峰。最近看了这篇论文,对其做一个简单的概述。

 

背景知识

近些年来,Legal Jugement Prediction 任务越来越引起大家的关注,这个任务的目的是通过给定的事实描述,预测出罪名,法条以及刑期等相关信息,charge prediction 任务就是这样的一个任务,这对一些法律助手是很有帮助的,对法官判决也有很大的帮助,不仅如此,对那些法律知识知之甚少的人也会有一定的积极作用。

目前,这类任务的主流做法是基于文本分类的框架,像流行的SVM,CNN,LSTM等这些深度学习框架,然而,作者认为,仅仅通过给定的事实描述来做,不能够很好的解决问题,他认为,法条信息在这个任务上有很重要的作用,所以,作者通过加入法条特征,使用attention机制,提出了这个任务新的方法,通过他的实验结果也确实表明法条起着至关重要的作用。

 

数据处理

数据来源于中国裁判文书网,收集了50000个文本用作训练,5000个文本用于开发,5000个文本用于测试,50000个训练文本中,把罪名的频度低于80的看做消极数据,不作处理,仅仅处理频度高于80的数据。

对于法条部分,考虑刑事法律,结果数据集中包含50个不同的罪名,321条不同的相关法条,每个事实描述平均383个词,根据下图,高亮的部分,能够很容易通过正则表达式抽取相关特征。

由于目前很难匹配多个罪名,所以这篇论文仅仅考虑了一个罪名的情况,并没有做多个罪名的情况。

 

论文模型

模型整体架构

论文的整体的模型图如下图Figure 1:

过程:

  1. 事实描述(fact)通过document encoder生成fact向量表示d_f。

  2. fact也通过Article Extractor抽取其中的匹配度较高的k个法条。

  3. 抽取出来的k个法条通过document encoder生成向量表示s。然后通过article Aggregator生成法条的最终向量表示d_a。

  4. 把 d_f 和 d_a concat在一起,做分类。

Document Encoder

一个句子由多个词组成,一个文本由多个句子组成,可以先过句子级别的encoder,再过文本级别的encoder。如下图可以得到文本的embedding。论文中对这两个encoder都采用了Bi-GRU作为编码端,为了能够获取到更多的信息,论文还采用了attention机制。

Attention Sequence Encoder

为了能够获取更多的有用信息,采用了Hierarchical Attention(16年的一篇文本分类的论文),模型结构图如下图

计算的公式是:

这样就能够明白Figure 1 中的 U_fw 和 U_fs是这里Attention机制的u。

Law Articles

用法条特征来更准确的预测是这篇论文的重点。如何准确的抽取出法条特征也是一个难点,论文中采用了两个步骤来获取特征向量。

  1. 首先采用一个快速且容易的SVM分类器,做多个二分类,过滤掉大部分不匹配的法条,得到k的最为匹配的相关法条,分类器还加入了TF-IDF特征、chi-square,更为准确的获取相关法条。

  2. 抽取出k个相关法条之后,再通过Article Encoder(和Document Encoder一样)获取法条的向量表示,这里不同的是attention中的u不在是随机的,而是通过fact embedding动态产生的,通过下面的公式。

  3. 最后在通过Attentive Sequence Encoder从k个法条中获取到支持预测的法条,这里的u也是通过fact embedding动态产生的。

Output

最终的把fact embedding(d_f) 和 article embedding(d_a) concat 在一起,做最后的预测,这里还设置了一个threshold

Supervised Article Attention

在训练的过程中,利用金标的法条监督法条attention的分布,就是想要法条attention的分布于目标法条的分布相似, loss的计算公式如下:

 

实验部分

实验的参数设置没有什么特别的,实验部分,论文做了很多的对比实验,从结果来看(下图)法条特征对预测确实起着很大的作用

 

总结

法条特征对这个任务确实起着很重要的作用,虽然论文仅仅做了单一罪名的预测,没有尝试多罪名预测中法条特征的影响,但是论文的思路已经给我们提供了新的方向


更多精彩内容,请关注 深度学习自然语言处理 公众号,就是下方啦!跟随小博主,每天进步一丢丢!哈哈!

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
NLP(自然语言处理)是一门研究如何使计算机能够理解和处理人类语言的领域。Python是一种广泛用于编程的编程语言。结合Python和NLP可以进行各种自然语言处理任务,如文本分类、命名实体识别、情感分析等。在Python中,有许多流行的库和工具可供使用,以便进行NLP任务。以下是一些常用的Python库和工具: 1. NLTK(自然语言工具包):它是Python中最常用的NLP库之一,提供了许多用于文本预处理、词性标注、词袋模型、语法分析等任务的功能。 2. spaCy :这是另一个流行的Python库,它提供了高效的自然语言处理功能,包括分词、词性标注、命名实体识别和依赖解析等任务。 3. TextBlob :这是一个易于使用的Python库,它提供了一系列简单的API,用于处理常见的NLP任务,如情感分析、词性标注和文本分类。 4. Gensim :它是一个用于主题建模和文本相似度计算的Python库,可以用于处理大规模的文本数据。 5. Scikit-learn :这是一个通用的机器学习库,其中包含了许多用于文本分类、情感分析和文本聚类等任务的算法。 这些库和工具为Python开发者提供了丰富的功能和资源,便于进行各种NLP任务的开发和实验。你可以根据具体的需求选择适合的库和工具,并结合相关的算法和技术来处理自然语言数据。希望这些信息能够帮助到你。 NLTK官方网站:https://www.nltk.org/ spaCy官方网站:https://spacy.io/ TextBlob官方网站:https://textblob.readthedocs.io/ Gensim官方网站:https://radimrehurek.com/gensim/ Scikit-learn官方网站:https://scikit-learn.org/stable/

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值