融合多源特征的合同文本纠错方法、系统、设备及介质与流程

文档序号:32474848发布日期:2022-12-07 08:37阅读:55来源:国知局
融合多源特征的合同文本纠错方法、系统、设备及介质与流程

1.本发明涉及人工智能技术领域,尤其涉及一种融合多源特征的合同文本纠错方法、系统、设备及介质。


背景技术:

2.随着人工智能技术的迅速发展,文本纠错作为典型的人工智能应用已逐渐部署于智能搜索、语音交互、合同审查等场景,现有文本纠错技术通常采用统计语言模型进行文本纠错,能够高效地实现文本纠错,但文本纠错的准确率较低,因此,为了提高文本纠错的准确率,有方法提出采用端到端的深度学习模型进行文本纠错。
3.但是,端到端的深度学习模型通常是基于通用领域训练集训练得到的,在专业术语、专有名词较多的合同审查场景下,会将专业术语等过度纠正为常见术语,导致合同文本纠错的准确率较低。因此,如何提高合同文本纠错的准确率成为了亟待解决的问题。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种融合多源特征的合同文本纠错方法、系统、设备及介质,以解决合同文本纠错的准确率较低的问题。
5.第一方面,本发明实施例提供一种融合多源特征的合同文本纠错方法,所述合同文本纠错方法包括:提取待识别文本中每个字的字向量、位置向量、拼音向量和字形向量,将所述字向量、所述位置向量、所述拼音向量和所述字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征;将所述融合特征输入训练好的字预测模型中,得到每个字所在位置对应的概率序列,所述概率序列包括至少两个预设字及其对应的概率值;针对任一字,从对应所述字所在位置的概率序列中筛选出概率值最大的前k个预设字,k为小于预设字的数量且大于零的整数;在检测到所述字与所述前k个预设字均不相同时,确定所述字所在位置为纠错位置,采用所述概率序列中概率值最大的预设字替换所述字,得到纠错文本。
6.第二方面,本发明实施例提供一种融合多源特征的合同文本纠错系统,所述合同文本纠错系统包括:特征融合模块,用于提取待识别文本中每个字的字向量、位置向量、拼音向量和字形向量,将所述字向量、所述位置向量、所述拼音向量和所述字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征;文本预测模块,用于将所述融合特征输入训练好的字预测模型中,得到每个字所在位置对应的概率序列,所述概率序列包括至少两个预设字及其对应的概率值;字典筛选模块,用于针对任一字,从对应所述字所在位置的概率序列中筛选出概率值最大的前k个预设字,k为小于预设字的数量且大于零的整数;
文本纠错模块,用于在检测到所述字与所述前k个预设字均不相同时,确定所述字所在位置为纠错位置,采用所述概率序列中概率值最大的预设字替换所述字,得到纠错文本。
7.第三方面,本发明实施例提供一种计算机设备,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的融合多源特征的合同文本纠错方法。
8.第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的融合多源特征的合同文本纠错方法。
9.本发明实施例与现有技术相比存在的有益效果是:提取待识别文本中每个字的字向量、位置向量、拼音向量和字形向量,将字向量、位置向量、拼音向量和字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征,将融合特征输入训练好的字预测模型中,得到每个字所在位置对应的概率序列,概率序列包括至少两个预设字及其对应的概率值,针对任一字,从对应字所在位置的概率序列中筛选出概率值最大的前k个预设字,在检测到字与前k个预设字均不相同时,确定字所在位置为纠错位置,采用概率序列中概率值最大的预设字替换字,得到纠错文本,提取待识别文本的拼音向量和字形向量作为额外信息参与特征融合,提高了融合特征的信息表征能力,从而提高了基于融合特征进行字预测的准确率,而且,采用前k个预设字与当前字比对的方式确定是否将当前字所在位置作为纠错位置,避免非错误的生僻字被误识别,导致过度纠正,进而提高了合同文本识别的准确率。
附图说明
10.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
11.图1是本发明实施例一提供的一种融合多源特征的合同文本纠错方法的一应用环境示意图;图2是本发明实施例一提供的一种融合多源特征的合同文本纠错方法的流程示意图;图3是本发明实施例二提供的一种融合多源特征的合同文本纠错方法的流程示意图;图4是本发明实施例三提供的一种融合多源特征的合同文本纠错系统的结构示意图;图5是本发明实施例四提供的一种计算机设备的结构示意图。
具体实施方式
12.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体
细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
13.应当理解,当在本发明说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
14.还应当理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
15.如在本发明说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0016]
另外,在本发明说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0017]
在本发明说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本发明的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0018]
本发明实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
[0019]
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0020]
应理解,以下实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0021]
为了说明本发明的技术方案,下面通过具体实施例来进行说明。
[0022]
本发明实施例一提供的一种融合多源特征的合同文本纠错方法,可应用在如图1的应用环境中,其中,客户端与服务端进行通信。其中,客户端包括但不限于掌上电脑、桌上型计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、云端终端设备、个人数字助理(personal digital assistant,pda)等计算机设备。服务端可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
[0023]
参见图2,是本发明实施例一提供的一种融合多源特征的合同文本纠错方法的流
程示意图,上述合同文本纠错方法可以应用于图1中的客户端,客户端对应的计算机设备连接服务端,以获取待识别文本,客户端对应的计算机设备中部署有训练好的编码模型和训练好的字预测模型,训练好的编码模型可以用于融合多源特征,训练好的字预测模型可以用于对待识别文本中的字进行预测。如图2所示,该合同文本纠错方法可以包括以下步骤:步骤s201,提取待识别文本中每个字的字向量、位置向量、拼音向量和字形向量,将字向量、位置向量、拼音向量和字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征。
[0024]
其中,待识别文本可以是指需要进行文本纠错处理的合同文本,在本实施例中,合同文本默认为中文文本,也即待识别文本包含若干个汉字,字向量可以用于表征字的语义信息,位置向量可以用于表征字在待识别文本中的位置信息,拼音向量可以用于表征字的读音信息,字形向量可以用于表征字的结构信息。融合特征可以是指多源信息融合后的特征。
[0025]
训练好的编码模型可以选用transformer模型,以更好地提取待识别文本的上下文信息。
[0026]
具体地,字向量的提取方式可以选用训练好的字向量嵌入模型,如word2vec模型、bert模型等,需要说明的是,字向量嵌入模型在训练时以汉字训练集进行训练。
[0027]
在本实施例中,位置向量的提取方式可以采用训练好的位置向量嵌入模型,拼音向量的提取方式可以采用训练好的拼音向量嵌入模型对待识别文本中所有字对应的拼音序列处理,字形向量的提取方式可以采用训练好的字形向量嵌入模型对待识别文本中所有字对应的笔画序列处理,位置向量嵌入模型、拼音向量嵌入模型和字形向量嵌入模型可以与编码模型联合训练。
[0028]
字向量、位置向量、拼音向量和字形向量均为n*d尺寸的向量,也即n行d列,n为待识别文本中的字数量,每一行对应于待识别文本中的一个字,d可以由预设字典内包含的预设字数量确定,统一向量尺寸的目的在于便于向量直接相加,无需再进行尺寸归一化,提高运算效率。
[0029]
可选的是,提取待识别文本中每个字的字形向量包括:针对待识别文本中的任一字,将字按照笔画进行切分,得到至少一个切分笔画;将切分笔画输入训练好的笔画向量嵌入模型,得到对应切分笔画的笔画子向量;在字切分为一个切分笔画时,确定切分笔画对应的笔画子向量为对应字的字形子向量;在字切分为至少两个切分笔画时,将每个切分笔画对应的笔画子向量线性相加,确定相加结果为对应字的字形子向量;将所有字的字形子向量按照文本顺序拼接,确定拼接结果为字形向量。
[0030]
其中,切分笔画可以包括横、竖、撇、捺、点等汉字的基础笔画,训练好的笔画向量嵌入模型的输入量为单个切分笔画,输出量为对应切分笔画的笔画字向量,笔画字向量可以用于表征切分笔画的信息。
[0031]
字形子向量可以用于表征字的字形结构信息,也即字的所有笔画信息的融合,字形向量可以是指待识别文本中所有字的字形结构信息,其中,字形向量的每一行对应于一字形子向量,也即对应于一个字的字形结构信息。
[0032]
具体地,笔画子向量的尺寸为1*d,d为向量维度,同样地,字形子向量的尺寸为1*d,由于待识别文本中字的数量为n,则拼接后的字形向量尺寸为n*d。
[0033]
本实施例将字拆分为笔画,进而根据笔画子向量融合为字形子向量,再通过字形子向量融合为字形向量,使笔画向量嵌入模型的输入量更为简洁,降低了模型拟合的难度,提高了向量嵌入的准确性,从而使字形向量能够更有效地表征待识别文本的字形结构信息。
[0034]
可选的是,训练好的编码模型包括训练好的注意力层和训练好的残差连接层;将字向量、位置向量、拼音向量和字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征包括:确定字向量、位置向量、拼音向量和字形向量的相加结果为输入向量,将输入向量输入训练好的注意力层,得到查询向量、键值向量和值向量;将查询向量、键值向量和值向量代入预设的自注意力函数计算,确定计算结果为加权向量;将输入向量和加权向量输入训练好的残差连接层,得到融合特征。
[0035]
其中,训练好的注意力层可以包括训练好的查询矩阵、训练好的键值矩阵和训练好的值矩阵,将输入向量分别与训练好的查询矩阵、训练好的键值矩阵和训练好的值矩阵点乘后,得到查询向量、键值向量和值向量。
[0036]
具体地,加权向量f的计算方式可以表示为,其中,q可以是指查询向量,k可以是指键值向量,v可以是指值向量,d为向量维度,用于避免查询向量和键值向量的点乘结果过大。
[0037]
训练好的残差连接层可用于将输入向量和加权向量进行融合,以避免随着编码模型的层数增加出现的高层输出表征能力退化的情况。
[0038]
本实施例中,编码模型采用注意力层和残差连接层实现,注意力层能够更有效地提取输入量的上下文信息,提高特征的表征能力,残差连接层能够保证特征的表征能力随着层数的加深是正向增长的,从而提取出表征能力较强的融合特征。
[0039]
上述提取待识别文本中每个字的字向量、位置向量、拼音向量和字形向量,将字向量、位置向量、拼音向量和字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征的步骤,提取待识别文本的拼音向量和字形向量作为额外信息参与特征融合,提高了融合特征的信息表征能力,从而提高了后续基于融合特征进行字预测的准确率。
[0040]
步骤s202,将融合特征输入训练好的字预测模型中,得到每个字所在位置对应的概率序列。
[0041]
其中,概率序列包括至少两个预设字及其对应的概率值,预设字可以是指属于预设字典的字,概率值可以是指该位置的字是预设字的概率。
[0042]
具体地,训练好的字预测模型的输入量为融合特征,设待识别文本包含n个字,在预测第n个字时,将第n+1个字到第n个字在融合特征中的对应行进行置零操作,即只考虑按文本顺序下当前字之前的所有字和当前字的特征来预测当前字,概率序列内包含的预设字个数与预设字典内包含的预设字个数相同,n为大于零的整数,n为大于零且小于或者等于n的整数。
[0043]
可选的是,编码模型和字预测模型的训练过程包括:按照预设条件从获取的历史文本中选择待处理字,对待处理字进行掩码处理,得到掩码字,确定包含掩码字的历史文本为样本文本,提取样本文本的样本字向量、样本位置向量、样本拼音向量和样本字形向量;将样本字向量、样本位置向量、样本拼音向量和样本字形向量相加后输入编码模型,得到样本融合特征;将样本融合特征输入字预测模型中,得到待处理字所在位置的样本概率序列,确定样本概率序列中最大概率值对应的预设字为预测字,样本概率序列包括至少两个预设字及其对应的概率值;根据预测字、待处理字和预设损失函数,计算字预测损失,以字预测损失为依据,对编码模型和字预测模型进行训练,得到训练好的编码模型和训练好的字预测模型。
[0044]
其中,历史文本可以是指历史合同文本,预设条件可以是指对历史文本中的所有字进行概率采样,以采样到的字作为待处理字,待处理字可以是指待进行掩码处理的字,掩码处理可以包括置零、同义字替换等,样本文本可以是指用于编码模型和字预测模型训练的训练样本。
[0045]
预测字可以是指经字预测模型输出的最可能的预设字,预设损失函数可以是指分类损失。
[0046]
具体地,从获取的历史文本中选择待处理字时,针对历史文本中的单句,对错字数量进行采样,错字数量为1的采样概率为0.7,错字数量为2的采样概率为0.3,一种采样方式为,设置第一区间[0,0.7]和第二区间(0.7,1],随机生成[0,1]范围内的随机数,根据随机数落入的区间确定错字数量,如随机数为0.6,则随机数落入第一区间,错字数量为1。
[0047]
在一实施方式中,在确定错字数量之后,对该单句中所有字进行无放回采样,直至采样到满足错字数量的待处理字,分别对每个待处理字进行掩码处理,得到样本文本,样本概率序列包含的预设字个数也与预设字典中预设字的个数一致。
[0048]
本实施例基于错字分布的先验信息,进行掩码处理,从而得到更符合真实情况的错误文本作为样本文本,提高了基于样本文本训练得到的模型的泛化能力。
[0049]
可选的是,按照预设条件从获取的历史文本中选择待处理字,对待处理字进行掩码处理,得到掩码字包括:将历史文本中所有字与预设字典比较,筛选出至少两个属于非实体字类别的字作为参考字,字典包括实体字类别和非实体字类别;针对任一参考字,按照预设的第一概率对是否进行掩码处理进行采样,若采样结果为进行掩码处理,确定参考字为待处理字;针对任一待处理字,采用预设的第二概率对预设的掩码类型进行采样,根据采样结果从字典中确定对应待处理字的替换字;采用替换字替换待处理字,得到掩码字。
[0050]
其中,字典的任一字均属于实体字类别和非实体字类别中的一种,实体字类别可以是指姓名、地址等,参考字可以是指历史文本中所有属于非实体字类别的字。
[0051]
具体地,对事件是否进行掩码处理进行采样,在本实施例中进行掩码处理的第一概率为0.5,不进行掩码处理的第一概率为0.5,实施者可根据实际情况调整第一概率。
[0052]
掩码类型可以包括同音字、近音字、近形字和随机字,在本实施例中同音字的第二概率为0.5,近音字的第二概率为0.1,近形字的第二概率为0.15,随机字的第二概率为0.15,实施者可根据实际情况调整第二概率。
[0053]
本实施例中,根据错字出现的类型先验,对非实体字进行掩码处理,使掩码处理后的文本更接近真实错误文本,从而提高了模型在处理真实文本时的泛化能力。
[0054]
可选的是,编码模型和字预测模型的训练过程还包括:针对任一待处理字,获取待处理字对应的真实拼音,将样本融合特征输入训练好的拼音预测模型,得到对应待处理字的拼音概率序列,拼音概率序列包括至少两个预设拼音及其对应的概率值;确定拼音概率序列中最大概率值对应的预设拼音为预测拼音;相应地,根据预测字、待处理字和预设损失函数,计算字预测损失,以字预测损失为依据,对编码模型和字预测模型进行训练,得到训练好的编码模型和训练好的字预测模型包括:根据预测拼音、真实拼音和损失函数,计算拼音预测损失;根据预测字、待处理字和损失函数,计算字预测损失;以字预测损失和拼音预测损失之和为依据,对编码模型和字预测模型进行联合训练,得到训练好的编码模型和训练好的字预测模型。
[0055]
其中,真实拼音可以是指待处理字的读音,预设拼音的数量与拼音字母的所有组合数量一致,在本实施例中,预设拼音的数量为418种。
[0056]
具体地,由于字预测模型和拼音预测模型本质上都是分类模型,因此,可以共用同一分类损失函数,例如交叉熵损失函数,联合训练可以是指基于字预测损失和拼音预测损失之和进行模型参数的梯度计算,并基于梯度下降法进行参数更新。
[0057]
本实施例额外添加拼音预测模型辅助训练,使得编码模型能够保留拼音向量提供的信息,避免信息丢失,且多任务之间不相关的部分有利于损失梯度下降时逃离局部极值点,提高模型的拟合效率和准确率。
[0058]
上述将融合特征输入训练好的字预测模型中,得到每个字所在位置对应的概率序列的步骤,通过表征能力更强的融合特征进行字预测,使得模型在预测时接收到更丰富更有效的输入,从而提高字预测模型的预测准确率,便于提高后续合同文本纠错的准确率。
[0059]
步骤s203,针对任一字,从对应字所在位置的概率序列中筛选出概率值最大的前k个预设字。
[0060]
其中,k为小于预设字的数量且大于零的整数,预设字的数量可以是指预设字典中包含的预设字总数量。
[0061]
具体地,将概率序列中所有概率值从大至小排列,筛选出排列在前k位的概率值对应的预设字,得到概率值最大的前k个预设字。
[0062]
上述针对任一字,从对应字所在位置的概率序列中筛选出概率值最大的前k个预设字的步骤,以前k个预设字进行后续字比对,而并非通用的以概率值最大的预设字进行字比对,从而更契合合同文本纠错场景下专有名词较多的情况,减少误判。
[0063]
步骤s204,在检测到字与前k个预设字均不相同时,确定字所在位置为纠错位置,采用概率序列中概率值最大的预设字替换字,得到纠错文本。
[0064]
其中,纠错位置可以是指待识别文本需要进行纠错的字所在的位置,替换可以是指将纠错位置的字删除,并填充概率序列中概率值最大的预设字,纠错文本可以是指完成纠错的文本。
[0065]
举例说明,如“验货”一词中的“货”字可能会被过纠正为“收”,因为训练语料中“验收”的出现概率远大于“验货”,但是将当前字与概率值最高的前k个预设字比对,若当前字与前k个预设字中任一个预设字比对一致,则可以认为该字并未出错,从而大幅降低过纠问题。
[0066]
上述在检测到字与前k个预设字均不相同时,确定字所在位置为纠错位置,采用概率序列中概率值最大的预设字替换字,得到纠错文本的步骤,采用前k个预设字与当前字比对的方式,确定是否将当前字所在位置作为纠错位置,避免非错误的生僻字被误识别,导致过度纠正,进而提高了合同文本识别的准确率。
[0067]
本实施例提取待识别文本的拼音向量和字形向量作为额外信息参与特征融合,提高了融合特征的信息表征能力,从而提高了基于融合特征进行字预测的准确率,而且,采用前k个预设字与当前字比对的方式确定是否将当前字所在位置作为纠错位置,避免非错误的生僻字被误识别,导致过度纠正,进而提高了合同文本识别的准确率。
[0068]
参见图3,是本发明实施例二提供的一种融合多源特征的合同文本纠错方法的流程示意图,该合同文本纠错方法中,可以将待识别文本的拼音序列输入训练好的拼音向量嵌入模型,得到拼音向量,也可以将待识别文本中每个字的拼音拆分为拼音字母,将拼音字母输入训练好的字母向量嵌入模型,得到字母向量,再将字母向量融合,得到拼音向量。
[0069]
将待识别文本的拼音序列输入训练好的拼音向量嵌入模型,得到拼音向量的过程,参见实施例一,在此不再赘述。
[0070]
将待识别文本中每个字的拼音拆分为拼音字母,将拼音字母输入训练好的字母向量嵌入模型,得到字母向量,再将字母向量融合,得到拼音向量的过程包括:步骤s301,针对待识别文本中的任一字,将对应字的拼音按照字母拆分,得到至少一个拼音字母;步骤s302,将拼音字母输入训练好的字母向量嵌入模型,得到对应拼音字母的字母子向量;步骤s303,在拼音拆分为一个拼音字母时,确定拼音字母对应的字母子向量为对应拼音的拼音子向量;步骤s304,在拼音拆分为至少两个拼音字母时,将每个拼音字母对应的字母子向量线性相加,确定相加结果为对应拼音的拼音子向量;步骤s305,将所有字的拼音子向量按照文本顺序拼接,确定拼接结果为拼音向量。
[0071]
其中,拼音字母可以包括“a”、“o”“e”“i”“w”等拼音的基础字母,训练好的字母向量嵌入模型的输入量为单个拼音字母,输出量为对应拼音字母的字母字向量,字母字向量可以用于表征拼音字母的信息。
[0072]
拼音子向量可以用于表征字对应拼音的读音信息,也即字对应拼音的所有拼音字母信息的融合,拼音向量可以是指待识别文本中所有字对应拼音的读音信息,其中,拼音向量的每一行对应于一拼音子向量,也即对应于一个字对应拼音的读音信息。
[0073]
具体地,字母子向量的尺寸为1*d,d为向量维度,同样地,拼音子向量的尺寸为1*
d,由于待识别文本中字的数量为n,则拼接后的拼音向量尺寸为n*d。
[0074]
本实施例将字的拼音拆分为拼音字母,进而根据字母子向量融合为拼音子向量,再通过拼音子向量融合为拼音向量,使字母向量嵌入模型的输入量更为简洁,降低了模型拟合的难度,提高了向量嵌入的准确性,从而使拼音向量能够更有效地表征待识别文本的读音信息。
[0075]
对应于上文实施例的融合多源特征的合同文本纠错方法,图4示出了本发明实施例三提供的融合多源特征的合同文本纠错系统的结构框图,上述合同文本纠错系统应用于客户端,客户端对应的计算机设备连接服务端,以获取待识别文本,客户端对应的计算机设备中部署有训练好的编码模型和训练好的字预测模型,训练好的编码模型可以用于融合多源特征,训练好的字预测模型可以用于对待识别文本中的字进行预测。为了便于说明,仅示出了与本发明实施例相关的部分。
[0076]
参见图4,该融合多源特征的合同文本纠错系统包括:特征融合模块41,用于提取待识别文本中每个字的字向量、位置向量、拼音向量和字形向量,将字向量、位置向量、拼音向量和字形向量相加后输入训练好的编码模型中进行特征提取,得到融合特征;文本预测模块42,用于将融合特征输入训练好的字预测模型中,得到每个字所在位置对应的概率序列,概率序列包括至少两个预设字及其对应的概率值;字典筛选模块43,用于针对任一字,从对应字所在位置的概率序列中筛选出概率值最大的前k个预设字,k为小于预设字的数量且大于零的整数;文本纠错模块44,用于在检测到字与前k个预设字均不相同时,确定字所在位置为纠错位置,采用概率序列中概率值最大的预设字替换字,得到纠错文本。
[0077]
可选的是,上述特征融合模块41包括:字母拆分单元,用于针对待识别文本中的任一字,将对应字的拼音按照字母拆分,得到至少一个拼音字母;字母向量提取单元,用于将拼音字母输入训练好的字母向量嵌入模型,得到对应拼音字母的字母子向量;第一向量确定单元,用于在拼音拆分为一个拼音字母时,确定拼音字母对应的字母子向量为对应拼音的拼音子向量;第二向量确定单元,用于在拼音拆分为至少两个拼音字母时,将每个拼音字母对应的字母子向量线性相加,确定相加结果为对应拼音的拼音子向量;拼音向量拼接单元,用于将所有字的拼音子向量按照文本顺序拼接,确定拼接结果为拼音向量。
[0078]
可选的是,上述特征融合模块41包括:笔画切分单元,用于针对待识别文本中的任一字,将字按照笔画进行切分,得到至少一个切分笔画;笔画向量提取单元,用于将切分笔画输入训练好的笔画向量嵌入模型,得到对应切分笔画的笔画子向量;第三向量确定单元,用于在字切分为一个切分笔画时,确定切分笔画对应的笔画子向量为对应字的字形子向量;
第四向量确定单元,用于在字切分为至少两个切分笔画时,将每个切分笔画对应的笔画子向量线性相加,确定相加结果为对应字的字形子向量;字形向量拼接单元,用于将所有字的字形子向量按照文本顺序拼接,确定拼接结果为字形向量。
[0079]
可选的是,训练好的编码模型包括训练好的注意力层和训练好的残差连接层;上述特征融合模块41包括:注意力单元,用于确定字向量、位置向量、拼音向量和字形向量的相加结果为输入向量,将输入向量输入训练好的注意力层,得到查询向量、键值向量和值向量;加权计算单元,用于将查询向量、键值向量和值向量代入预设的自注意力函数计算,确定计算结果为加权向量;残差连接单元,用于将输入向量和加权向量输入训练好的残差连接层,得到融合特征。
[0080]
可选的是,上述合同文本纠错系统还包括:掩码处理模块,用于按照预设条件从获取的历史文本中选择待处理字,对待处理字进行掩码处理,得到掩码字,确定包含掩码字的历史文本为样本文本,提取样本文本的样本字向量、样本位置向量、样本拼音向量和样本字形向量;样本融合模块,用于将样本字向量、样本位置向量、样本拼音向量和样本字形向量相加后输入编码模型,得到样本融合特征;样本预测模块,用于将样本融合特征输入字预测模型中,得到待处理字所在位置的样本概率序列,确定样本概率序列中最大概率值对应的预设字为预测字,样本概率序列包括至少两个预设字及其对应的概率值;模型训练模块,用于根据预测字、待处理字和预设损失函数,计算字预测损失,以字预测损失为依据,对编码模型和字预测模型进行训练,得到训练好的编码模型和训练好的字预测模型。
[0081]
可选的是,上述掩码处理模块包括:参考字筛选单元,用于将历史文本中所有字与预设字典比较,筛选出至少两个属于非实体字类别的字作为参考字,字典包括实体字类别和非实体字类别;掩码采样单元,用于针对任一参考字,按照预设的第一概率对是否进行掩码处理进行采样,若采样结果为进行掩码处理,确定参考字为待处理字;类型采样单元,用于针对任一待处理字,采用预设的第二概率对预设的掩码类型进行采样,根据采样结果从字典中确定对应待处理字的替换字;字替换单元,用于采用替换字替换待处理字,得到掩码字。
[0082]
可选的是,上述合同文本纠错系统还包括:拼音预测模块,用于针对任一待处理字,获取待处理字对应的真实拼音,将样本融合特征输入训练好的拼音预测模型,得到对应待处理字的拼音概率序列,拼音概率序列包括至少两个预设拼音及其对应的概率值;拼音确定模块,用于确定拼音概率序列中最大概率值对应的预设拼音为预测拼音;相应地,上述模型训练模块包括:
第一损失计算单元,用于根据预测拼音、真实拼音和损失函数,计算拼音预测损失;第二损失计算单元,用于根据预测字、待处理字和损失函数,计算字预测损失;联合训练单元,用于以字预测损失和拼音预测损失之和为依据,对编码模型和字预测模型进行联合训练,得到训练好的编码模型和训练好的字预测模型。
[0083]
需要说明的是,上述模块、单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0084]
图5为本发明实施例四提供的一种计算机设备的结构示意图。如图5所示,该实施例的计算机设备包括:至少一个处理器(图5中仅示出一个)、存储器以及存储在存储器中并可在至少一个处理器上运行的计算机程序,处理器执行计算机程序时实现上述任意各个融合多源特征的合同文本纠错方法实施例中的步骤。
[0085]
该计算机设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图5仅仅是计算机设备的举例,并不构成对计算机设备的限定,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括网络接口、显示屏和输入装置等。
[0086]
所称处理器可以是cpu,该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0087]
存储器包括可读存储介质、内存储器等,其中,内存储器可以是计算机设备的内存,内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。可读存储介质可以是计算机设备的硬盘,在另一些实施例中也可以是计算机设备的外部存储设备,例如,计算机设备上配备的插接式硬盘、智能存储卡(smart media card,smc)、安全数字(secure digital,sd)卡、闪存卡(flash card)等。进一步地,存储器还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,该其他程序如计算机程序的程序代码等。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
[0088]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将系统的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流
程,可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、计算机存储器、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0089]
本发明实现上述实施例方法中的全部或部分流程,也可以通过一种计算机程序产品来完成,当计算机程序产品在计算机设备上运行时,使得计算机设备执行时实现可实现上述方法实施例中的步骤。
[0090]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0091]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0092]
在本发明所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的系统/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,模块或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0093]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0094]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1