numpy==1.14.2
jieba==0.39
pandas==0.22.0
tensorflow==1.8.0
Keras==2.1.6
scikit-learn==0.19.1
为了促进法律智能相关技术的发展,在最高人民法院信息中心、共青团中央青年发展部的指导下,中国司法大数据研究院、中国中文信息学会、中电科系统团委联合清华大学、北京大学、中国科学院软件研究所共同举办“2018中国‘法研杯’法律智能挑战赛(CAIL2018)”。
官方网站: http://cail.cipsc.org.cn
域名: http://180.76.238.177
GitHub: https://github.com/thunlp/CAIL
罪名预测
:根据刑事法律文书中的案情描述和事实部分,预测被告人被判的罪名法条推荐
:根据刑事法律文书中的案情描述和事实部分,预测本案涉及的相关法条刑期预测
:根据刑事法律文书中的案情描述和事实部分,预测被告人的刑期长短这次采用的是第一阶段CAIL2018-Small
数据,包括19.6万份文书样例,包括15万训练集,1.6万验证集和3万测试集。
{'fact': '昌宁县人民检察院指控,2014年4月19日下午16时许,被告人段某驾拖车经过鸡飞乡澡塘街子,......',
'meta': {'accusation': ['故意伤害'],
'criminals': ['段某'],
'punish_of_money': 0,
'relevant_articles': [234],
'term_of_imprisonment': {'death_penalty': False,
'imprisonment': 12,
'life_imprisonment': False}}}
字段及意义:
共涉及202条罪名,183条法条,刑期长短包括0-25年、无期、死刑。
这个模块主要包含三大块:
由于时间和任务的关系,这一次我只利用了第一阶段的数据实现了罪名预测
和法条推荐
两个任务,两个任务使用相同的模型结构。
数据预处理的功能主要包含在data_utils
中,包括数据预处理各类功能函数集合data_processing.py和对数据进行实际预处理的数据准备模块data_preparation.py。
基本流程:
texts_to_sequences
功能把词语列表转为序列(数字)列表,不在词典中的词语去掉;pad_sequences
对序列进行截断(长度大于400)或补全(长度少于400的补0)。数据预处理要点:
在这个项目的时候,对RNN和LSTM还不是很了解,所以主要使用了CNN和TextCNN去做,而且对比起RNN,CNN在时间成本上更有优势。
CNN模型结构:
TextCNN模型结构: