网络知识 娱乐 实战 | 基于序列标注的合同智能审核应用实践

实战 | 基于序列标注的合同智能审核应用实践

文 / 华夏银行信息科技部 李大伟 徐小芳

龙盈智达(北京)科技有限公司 张伟 丁明

“十四五”规划和2035年远景目标纲要提出要“加快数字化发展,建设数字中国”,将数字化战略地位和建设内容提到了前所未有的高度。数字化经济成为社会经济发展的重要驱动力,也是银行业转型发展的新一轮机遇,推动银行业数字化转型升级和金融科技水平提升,重点在于加强科技创新与传统业务深度融合。

银行业金融活动过程中产生了海量的信息资源,其中相当一部分是难以直接利用的非结构化文本数据。长期以来,对这些数据的审核与筛查主要依靠人工操作,但这项工作对审核人员的要求比较高、费时费力、效率低下。华夏银行积极开展数字科技转型升级,推进人工智能技术在金融业务中的广泛应用,创新使用自然语言处理(Natural Language Processing,简称NLP)技术自动识别文档中的敏感信息,包括特殊名词、风险词汇和短句子等关键信息,达到提示潜在风险,高效应对审阅、查找、校对等复杂工作的目标,赋能经营发展。本文将以合同审核业务为例,介绍利用序列标注技术开展关键词识别和提取的应用实践。

关键技术

在整个实践过程中,我们特别注意关键技术的梳理、总结和提炼,包括基本概念、主流方法、基本原理等。这些对于应用实践快速落地和场景进一步拓展具有重要的指导意义。

1.序列标注的概念

序列标注就是给定一个序列,对序列中的每一个元素打上一个标签,是NLP中一个重要的任务,它包括分词、词性标注、命名实体识别等。其中,命名实体识别(Named Entity Recognition,简称NER),是指从文本数据中识别出具有特定意义的实体,如人名、地名、公司名等。命名实体识别是信息抽取、智能问答、机器翻译等应用的重要技术支撑。

2.基于规则和统计机器学习的方法

早期的NER任务大多采用基于规则和统计机器学习的方法。

基于规则的方法利用手工编写的规则,将文本与规则进行匹配来识别出命名实体。其优点是规则模板的构建相对简单、容易实现、准确率也较高。其缺点是严重依赖于专家知识,人工编写规则工作量太大,且人工构建模板不可能包含所有的识别规则,模型的可移植性较差。

统计机器学习方法将NER看作序列标注问题,利用机器学习的相关算法训练模型,对句子的各个位置进行标注,常用的算法有SVM、HMM、CRF等。其优点是模型计算复杂度较低、泛化性更好,缺点是特征工程的好坏将直接影响模型效果。

3.基于词嵌入和深度学习的方法

近年来,随着词嵌入(Word Embedding)和深度学习技术的兴起,不少学者将深度神经网络(RNN、LSTM、GRU等)应用到序列标注任务中,在多种公开大规模的数据集上都取得了不错的实验效果。该方法以词向量作为系统输入,通过神经网络自动提取特征,预测每个位置的标签。其优点是模型可以自动获取特征无需人工干预,缺点是需要大量标注训练数据、对每个位置标签的预测过程是独立的,缺少上下文信息可能预测出非法的标签序列。

4.BERT+BI-LSTM+CRF

公开的NER工具有很多,包括NLTK、Spacy、LTP等等,它们都有内置预先训练好的模型,可以识别出句子中人名、地名等基础实体,像Spacy工具还能通过加载自己数据训练新的NER模型,使用上非常便捷,但模型精度较差,而且不能满足用户个性化需求。本文使用预训练语言模型、深度神经网络和统计机器学习相结合的模型——BERT+BI-LSTM+CRF解决序列标注问题。模型共包含3层,每一层各有其特点和优势,结构如图1所示。

实战

图1 模型结构

BERT层将输入句子中的每个单元(字或词)转换为计算机能处理的数值型向量格式。BERT预训练语言模型采用双向Transformer结构进行特征抽取,使用大规模语料在MLM(Masked Language Model)和NSP(Next Sentence Prediction)两个任务中进行训练,计算词与这句话中所有词的相互关系,进而获取该词融合了上下文特征的动态表征,具有更好的语义表示能力。

BI-LSTM层通过神经网络为每个输入单元预测对应的标签概率。LSTM是一种特殊的循环神经网络,能有效地解决长序列训练过程中的梯度消失和梯度爆炸问题,但是由于其网络结构是单向的,只考虑了上文信息而忽略了下文信息对模型的影响,因此可以再加入一个反向LSTM层,逆序获取下文信息构成一个双向长短期记忆网络(Bidirectional Long short-term memory,简称BI-LSTM),BI-LSTM模型可以充分学习当前字的上下文信息,从而更好地判断当前输入的标签概率。

