一种文本纠错方法和系统技术方案

技术编号:24576443 阅读:56 留言:0更新日期:2020-06-21 00:26
一种文本纠错方法和系统,包括训练BERT模型;对汉字进行编码;将待检测句子输入BERT模型,获得每个位置上的置信度TopK候选集;利用汉字编码,计算候选项与原项的相似度;利用相似度与置信度计算纠错概率;对候选集按照纠错概率重新排序;与设定阈值比较,若概率低于阈值,则不改错;若否,则取出候选集中Top1作为最终纠错结果。本发明专利技术通过使用BERT解决现有技术方案中缺乏大量训练语料的问题,并利用新型汉字编码方式,综合考虑汉字的拼字字形对错误文本的影响,动态适应多种纠错任务。

A text correction method and system

【技术实现步骤摘要】
一种文本纠错方法和系统
本专利技术涉及语言处理领域,尤其涉及一种文本纠错方法和系统。
技术介绍
现有文本纠错方法主要分为统计模型类和神经网络模型类。基于统计模型的方法以N-gram为例,通过计算句子中以目标字为核心的邻接N元概率,对目标字进行检错判断,同时对混淆集进行排序,筛选出第一候选字词纠正错误文本。基于神经网络模型的方法以Seq2Seq模型为例,通过将句子输入Encoder,经过模型计算后,在Decoder会输出句子中每个位置上置信度得分Top1的字符,从而进行纠错。上述现有技术具有以下缺点:(1)统计模型只考虑了单字构成词语的概率,且这个概率依赖于训练的样本,泛化能力受到限制。同时统计模型并没有考虑上下文的语义信息,无法解决搭配不当的错误。(2)神经网络模型只根据上下文语义信息纠错,未考虑具体任务场景,比如语音转文本时,错误大量集中在同音字;图像转文本时,错误大量集中在同形字。同时当前Seq2Seq模型依赖大量人工标注的平行语料以提高泛化能力。
技术实现思路
本专利技术针对现有技术中的缺点,通过使用BERT解决现有技术方案中缺乏大量训练语料的问题,并利用新型汉字编码方式,综合考虑汉字的拼字字形对错误文本的影响,动态适应多种纠错任务。为了解决上述技术问题,本专利技术通过下述技术方案得以解决:一种文本纠错方法,包括以下步骤:训练BERT模型;将待检测句子输入BERT模型,获得每个位置上的置信度TopK候选集;对汉字进行编码,基于汉字编码,计算候选集中的候选项与原项的相似度;利用相似度与置信度综合计算纠错概率;对候选集按照纠错概率重新排序;与设定阈值比较,若概率低于阈值,则不改错;若否,则取出候选集中Top1作为纠错结果。可选的,对汉字进行笔画级的拆解,并与拼音结合形成新的汉字编码。可选的,汉字编码分为拼音字段、音调字段、结构字段、笔画字段和笔画总数字段。可选的,基于汉字编码,使用Levenshtein算法计算候选项与原项的相似度。可选的,设置置信度和相似度的权重,将相似度和置信度各自乘上相应的权重,然后求和,得到纠错概率。可选的,训练BERT模型过程:BERT对输入序列中的随机比例的字进行mask处理,利用mask的上下文信息预测mask的值,BERT模型得到的结果形式为(字,置信度)的候选项,选择置信度最高的作为mask的结果;注,“()”内文字非解释说明。本专利技术还提供了一种文本纠错系统,包括:汉字编码单元,用于汉字编码处理;BERT模型单元,用于BERT模型训练;置信度计算单元,利用BERT模型单元训练好的BERT模型,获得待检测句子每个位置上的置信度TopK候选集;相似度计算单元,利用汉字编码单元得到的汉字编码,计算置信度TopK候选集中的候选项与原项的相似度;概率计算单元,根据相似度和置信度计算纠错概率,依据纠错概率并重新排序;判断单元,判断纠错概率是否大于阈值,若小于,则放弃纠错,若大于,选取Top1作为纠错结果;输出单元,用于输出纠错结果。本专利技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的方法中的步骤。本专利技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法中的步骤。本专利技术的有益效果:1、本专利技术采用BERT模型,由于BERT模型本身是在大量文本语料上训练的通用“语言理解”模型,只需要通过简单地微调该预训练模型,利用少量训练样本,就能运用到当前的纠错任务中。2、本专利技术利用BERT模型得到句子中每个位置的置信度TopK候选项后,利用汉字编码计算候选项与原项的相似度,该相似度综合考虑了汉字的拼音与结构信息。最后利用相似度与置信度结合计算出候选项的综合概率,利用该概率重排序选出最终的Top1。充分考虑了同音字、同形字的纠错问题。3、由于汉字的象形文字结构特殊性,如果只通过拼音的字母计算,无法得出准确的相似性,例如日(ri)、目(mu)。而常见的汉字编码如四角编码存在同一编码对应多个汉字,但汉字结构缺大相径庭的情况,比如“有”、“内”“希”的四角编码都是40227。所以四角编码也无法描绘汉字的结构信息。本专利技术对汉字进行笔画级的拆解,并与拼音结合形成新的汉字编码,利用该汉字编码进一步筛选出符合条件的候选集,然后通过Levenshtein算法计算筛选后的候选项与原项的相似度,大大提高了纠错概率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本实施例纠错方法的流程图;图2是汉字编码示意图;图3是BERT模型训练流程图。具体实施方式下面结合实施例对本专利技术做进一步的详细说明,以下实施例是对本专利技术的解释而本专利技术并不局限于以下实施例。一种文本纠错方法,包括以下步骤:训练BERT模型;将待检测句子输入BERT模型,获得每个位置上的置信度TopK候选集;对汉字进行编码,基于汉字编码,计算候选集中的候选项与原项的相似度;利用相似度与置信度综合计算纠错概率;对候选集按照纠错概率重新排序;与设定阈值比较,若概率低于阈值,则不改错;若否,则取出候选集中Top1作为纠错结果。如图1,基本流程为:(1)使用少量标注语料微调BERT模型;具体训练过程说明:BERT模型对输入序列中的随机15%的字进行mask处理,利用mask的上下文信息来预测mask的值。需要尽可能选择错误的字来作为maskedtoken。以样本“1干山鸟飞绝千山鸟飞绝”为例,其中“1”表示错误个数,后面两个句子为错误序列和正确序列。如图3所示,选中“千”的位置,遮住“千”作为训练样本;在多份这样的训练样本中,其中80%用mask代替:[mask]山鸟飞绝;10%用正确字代替:千山鸟飞绝;10%用错误和随机字代替:干山鸟飞绝。最后预测mask的值。模型得到的结果形式为(字,置信度)的候选项。选择置信度最高的作为mask的结果。(2)将检测的句子输入(1)的模型,获得每个位置上的置信度TopK候选集;预测过程说明:当微调好BERT模型后,在预测过程,输入待检测的句子,模型自动为句子中每个位置计算出置信度TopK的候选项。以“千山鸟飞绝,万静(径)人踪灭”为例,令K=5。如下所述的“预测结果范例”,模型预测出的候选项可能会受训练过程中其它相似样本的干扰,而预测出与当前句子语义并不相关的结果。虽然正确选项“径”本文档来自技高网...

【技术保护点】
1.一种文本纠错方法,其特征在于,包括以下步骤:/n训练BERT模型;/n将待检测句子输入BERT模型,获得每个位置上的置信度TopK候选集;/n对汉字进行编码,基于汉字编码,计算候选集中的候选项与原项的相似度;/n利用相似度与置信度综合计算纠错概率;/n对候选集按照纠错概率重新排序;/n与设定阈值比较,若概率低于阈值,则不改错;若否,则取出候选集中Top1作为纠错结果。/n

【技术特征摘要】
1.一种文本纠错方法,其特征在于,包括以下步骤:
训练BERT模型;
将待检测句子输入BERT模型,获得每个位置上的置信度TopK候选集;
对汉字进行编码,基于汉字编码,计算候选集中的候选项与原项的相似度;
利用相似度与置信度综合计算纠错概率;
对候选集按照纠错概率重新排序;
与设定阈值比较,若概率低于阈值,则不改错;若否,则取出候选集中Top1作为纠错结果。


2.根据权利要求1所述的文本纠错方法,其特征在于,对汉字进行笔画级的拆解,并与拼音结合形成新的汉字编码。


3.根据权利要求1所述的文本纠错方法,其特征在于,汉字编码分为拼音字段、音调字段、结构字段、笔画字段和笔画总数字段。


4.根据权利要求1或2或3所述的文本纠错方法,其特征在于,基于汉字编码,使用Levenshtein算法计算候选项与原项的相似度。


5.根据权利要求1所述的文本纠错方法,其特征在于,设置置信度和相似度的权重,将相似度和置信度各自乘上相应的权重,然后求和,得到纠错概率。


6.根据权利要求1所述的文本纠错方法,其特征在于,训练BERT模型过程:BERT对输入序列中的随机比例的字进行mask处理...

【专利技术属性】
技术研发人员:陈司浩
申请(专利权)人:新华智云科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1