一种基于SegaBert预训练模型的合同抽取方法与流程

专利2022-05-10  17


一种基于segabert预训练模型的合同抽取方法
技术领域
1.本发明涉及自然语言处理技术领域,特别涉及文本数据处理技术领域,尤其涉及一种基于segabert预训练模型的合同抽取方法。


背景技术:

2.合同是民事主体之间设立、变更、终止民事法律关系的协议,通常由民事主体之间根据想要约束的条款自由订立,因此不同合同之间格式各不相同,描述方式也有差别。一般一篇合同的字数接近几万字,在双方准备签订合同之前,通常需要对合同中的关键合同要素进行抽取并仔细查阅。
3.现有的抽取关键合同要素的方法通常是根据预设的实体识别规则,提取合同中一个或者多个实体,并对实体进行关系抽取和对实体关系进行求并集,得到最终的关键合同要素,这种方法需要维护实体识别和实体关系抽取两个方面,增大了处理层级关系的难度,同时建模困难,准确率较低。
4.现有技术中,合同抽取主要采用“预训练 微调”模式。其中,预训练是指采用大规模、与特定nlp任务无关的文本语料进行训练,其目标是学习语言本身应该是什么样的,使得模型输出的文本语义表示能够刻画语言的本质。微调是针对具体nlp任务而言,在预训练模型的基础上进行网络结构和参数的调整。但是,现有多数模型主要针对句子级别或者段落级别的nlp任务。对于文档级别输入较长的合同抽取任务,急需要一种适合合同的抽取方法。
5.目前,对现有合同需要结合合同档案库中与所述现有合同有关的合同进行相关数据分析,以及时对现有合同有更加全面的掌握,根据相关联的合同对现有合同进行分析,从而判断现有合同中的内容是否合理,是否存在需要修改或者规避风险的内容,但是,目前从合同档案库中查找与现有合同相关联的合同,以及判断是否需要对现有合同进行修改,都是通过人工进行区分,浪费大量的人力,在工作量大的情况下还很容易出错,因此,如何快速判定现有合同的可行性是亟待解决的技术问题。


技术实现要素:

6.本发明的目的在于提供一种基于segabert预训练模型的合同抽取方法用于提升了预训练语言模型的文本编码能力,使其在微调阶段得到更完善的表示,进而提升下游任务的预测效果。
7.一种基于segabert预训练模型的合同抽取方法,包括以下步骤:
8.对中文合同进行预处理;
9.对所述预处理的中文合同进行标注;
10.利用神经网络对segabert预训练模型进行微调,在微调过程中,得到能够进行特定信息抽取的segabert模型;
11.利用所述微调后的segabert模型对标注后的中文合同进行训练;
12.检验训练后的segabert模型对抽取所述中文合同得到信息的准确度。
13.在其中一个实施例中,所述预处理还包括将获取待抽取的中文合同按文件数量以8:1:1的比例划分为训练集、验证集和测试集。
14.在其中一个实施例中,所述预处理包括获取待抽取的合同,并删除每份合同中的特殊字符和英文字符。
15.在其中一个实施例中,所述预处理还包括确定命名实体,划分出需要标注的信息。
16.在其中一个实施例中,所述标注包括将每个文字标注为“b

x”、“i

x”或“o”,其中,“b

x”表示此文字所在的片段属于x类型并且此文字在此片段的开头,“i

x”表示此文字所在的片段属于x类型并且此文字在此片段的中间位置,“o”表示此文字不属于任何类型。
17.在其中一个实施例中,所述微调过程包括根据所述特定信息的文本数据规模,将所述segabert预训练模型结构设置为8层transformer编码器和1层线性层,所述每层transformer编码器具有512维隐层和6个多头注意力,所述线性层通过softmax函数来预测每个文字实体状态的概率。
18.在其中一个实施例中,所述softmax函数为:p=softmax(wh
[bio]
b);
[0019]
其中,h
[bio]
是每个文字bio标注状态的向量,w和b是线性层的参数,p表示每个文字预测某种实体状态的softmax函数概率分布。
[0020]
在其中一个实施例中,所述segabert模型训练包括通过在所述训练集上进行训练,并在所述验证集上验证训练效果,得出最优模型。
[0021]
在其中一个实施例中,所述最优模型时参数设置为:
[0022]
批大小为16;
[0023]
学习率为1e

4(1%warm

up,linear decay);
[0024]
迭代次数为100k steps;
[0025]
优化器为adam。
[0026]
在其中一个实施例中,通过所述训练后的segabert模型进行对所述测试集的合同信息抽取检验,查看抽取得到的内容是否正确与完整。
[0027]
一种电子设备,包括:存储器以及一个或多个处理器;
[0028]
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行时,所述电子设备用于实现以上任一项实施例所述的方法。
[0029]
一种计算机可读存储介质,其上存储有计算机可执行指令,当所述计算机可执行指令被计算装置执行时,可用来实现以上任一项实施例所述的方法。
[0030]
一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,可用来实现以上任一项实施例所述的方法。
[0031]
上述技术方案具有如下优点或有益效果:
[0032]
本发明这种基于segabert预训练模型的合同抽取方法通过从合同数据样本提取的信息,利用在合同中快速定位需要抽取的合同信息,因此,本发明可以准确快速地从待抽取合同中筛选出一种或者多种输出要信息;进一步地,对多个所述输出信息进行检验,得到每种输出信息对应的概率值,可以提高合同信息抽取方法的效率。本发明在预训练阶段,能
利用更丰富的位置表征,对段落、句子、词语三者间的位置关系联合建模,对输入的文本能做到片段感知,学习到信息更丰富的上下文表示。这样的改进,提升了预训练语言模型的文本编码能力,使其在微调阶段得到更完善的句子和篇章表示,进而提升下游任务的预测效果。同时结合语法引擎,增加对标注和训练样本预处理,能够筛选出更合理的数据,并自动泛化出一系列意思相近的样本数据,极大地增加了覆盖面,提高了模型的精准度。
附图说明
[0033]
图1是本发明现有合同抽取方法的流程图;
[0034]
图2是本发明一种基于segabert预训练模型的合同抽取方法的流程图。
具体实施方式
[0035]
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
[0036]
结合图1、图2所示,一种基于segabert预训练模型的合同抽取方法,包括以下步骤:
[0037]
对中文合同进行预处理,从互联网,主要是各企业、金融网站获取700份左右的合同;
[0038]
对所述预处理的中文合同进行标注;
[0039]
利用神经网络对segabert预训练模型进行微调,在微调过程中,得到能够进行特定信息抽取的segabert模型;
[0040]
利用所述微调后的segabert模型对标注后的中文合同进行训练;
[0041]
检验训练后的segabert模型对抽取所述中文合同得到信息的准确度。
[0042]
其中,预训练模型segabert,用以改进基于transformer的预训练过程,在多种自然语言任务上全面超越bert。预训练segabert以mlm为目标,和bert设置相同,除去了下一句的预测和其他任务的加入。根据实验结果,预训练模型segabert,在生成语言理解和机器阅读理解上优于bert结果(glue上1.17平均提升),在squad上有1.14/1.54提升(匹配/f1值)。segabert是基于bert结构的,是一个基于多层transformer的双向mask语言模型。对于长文本序列,segabert调整了切分信息,如句子位置,段落位置,对于每个token去学习一个更好的文本表示。
[0043]
原始的bert使用了位置学习的embedding去编码一个token的位置信息。替代了使用全局token的索引,我们引入了三种形式的embedding,token索引,句子索引和段落索引。因此,在segabert中,全局token位置被这三部分唯一确定:token在句中的索引,句子在段落中的索引和段落在长文本中的索引。输入表示:输入x是一个token序列,有可能是一个或者多个句子或者段落。类似于bert的输入表示,token t的输入表示xt,通过对应位置的embedding进行求和,包括token embedding et,token索引embedding pt(t),句子索引embedding ps(t),和段落索引pp(t)。两种特殊tokne[cls]和[sep]被加入到文本序列中(第一个token之前和最后一个token之后)。和bert相同,文本token通过词的切片(多头),最大长度为512。encoder结构:多层双向的transformer encoder将输入encode成文本表示。l层的transformer,最后一层的token t的隐向量ht(l)用来作为文本表示。经过更大的
切分体现在了输入表示,encoder有了一个更好的文本化能力。
[0044]
segabert模型为每个输入的字构建其段落索引、句子索引和字索引,同时在模型中设置段落位置向量、句子位置向量和字位置向量。通过位置索引和位置向量为模型输入序列提供位置向量表示。
[0045]
以所需训练的文本数据结构为基础,segabert模型确定采用50个段落位置索引、100个句子位置索引和128个字位置索引,为输入序列中的每个字标示其三重位置信息。假设一个字本身的向量为w,在句中位置的向量为t,所在句子的位置向量为s,所在段落的位置向量为p。那么,segabert模型的输入e为上述四个向量之和。
[0046]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述预处理还包括将获取待抽取的中文合同按文件数量以8:1:1的比例划分为训练集、验证集和测试集。
[0047]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述预处理包括获取待抽取的合同,并删除每份合同中的特殊字符和英文字符。
[0048]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述预处理还包括确定命名实体,划分出需要标注的信息,如:合同名称、甲方单位名称、乙方名称、签约时间等。
[0049]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述标注包括将每个文字标注为“b

x”、“i

x”或“o”,其中,“b

x”表示此文字所在的片段属于x类型并且此文字在此片段的开头,“i

x”表示此文字所在的片段属于x类型并且此文字在此片段的中间位置,“o”表示此文字不属于任何类型。例如:某份合同中签约时间为“2021年6月2日”,那么标注结果为“2_b

签约时间0_i

签约时间2_i

签约时间1_i

签约时间年_i

签约时间6_i

签约时间月_i

签约时间2_i

签约时间日_i

