当前位置: 首页 > 专利查询>之江实验室专利>正文

一种基于意图一致性的文本纠错方法、装置和介质制造方法及图纸

技术编号:37636388 阅读:14 留言:0更新日期:2023-05-20 08:56
本发明专利技术公开了一种基于意图一致性的文本纠错方法、装置和介质,该方法包括:收集原始纠错数据进行预处理和标注,构建文本纠错模型的纠错数据集;构建基于神经网络的文本纠错模型,将待纠错文本输入至文本纠错模型输出第一字符概率分布;使用第一字符概率分布及其对应的真实标签计算纠错损失值作为第一损失值;使用第一字符概率分布计算基于意图一致性得分的纠错损失值作为第二损失值;基于第一损失值和第二损失值,以两阶段训练的方式训练文本纠错模型,以获取训练好的最终的文本纠错模型;将待纠错文本输入训练得到的文本纠错模型进行纠错,输出纠错后文本。本发明专利技术可以有效地降低文本纠错模型的误纠率,提高纠错准确率,具有很强的实用性。有很强的实用性。有很强的实用性。

【技术实现步骤摘要】
一种基于意图一致性的文本纠错方法、装置和介质


[0001]本专利技术涉及文本纠错领域,尤其涉及一种基于意图一致性的文本纠错方法、装置和介质。

技术介绍

[0002]文本纠错是自然语言处理中的一项重要技术,用于纠正文本中有拼写错误的字词。该技术在许多自然语言处理的场景中(比如智能问答、智能语音助手、光学字符识别等场景)扮演着重要的角色,并且是许多下游任务的前置步骤,比如意图分类任务。在这些场景下,中文文本中的字词经常会被错误地识别为同音字、近音字、形近字等,从而影响下游任务的准确性。
[0003]现有的文本纠错技术方案主要有以下两者:第一种是使用统计语言模型来对文本中的字词错误进行检测和纠正,但该模型仅仅是利用了语料库里的词组的频率信息,无法利用文本中的语义信息,纠错的效果十分有限;第二种是基于深度学习使用神经网络来构建文本纠错模型,比如使用预训练语言模型来实现端到端的文本纠错,该方法能有效利用文本中的语义信息,效果往往比第一种好,也是目前的主流方法。
[0004]受到训练数据的分布和训练方式的影响,基于深度学习的文本纠错模型容易将文本中原本正确的字词误纠为错误字词,这种误纠可能会导致文本中的意图信息发生变化,导致下游的意图分类模型预测的意图也发生变化,从而影响下游任务的准确性。以往的方法忽视了文本纠错前后意图应该保持一致性,从而容易发生误纠的情况。

技术实现思路

