Skip to content

PolarisRisingWar/pytorch_ljp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

本项目旨在使用原生PyTorch统一实现法律判决预测LJP(legal judgment prediction)任务的当前各重要模型,包括对多种语言下多种公开数据集的预处理、多种子任务下的实现。
直接通过命令行即可调用torch_ljp/main.py文件,传入参数并得到对应的结果,需要预先在torch_ljp文件夹下创建config.py文件(由于真实文件的内容对用户来说无意义,因此没有上传,但是我上传了一个fakeconfig.py文件,把里面需要填的参数填上就行)。
具体的使用命令可参考example.txt。
op_examples文件夹是输出示例,见example.txt中介绍的对应的命令行。 模型的预测指标及其计算方式详见metrics文件夹中的介绍。 我所使用的系统环境中的重要版本见enviroment_v.txt所示。

以下分别介绍本项目中已经可实现分析和处理的数据,模型,及二者相对应的任务中,我跑出来的实验结果和原论文或其他引用论文中跑出来的结果的对比(有海量没整好的内容,等我慢慢补吧): (如果您希望我添加什么数据或模型,可以直接给我提issue!)

1. 数据

中文:

英文:

英文(美国):

英文(欧洲):

英文(印度):

法语(比利时):

多语言:

2. 模型

2.1 general-domain分类模型(非纯预训练模型的)

2.2 domain-specific分类模型(非纯预训练模型的)

2.3 预训练模型的分类模型

2.3.1 general-domain

2.3.2 domain-specific

2.4 general-domain回归模型

  • 线性回归

2.5 inductive link prediction模型

3. 实验结果

3.1 论文中原有的结果

3.1.1 CAIL数据集

使用CAIL2018原始任务范式。

训练集是first_stage/train.json,测试集是 first_stage/test.json + restData/rest_data.json(文中说,这个配置是删除多被告情况,仅保留单一被告的案例;删除了出现频数低于30的罪名和法条;删除了不与特定罪名相关的102个法条(没看懂这句话是啥意思))。用THULAC分词,Adam优化器,学习率为0.001,dropout rate是0.5,batch size是128

baseline: ①TFIDF+SVM(SVM是线性核,特征维度是5000,用skip-gram训练200维词向量) ②TextCNN(输入限长4096,filter widths是(2, 3, 4, 5),filter size是64) ③FastText

指标:accuracy, macro-precision, macro-recall

实验结果: pic1

3.2 我运行官方代码复现的结果

见reappear_files文件夹

3.3 使用本项目代码复现的结果

实验配置见example.txt中的命令行。

其他注意事项:

  1. torch_ljp/dataset_utils/other_data文件夹内放的是一些比较小,而且不太好解释怎么制作的文件,所以直接跟着GitHub项目一起上传了。
    1. cn_criminal_law.txt:2021版中华人民共和国刑法。复制自中华人民共和国刑法(2022年最新版) - 中国刑事辩护网中下载的Word文件,并删除了其中语涉“中国刑事辩护网提供……”的字样。

About

PyTorch code for LJP (Legal Judgment Prediction)

Topics

Resources

Stars

Watchers

Forks

Languages