签约时间”。
[0050]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述微调过程包括根据所述特定信息的文本数据规模,将所述segabert预训练模型结构设置为8层transformer编码器和1层线性层,所述每层transformer编码器具有512维隐层和6个多头注意力,所述线性层通过softmax函数来预测每个文字实体状态的概率。其中,多头注意力是指把多个自注意力连起来,同时通过减低维度来减少总计算消耗;隐层是指除了输入层和输出层以外的其它层,上一个隐层输出变成了下一个隐层的输入,每个隐层就是一个特征代表层。
[0051]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述softmax函数为:p=softmax(wh
[bio]
b);
[0052]
其中,h
[bio]
是每个文字bio标注状态的向量,w和b是线性层的参数,p表示每个文字预测某种实体状态的softmax函数概率分布。
[0053]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述segabert模型训练包括通过在所述训练集上进行训练,并在所述验证集上验证训练效果,得出最优模型。通过验证集验证结果,发现并分析信息抽取错误原因,不断调整参数,直到达到最优的效果。
[0054]
所述segabert模型训练时在一句话中随机选择20%的文字进行遮掩并用于预测。
[0055]
对于在原句中被遮掩的文字按照字数来分,80%采用特殊符号[mask]替换,10%
采用一个任意字替换,剩余10%保持原文字不变。
[0056]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,所述最优模型时参数设置为:
[0057]
批大小为16;
[0058]
学习率为1e

4(1%warm

up,linear decay);
[0059]
迭代次数为100k steps;
[0060]
优化器为adam。
[0061]
其中,批大小是指一次训练所选取的样本数;学习率决定了参数移动到最优值的速度快慢,表示训练时每次更新参数的幅度;迭代次数即训练了多少次以批大小为数量的样本;优化器就是在深度学习反向传播过程中,指引损失函数的各个参数往正确的方向更新合适的大小,使得更新后的各个参数让损失函数值不断逼近全局最小。
[0062]
进一步地,本发明一种基于segabert预训练模型的合同抽取方法的较佳的实施例中,通过所述训练后的segabert模型进行对所述测试集的合同信息抽取检验,查看抽取得到的内容是否正确与完整,检验模型训练的效果。最后合同抽取的准确率达到了94.9%。
[0063]
本发明的文本抽取主要是在深入研究机器学习、信息论、自然语言处理等相关理论的此基础上研究segabert预训练模型及神经网络信息距离理论,根据语义相似性对问题分类和机器对自然语言的语义理解等核心技术来搭建的。
[0064]
一种电子设备,包括:存储器以及一个或多个处理器;
[0065]
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行时,所述电子设备用于实现如以上任一项所述的方法。
[0066]
具体地,处理器和存储器可以通过总线或者其他方式连接,以通过总线连接为例。处理器可以为中央处理器(central processing unit,cpu)。处理器还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field

programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
[0067]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本技术实施例中的级联渐进网络等。处理器通过运行存储在存储器中的非暂态软件程序/指令以及功能模块,从而执行处理器的各种功能应用以及数据处理。
[0068]
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络(比如通过通信接口)连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0069]
一种计算机可读存储介质,其上存储有计算机可执行指令,当所述计算机可执行指令被计算装置执行时,可用来实现如以上任一项所述的方法。
[0070]
前述的计算机可读取存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方式或技术来实现的物理易失性和非易失性、可移动和不可移动介质。计算机可读取存储介质具体包括,但不限于,u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、可擦除可编程只读存储器(eprom)、电可擦可编程只读存储器(eeprom)、闪存或其他固态存储器技术、cd

rom、数字多功能盘(dvd)、hd

dvd、蓝光(blue

ray)或其他光存储设备、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机访问的任何其他介质。
[0071]
尽管此处所述的主题是在结合操作系统和应用程序在计算机系统上的执行而执行的一般上下文中提供的,但本领域技术人员可以认识到,还可结合其他类型的程序模块来执行其他实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。本领域技术人员可以理解,此处所述的本主题可以使用其他计算机系统配置来实践,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等,也可使用在其中任务由通过通信网络连接的远程处理设备执行的分布式计算环境中。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备的两者中。
[0072]
本领域普通技术人员可以意识到,结合本文中所本技术的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0073]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对原有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。
[0074]
综上所述,本发明这种基于segabert预训练模型的合同抽取方法通过从合同数据样本提取的信息,利用在合同中快速定位需要抽取的合同信息,因此,本发明可以准确快速地从待抽取合同中筛选出一种或者多种输出要信息;进一步地,对多个所述输出信息进行检验,得到每种输出信息对应的概率值,可以提高合同信息抽取方法的效率。本发明在预训练阶段,能利用更丰富的位置表征,对段落、句子、词语三者间的位置关系联合建模,对输入的文本能做到片段感知,学习到信息更丰富的上下文表示。这样的改进,提升了预训练语言模型的文本编码能力,使其在微调阶段得到更完善的句子和篇章表示,进而提升下游任务的预测效果。同时结合语法引擎,增加对标注和训练样本预处理,能够筛选出更合理的数据,并自动泛化出一系列意思相近的样本数据,极大地增加了覆盖面,提高了模型的精准度。
[0075]
以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
[0076]
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”“后”等指示的方位或位
置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
转载请注明原文地址:https://doc.8miu.com/read-1350148.html

最新回复(0)