[0005]本专利技术的目的在于针对现有技术的不足,提供一种基于意图一致性的文本纠错方法、装置和介质。
[0006]本专利技术的目的是通过以下技术方案来实现的:本专利技术实施例第一方面提供了一种基于意图一致性的文本纠错方法,包括以下步骤:S1、收集原始纠错数据并进行预处理和标注,以构建文本纠错模型的纠错数据集;所述纠错数据集包括训练集、验证集和测试集;S2、基于神经网络构建文本纠错模型,将待纠错文本输入文本纠错模型输出第一字符概率分布;所述文本纠错模型包括嵌入层、编码器和纠错层;S3、根据所述步骤S2获取的待纠错文本的第一字符概率分布及其对应的真实标签计算的纠错损失值作为第一损失值;S4、基于所述步骤S2获取的待纠错文本的第一字符概率分布获取纠错后文本,将待纠错文本和纠错后文本分别输入意图分类模型输出对应的意图类别概率分布,根据意图类别概率分布之间的双向KL散度获取意图一致性得分,以截断的意图一致性得分作为权重对所述步骤S3获取的纠错损失值进行加权以获取加权纠错损失值作为第二损失值;S5、基于所述步骤S3获取的第一损失值和所述步骤S4获取的第二损失值,使用所
述步骤S1构建的纠错数据集以两阶段训练的方式对所述步骤S2构建的文本纠错模型进行训练,以获取训练好的最终的文本纠错模型;S6、接受用户输入的或者所述步骤S1构建的测试集中的待纠错文本,使用所述步骤S5获取的最终的文本纠错模型进行纠错,以获取纠错后文本。
[0007]进一步地,所述步骤S1包括以下子步骤:S11、从需要用到文本纠错技术的系统的历史记录中收集原始纠错数据或基于混淆集随机生成包含错误字词的原始纠错数据;S12、对所述步骤S11收集的原始纠错数据进行预处理,以获取格式统一的纠错数据;所述预处理包括繁简转换、大小写处理和去除特殊字符;S13、对所述步骤S12获取的格式统一的纠错数据进行标注,以获取待纠错文本对应的正确文本作为真实标签,根据待纠错文本及其对应的正确文本获取纠错数据;S14、将所述步骤S13获取的纠错数据按照8:1:1的比例随机划分为训练集、验证集、测试集。
[0008]进一步地,所述步骤S2包括以下子步骤:S21、使用预训练语言模型的embedding模块构建文本纠错模型的嵌入层,将待纠错文本输入嵌入层输出字符嵌入向量序列;S22、使用预训练语言模型的编码器构建文本纠错模型的编码器,将所述步骤S21获取的待纠错文本的字符嵌入向量序列输入编码器输出字符表征向量序列;S23、基于全连接层和softmax层构建文本纠错模型的纠错层,将所述步骤S22获取的待纠错文本的字符表征向量序列输入纠错层输出第一字符概率分布。
[0009]进一步地,所述预训练语言模型包括BERT、RoBERTa和ALBERT模型。
[0010]进一步地,所述步骤S3具体为:通过计算待纠错文本的第一字符概率分布及其对应的真实标签之间的交叉熵损失,以获取纠错损失值,所述纠错损失值为第一损失值。
[0011]进一步地,所述步骤S4包括以下子步骤:S41、选取所述步骤S2获取的待纠错文本中每个字符的第一字符概率分布中概率最大的字符作为模型预测的正确字符,以获取纠错后文本;S42、将待纠错文本输入意图分类模型以获取各个意图类别的概率分布,作为第一意图概率分布;将所述步骤S41获取的纠错后文本输入意图分类模型以获取各个意图类别的概率分布,作为第二意图概率分布;S43、根据所述步骤S42获取的第一意图概率分布和第二意图概率分布计算双向KL散度,根据双向KL散度获取意图一致性得分;S44、将所述步骤S43获取的意图一致性得分进行截断,以使其处于预先设定的范围之内,以截断的意图一致性得分作为权重对按照所述步骤S3获取的纠错损失值进行加权以获取待纠错文本的加权纠错损失值作为第二损失值。
[0012]进一步地,所述步骤S5包括以下子步骤:S51、多次遍历所述步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入所述步骤S2构建的文本纠错模型中以获取第一阶段预测的第一字符概率分布;S52、根据所述步骤S51获取的第一阶段预测的第一字符概率分布和训练集中对应的真实标签计算第一损失值;
S53、根据所述步骤S52获取的第一损失值采用梯度下降法反向更新文本纠错模型的参数;S54、使用所述步骤S1构建的验证集对所述步骤S53获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第一阶段训练,并保存当前训练好的文本纠错模型结构及其参数;否则,返回所述步骤S51;S55、多次遍历所述步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入所述步骤S54保存的训练好的文本纠错模型中以获取第二阶段预测的第一字符概率分布;S56、根据所述步骤S55获取的第二阶段预测的第一字符概率分布和训练集中对应的真实标签采用所述步骤S4中的方法计算第二损失值;S57、根据所述步骤S56获取的第二损失值采用梯度下降法反向更新文本纠错模型的参数;S58、使用所述步骤S1构建的验证集对所述步骤S57获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第二阶段训练,并保存当前训练好的文本纠错模型结构及其参数以获取最终的文本纠错模型;否则,返回所述步骤S55。
[0013]进一步地,所述步骤S6包括以下子步骤:S61、将用户输入的或者所述步骤S1构建的测试集中的待纠错文本输入所述步骤S5获取的最终的文本纠错模型中,以获取第一字符概率分布;S62、对于待纠错文本中的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于意图一致性的文本纠错方法,其特征在于,包括以下步骤:S1、收集原始纠错数据并进行预处理和标注,以构建文本纠错模型的纠错数据集;所述纠错数据集包括训练集、验证集和测试集;S2、基于神经网络构建文本纠错模型,将待纠错文本输入文本纠错模型输出第一字符概率分布;所述文本纠错模型包括嵌入层、编码器和纠错层;S3、根据所述步骤S2获取的待纠错文本的第一字符概率分布及其对应的真实标签计算的纠错损失值作为第一损失值;S4、基于所述步骤S2获取的待纠错文本的第一字符概率分布获取纠错后文本,将待纠错文本和纠错后文本分别输入意图分类模型输出对应的意图类别概率分布,根据意图类别概率分布之间的双向KL散度获取意图一致性得分,以截断的意图一致性得分作为权重对所述步骤S3获取的纠错损失值进行加权以获取加权纠错损失值作为第二损失值;S5、基于所述步骤S3获取的第一损失值和所述步骤S4获取的第二损失值,使用所述步骤S1构建的纠错数据集以两阶段训练的方式对所述步骤S2构建的文本纠错模型进行训练,以获取训练好的最终的文本纠错模型;S6、接受用户输入的或者所述步骤S1构建的测试集中的待纠错文本,使用所述步骤S5获取的最终的文本纠错模型进行纠错,以获取纠错后文本。2.根据权利要求1所述的基于意图一致性的文本纠错方法,其特征在于,所述步骤S1包括以下子步骤:S11、从需要用到文本纠错技术的系统的历史记录中收集原始纠错数据或基于混淆集随机生成包含错误字词的原始纠错数据;S12、对所述步骤S11收集的原始纠错数据进行预处理,以获取格式统一的纠错数据;所述预处理包括繁简转换、大小写处理和去除特殊字符;S13、对所述步骤S12获取的格式统一的纠错数据进行标注,以获取待纠错文本对应的正确文本作为真实标签,根据待纠错文本及其对应的正确文本获取纠错数据;S14、将所述步骤S13获取的纠错数据按照8:1:1的比例随机划分为训练集、验证集、测试集。3.根据权利要求1所述的基于意图一致性的文本纠错方法,其特征在于,所述步骤S2包括以下子步骤:S21、使用预训练语言模型的embedding模块构建文本纠错模型的嵌入层,将待纠错文本输入嵌入层输出字符嵌入向量序列;S22、使用预训练语言模型的编码器构建文本纠错模型的编码器,将所述步骤S21获取的待纠错文本的字符嵌入向量序列输入编码器输出字符表征向量序列;S23、基于全连接层和softmax层构建文本纠错模型的纠错层,将所述步骤S22获取的待纠错文本的字符表征向量序列输入纠错层输出第一字符概率分布。4.根据权利要求3所述的基于意图一致性的文本纠错方法,其特征在于,所述预训练语言模型包括BERT、RoBERTa和ALBERT模型。5.根据权利要求1所述的基于意图一致性的文本纠错方法,其特征在于,所述步骤S3具体为:通过计算待纠错文本的第一字符概率分布及其对应的真实标签之间的交叉熵损失,以获取纠错损失值,所述纠错损失值为第一损失值。
6.根据权利要求1所述的基于意图一致性的文本纠错方法,其特征在于,所述步骤S4包括以下子步骤:S41、选取所述步骤S2获取的待纠错文本中每个字符的第一字符概率分布中概率最大的字符作为模型预测的正确字符,...

【专利技术属性】
技术研发人员:赵鑫安宋伟朱世强谢冰王雨菡
申请(专利权)人:之江实验室
类型:发明
国别省市:

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

1