CRF层构建一个转移矩阵来表示标签从一个状态转移到另一个状态的概率,并选择计算得分最高的标签序列作为最佳答案。CRF是一种由无向图表示的联合概率分布模型,能在给定一组输入随机变量条件下求另一组输出随机变量的条件概率分布。CRF模型可以通过训练语料,学习到标签之间的约束规则,从而过滤掉很多无效的标签序列。比如,采用BIO标注法对句子进行标注时,句子的第一个标签只能是“B”或者“O”,不能是“I”;标签“I”只能出现在标签“B”之后,不能单独出现,也不能出现在其他标签后面。

应用实践

1.数据标注

训练深度学习模型需要大量的标注数据,使用数据标注工具——Doccano,将非结构化文本数据进行人工标注,但实际操作中人工标注效率低下、标注质量存在个体差异,极大影响模型训练效果。

使用Bootstrap(自展法)方法,先人工标注一部分种子训练数据集,进行初步训练,然后用训练得到的种子模型预测新的数据。通过几轮训练迭代不断扩大数据集规模。数据标注过程中存在的主要问题及解决措施:

(1)标注起始阶段,由于种子数据量较少,训练得到的种子模型预测效果较差,预测结果会有一定的错误率。如果盲目添加数据,可能导致错误样本过多,模型的错误随着迭代次数的增加而逐渐放大,形成“错误累积”,所以需要对每次迭代的预测结果进行人工修正,确保训练数据质量。人工对预测结果中错误标注进行修正,将大大提高人工标注效率,并且随着模型精度提升,人工修正效率也会逐渐提高。

(2)种子训练数据数量、每一次扩展的新数据量、总迭代次数的选择具有很强主观性,选择数字过大或过小都会极大影响数据扩展效率和模型效果。经过实验经验总结,得出效率较高的参考规则:种子数据数量≤(100或总数据量的10%),每一次扩展新数据量≤(100且模型效果略低于70%)或(200且模型效果大于70%),迭代总次数≤(10或总数据量/100)。

2.模型训练

实验中,使用1000份无标注招标合同文本数据,识别文本中“招标金额”“招标家数”“报名条件”“报名时间”“报名地址”“报名邮箱”“投标时间”“投标地址”“开标时间”“开标地址”“咨询电话”共11个不同类别实体。采用上文的数据标注方式,首先人工标注100份种子训练数据样本,经过6轮迭代扩展最终完成所有数据标注。使用kashgari提供的框架搭建BERT+BI-LSTM+CRF模型,进行序列标注任务训练,识别文本中命名实体。每一次数据迭代及模型对应F1值如图2所示。

实战

图2 数据迭代及训练过程

3.实验结果

以精确率(用P表示)、召回率(用R表示),F1-socre值作为评价指标,对11个不同类别实体进行序列标注实验,经过6次迭代训练,实验结果如表1所示。

表1 不同类别实体对应实验结果

实战


实体较长或实体上下文格式不固定都会增加模型识别难度,比如报名条件、报名地址的实体较长,招标家数上下文格式不固定,识别率仅达到75%左右。对于招标金额、投标时间、咨询电话等数字型实体具有较好的识别效果,达到90%以上。

4.应用效果

基于BERT+BI-LSTM+CRF的序列标注模型取得了较好的实验效果,对11个不同类别命名实体整体识别率达到84.23%。用户仅需输入一份招标合同文本,模型将自动识别文本中关键信息并使用不同颜色突出显示,并抽取命名实体形成结构化表格数据,效果如图3所示,该模型能大幅提高用户对合同的审阅效率,具有广泛的应用推广价值。

实战

实战

图3 应用效果

总结与展望

本文总结和提炼了序列标注的关键技术,结合实际需求开展了应用实践。在合同审核业务中,借助序列标注技术将原有的人工操作升级为AI智能辅助模式,大大提升了合同审核的效率,取得了明显成效。

除了合同审核等业务场景之外,很多内管需求也可采用序列标注技术去解决。例如,来往邮件中,敏感词的识别和过滤;审批流程中,文本的比对审核;客户填写地址时,错误地址的自动纠正等。后续,我们将继续深入探索序列标注技术在传统业务中的应用,加强科技创新与传统业务深度融合,推动华夏银行数字化转型升级和发展。