【法医伤情鉴定智能辅助】华宇创新技术成果第7期 | TECH ZONE
华宇深耕法律科技多年,在形成自身完备的技术体系的同时,培养出一大批勇于创新的技术工程师,TA们乘风破浪,厚积薄发,“技”往开来。在这里,我们将开创一片TECH ZONE,陆续呈现TA们在工作中的创新技术成果,敬请关注。
法医伤情鉴定智能辅助工具
视频:华宇解读法医伤情鉴定智能辅助
在“某省检察院智慧法医”中有这么一个业务场景:下级检察机关的法医在对《人体损伤程度鉴定书》进行审查时,需要进行“结论性审查”,也就是对文书中“伤情描述语句”和所引用的“法条”的一致性进行判断,以及判断文书的判定结论是否与“法条”一致。
为了更直观的了解业务场景,以图1鉴定文书的图片予以说明
首先需要审查“检查所见”段的“伤情描述”信息和“论证”段“伤情描述”是否一致,引用法条是否正确;其次还要审查“论证”段所引用的法条是否能够推出“鉴定意见”中的“伤残等级”判断。
图1:鉴定文书
项目难点
1)如何从文书的“检查所见”段提取“纯粹”的“伤情描述语句”(例如:神志清、精神可等一些表示被鉴定人“无碍”的一些描述自动剔除。);
2)“伤情”众多,对应的描述也千奇百怪,如何去涵盖所有的“伤情”,确保提取的“伤情描述”不漏?如何更好地“泛化”?
3)从图1可以看出:“论证”段的伤情描述要少于“检查所见”段,因为“论证”段对“检查所见”段的伤情描述进行了合并,那么合并标准是什么?是如何合并的?
解决方案
传统的正则匹配、以及规则肯定是无法胜任“伤情”众多、描述方式“千奇百怪”的“法医文书”,因此把目光转向了“自然语言处理”,将相关算法结合实际的业务需求予以落地。
针对难点1和难点2:
针对一个“伤情语句”,其必然可以分成:“伤情部位”、“伤情类型”、“伤情大小”,因此,就可以对单一的“伤情语句”进行结构化,而“自然语言处理”中的“命名实体识别”技术,就能非常好的从一句话提取所想要的结构化信息,并且其少了人为的相关干预,靠“模型”自身学习到的相关能力进行“泛化”,能够适用于“浙江智慧法医”的相关业务需求;这样一来,“难点1”就可以根据结构化后的“伤情部位”、 “伤情类型”、“伤情大小”的有无来进行区分,“难点2”的“泛化”也得以解决。
针对难点3:
最后,在“伤情合并”方面,非自然语言处理方式,往往都是给出特定的合并规则,在规则之下进行合并,显示其“泛化”能力很弱,而利用“词向量”等自然语言处理技术能够计算两两伤情语句的“语义相似度”,这样就可以把“相似度”高的伤情语句语义合并,低的就不予以合并,而且“伤情语句”都是被结构化了,对于合并后的伤情就更好表示出来。这样一来“难点3”就迎刃而解。
综上所述:“自然语言处理”的“命名实体识别”技术能够完美地契合“智慧法医”的相关需求。针对“命名实体识别”模型的实现方式做了众多的探索与实现,具体的模型结构以及相关算法优缺点请详见下文的“模型技术方案”,最终的项目实现效果详见下文的“工程效果”。
模型技术方案
词向量+BILSTM+CRF
BILSTM:双向长短时记忆网络;CRF:条件随机场
模型结构:
模型优缺点:
1)模型预测的速度快,精度较高。
2)模型复用困难
词向量训练需要大量的相关语料,不同任务需要爬取不多类型的预料才能训练出较好的词向量;模型是“词语级别”的模型,因此需要极为精准的词分割;不同任务的分词需要重新设计。
3)训练出来的模型过大,大概在1G左右。
BERT+BILSTM+CRF
和“词向量+BILSTM+CRF”相比结构类似,只是将词向量换成了BERT模型。
模型特点:
1)模型是字符级别,没有苛刻的分词要求;
2)模型精度要比“词向量+BILSTM+CRF”的更高、效果更好;
3)模型的训练时间很长,需要做大量的运算;
4)模型预测时间也很长,平均要0.4s到0.5s才能完成一句话的预测。
ALBERT + BILSTM+CRF
和“词向量+BILSTM+CRF”相比结构类似,只是将词向量换成了ALBERT模型。
模型特点:
1)识别效果几乎和“BERT+BILSTM+CRF”一致;
2)具备“BERT+BILSTM+CRF”的所有优点;
3)模型更小只有十几M,现场部署极为方便;
4)模型训练时间极大缩短,要优于“BERT+BILSTM+CRF”,但是还是要高于词向量+BILSTM+CRF;
5)模型预测时间极大缩短,仅为
“BERT+BILSTM+CRF”的1/10,和词向量+BILSTM+CRF速度相当。
工程效果
图2为“ALBERT + BILSTM+CRF”模型在“智慧法医”项目中的应用(从“法医鉴定文书”中的“检查所见”段中提取所有的伤情描述语句):
图2:伤情语句提取
图3为“ALBERT + BILSTM+CRF”模型在“智慧法医”项目中的应用(“伤情合并”:将上一步中获得的“伤情语句”进行结构化,从中提取“伤情部位”、“伤情大小”、“伤情类型”。
图4为模型对伤情语句的结构化信息,然后再根据法条进行推送。
图3:伤情合并
图4:伤情语句结构化信息
上述三种方案各有优劣,可以根据实际情形予以选择:如果不能提供GPU,又有很高的时效性要求,可以选择词向量+BILSTM+CRF;如果能够提供GPU,可以选择考虑BERT+ BILSTM + CRF和ALBERT+ BILSTM +CRF;如果经过测试方案二和方案三精度相差不多的情况下,优先选择方案三。
人工智能算法在"智慧法医"类似业务场景下的优势可以概括为以下几点:
在"智慧法医"中涉及到对伤情结构化信息提取,在过往的结构化信息提取中多数采用正则匹配的方式,但是这种方式只能对规律性较强的数据进行提取(比如:身份证号)。由于法医编写"鉴定报告"逻辑表达的不同,伤情的部位、大小、类型无规律可循,正则很自然就不很胜任此类问题的解决,而人工智能算法能够通过标注的语料经过训练学习到其内部的规律,完成对结构化信息的提取(比如说:某些词是伤情部位,其后面跟的词可能是伤情的类型等等,这类的规则)。
02能够通过"语义"来进行伤情合并
在"智慧法医"中伤情合并是至关重要的一步。同一种伤在上下文中的描述很可能不一致,他们需要合并之后再和法条对应;这类的需求被归纳为相似度计算,只有两个伤情的相似度满足一定阈值之后才能进行合并;中文博大精深,往往对一个事物有多中表述,多一个字和少一个字在含义上就会天壤地别,因此不能仅通过词或者字的相同、相近与否进行相似度的计算,而是需要从整体的语义上面来做计算,人工智能算法就可以通过语料来学习到句子中的语义特征,并且通过语义特征来计算两两伤情间的相似度,最终确定是否需要合并。
传统的方法解决"智慧法医"需求,需要众多"规则",这样无论是维护还是后续的更新迭代都很困难;而人工智能算法只需要根据新的需求数据进行标注,再次训练完之后替换模型即可,维护性强;并且后续有其他项目用到类似的需求,只需要把数据集替换掉再训练模型即可。
华宇创新技术成果(2020)系列
点击下方“阅读原文” 了解华宇法律科技十大技术