CN116136957B - 一种基于意图一致性的文本纠错方法、装置和介质 - Google Patents

一种基于意图一致性的文本纠错方法、装置和介质 Download PDF

Info

Publication number
CN116136957B
CN116136957B CN202310410370.1A CN202310410370A CN116136957B CN 116136957 B CN116136957 B CN 116136957B CN 202310410370 A CN202310410370 A CN 202310410370A CN 116136957 B CN116136957 B CN 116136957B
Authority
CN
China
Prior art keywords
text
error correction
corrected
intention
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310410370.1A
Other languages
English (en)
Other versions
CN116136957A (zh
Inventor
赵鑫安
宋伟
朱世强
谢冰
王雨菡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Lab
Original Assignee
Zhejiang Lab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Lab filed Critical Zhejiang Lab
Priority to CN202310410370.1A priority Critical patent/CN116136957B/zh
Publication of CN116136957A publication Critical patent/CN116136957A/zh
Application granted granted Critical
Publication of CN116136957B publication Critical patent/CN116136957B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)

Abstract

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

Description

一种基于意图一致性的文本纠错方法、装置和介质
技术领域
本发明涉及文本纠错领域,尤其涉及一种基于意图一致性的文本纠错方法、装置和介质。
背景技术
文本纠错是自然语言处理中的一项重要技术,用于纠正文本中有拼写错误的字词。该技术在许多自然语言处理的场景中(比如智能问答、智能语音助手、光学字符识别等场景)扮演着重要的角色,并且是许多下游任务的前置步骤,比如意图分类任务。在这些场景下,中文文本中的字词经常会被错误地识别为同音字、近音字、形近字等,从而影响下游任务的准确性。
现有的文本纠错技术方案主要有以下两者:第一种是使用统计语言模型来对文本中的字词错误进行检测和纠正,但该模型仅仅是利用了语料库里的词组的频率信息,无法利用文本中的语义信息,纠错的效果十分有限;第二种是基于深度学习使用神经网络来构建文本纠错模型,比如使用预训练语言模型来实现端到端的文本纠错,该方法能有效利用文本中的语义信息,效果往往比第一种好,也是目前的主流方法。
受到训练数据的分布和训练方式的影响,基于深度学习的文本纠错模型容易将文本中原本正确的字词误纠为错误字词,这种误纠可能会导致文本中的意图信息发生变化,导致下游的意图分类模型预测的意图也发生变化,从而影响下游任务的准确性。以往的方法忽视了文本纠错前后意图应该保持一致性,从而容易发生误纠的情况。
发明内容
本发明的目的在于针对现有技术的不足,提供一种基于意图一致性的文本纠错方法、装置和介质。
本发明的目的是通过以下技术方案来实现的:本发明实施例第一方面提供了一种基于意图一致性的文本纠错方法,包括以下步骤:
S1、收集原始纠错数据并进行预处理和标注,以构建文本纠错模型的纠错数据集;所述纠错数据集包括训练集、验证集和测试集;
S2、基于神经网络构建文本纠错模型,将待纠错文本输入文本纠错模型输出第一字符概率分布;所述文本纠错模型包括嵌入层、编码器和纠错层;
S3、根据所述步骤S2获取的待纠错文本的第一字符概率分布及其对应的真实标签计算的纠错损失值作为第一损失值;
S4、基于所述步骤S2获取的待纠错文本的第一字符概率分布获取纠错后文本,将待纠错文本和纠错后文本分别输入意图分类模型输出对应的意图类别概率分布,根据意图类别概率分布之间的双向KL散度获取意图一致性得分,以截断的意图一致性得分作为权重对所述步骤S3获取的纠错损失值进行加权以获取加权纠错损失值作为第二损失值;
S5、基于所述步骤S3获取的第一损失值和所述步骤S4获取的第二损失值,使用所述步骤S1构建的纠错数据集以两阶段训练的方式对所述步骤S2构建的文本纠错模型进行训练,以获取训练好的最终的文本纠错模型;
S6、接受用户输入的或者所述步骤S1构建的测试集中的待纠错文本,使用所述步骤S5获取的最终的文本纠错模型进行纠错,以获取纠错后文本。
进一步地,所述步骤S1包括以下子步骤:
S11、从需要用到文本纠错技术的系统的历史记录中收集原始纠错数据或基于混淆集随机生成包含错误字词的原始纠错数据;
S12、对所述步骤S11收集的原始纠错数据进行预处理,以获取格式统一的纠错数据;所述预处理包括繁简转换、大小写处理和去除特殊字符;
S13、对所述步骤S12获取的格式统一的纠错数据进行标注,以获取待纠错文本对应的正确文本作为真实标签,根据待纠错文本及其对应的正确文本获取纠错数据;
S14、将所述步骤S13获取的纠错数据按照8:1:1的比例随机划分为训练集、验证集、测试集。
进一步地,所述步骤S2包括以下子步骤:
S21、使用预训练语言模型的embedding模块构建文本纠错模型的嵌入层,将待纠错文本输入嵌入层输出字符嵌入向量序列;
S22、使用预训练语言模型的编码器构建文本纠错模型的编码器,将所述步骤S21获取的待纠错文本的字符嵌入向量序列输入编码器输出字符表征向量序列;
S23、基于全连接层和softmax层构建文本纠错模型的纠错层,将所述步骤S22获取的待纠错文本的字符表征向量序列输入纠错层输出第一字符概率分布。
进一步地,所述预训练语言模型包括BERT、RoBERTa和ALBERT模型。
进一步地,所述步骤S3具体为:通过计算待纠错文本的第一字符概率分布及其对应的真实标签之间的交叉熵损失,以获取纠错损失值,所述纠错损失值为第一损失值。
进一步地,所述步骤S4包括以下子步骤:
S41、选取所述步骤S2获取的待纠错文本中每个字符的第一字符概率分布中概率最大的字符作为模型预测的正确字符,以获取纠错后文本;
S42、将待纠错文本输入意图分类模型以获取各个意图类别的概率分布,作为第一意图概率分布;将所述步骤S41获取的纠错后文本输入意图分类模型以获取各个意图类别的概率分布,作为第二意图概率分布;
S43、根据所述步骤S42获取的第一意图概率分布和第二意图概率分布计算双向KL散度,根据双向KL散度获取意图一致性得分;
S44、将所述步骤S43获取的意图一致性得分进行截断,以使其处于预先设定的范围之内,以截断的意图一致性得分作为权重对按照所述步骤S3获取的纠错损失值进行加权以获取待纠错文本的加权纠错损失值作为第二损失值。
进一步地,所述步骤S5包括以下子步骤:
S51、多次遍历所述步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入所述步骤S2构建的文本纠错模型中以获取第一阶段预测的第一字符概率分布;
S52、根据所述步骤S51获取的第一阶段预测的第一字符概率分布和训练集中对应的真实标签计算第一损失值;
S53、根据所述步骤S52获取的第一损失值采用梯度下降法反向更新文本纠错模型的参数;
S54、使用所述步骤S1构建的验证集对所述步骤S53获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第一阶段训练,并保存当前训练好的文本纠错模型结构及其参数;否则,返回所述步骤S51;
S55、多次遍历所述步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入所述步骤S54保存的训练好的文本纠错模型中以获取第二阶段预测的第一字符概率分布;
S56、根据所述步骤S55获取的第二阶段预测的第一字符概率分布和训练集中对应的真实标签采用所述步骤S4中的方法计算第二损失值;
S57、根据所述步骤S56获取的第二损失值采用梯度下降法反向更新文本纠错模型的参数;
S58、使用所述步骤S1构建的验证集对所述步骤S57获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第二阶段训练,并保存当前训练好的文本纠错模型结构及其参数以获取最终的文本纠错模型;否则,返回所述步骤S55。
进一步地,所述步骤S6包括以下子步骤:
S61、将用户输入的或者所述步骤S1构建的测试集中的待纠错文本输入所述步骤S5获取的最终的文本纠错模型中,以获取第一字符概率分布;
S62、对于待纠错文本中的每个字符,选取字符对应的第一字符概率分布中概率最大的字符作为正确字符,以获取纠错后文本。
本发明实施例第二方面提供了一种基于意图一致性的文本纠错装置,包括存储器和处理器,所述存储器与所述处理器耦接;其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现上述的基于意图一致性的文本纠错方法。
本发明实施例第三方面提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,用于实现上述的基于意图一致性的文本纠错方法。
与现有技术相比,本发明的有益效果是:
(1)本发明基于预训练语言模型构建文本纠错模型,预训练语言模型具有很强的语言理解和表征能力,能够有效地提取文本中的语义和语法信息,利用构建的文本纠错模型有助于提升文本纠错的准确性;
(2)本发明使用已经训练完成的意图分类模型分别计算待纠错文本和文本纠错模型预测得到的纠错后文本的意图类别概率分布,计算两个意图类别概率分布之间的双向KL散度作为意图一致性得分,能够有效地衡量待纠错文本和文本纠错模型预测得到的纠错后文本之间意图信息的差异性;
(3)本发明使用截断后的意图一致性得分作为权重,乘上原纠错损失值作为第二损失值来更新文本纠错模型的参数,该损失值能根据待纠错文本与纠错后文本之间意图的差异性自动调节每个训练样本的权重,让训练模型时更偏重于纠错前后意图变化较大的训练样本,减少误纠情况的发生,提升整体的纠错准确率;
(4)本发明采用两阶段的方式训练文本纠错模型,第一阶段使用第一损失值训练文本纠错模型,第二阶段在第一阶段训练得到文本纠错模型的基础上使用第二损失值进行进一步地训练,能够得到最终的文本纠错模型;如此通过两阶段的训练方式可以让训练的结果更稳定。
附图说明
图1是本发明的基于意图一致性的文本纠错方法流程图;
图2是本发明的文本纠错模型的结构示意图;
图3是本发明的Transformer模块的结构示意图;
图4是本发明的文本纠错模型的纠错层的结构示意图;
图5是本发明的基于意图一致性的文本纠错装置的一种结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面结合附图,对本发明进行详细说明。在不冲突的情况下,下述的实施例及实施方式中的特征可以相互组合。
参见图1,本发明的基于意图一致性的文本纠错方法,具体包括以下步骤:
S1、收集原始纠错数据并进行预处理和标注,以构建文本纠错模型的纠错数据集。
S11、从需要用到文本纠错技术的系统的历史记录中收集原始纠错数据或基于混淆集随机生成包含错误字词的原始纠错数据。
本实施例中,训练一个文本纠错模型需要用到大量的纠错数据,原始纠错数据可以从智能问答、智能聊天、智能语音助手等需要用到文本纠错技术的系统的历史记录中收集。从中收集得到的原始纠错数据包含多条待纠错文本,其中每条待纠错文本可能不存在字词错误(即不需要进行纠错),也可能存在一个或多个字词错误。常见的字词错误有同音字、近音字、形近字错误等,如表1所示是几种常见的字词错误的例子:
表1:字词错误示例
错误类型 待纠错文本 正确文本 错误详情
无错误 今天天气很好 今天天气很好 无字词错误
同音字错误 埃及金子塔在哪 埃及金字塔在哪 将“字”错误识别为“子”
近音字错误 流浪织女 牛郎织女 将“牛郎”错误识别为“流浪”
形近字错误 他很少座火车 他很少坐火车 将“坐”错误识别为“座”
除了从智能问答、智能聊天、智能语音助手等系统中收集原始纠错数据,也可以基于混淆集随机生成包含错误字词的纠错数据。具体地,先获取大量无错误的文本,然后采用随机替换的方法将原来无错误的文本中正确的字词随机替换为混淆集中对应的易混字词(一般为同音字、近音字或形近字等),然后将替换后得到的文本作为待纠错文本,原文本作为正确文本,比如将“今天天气很好”中的“天”替换为同音字“田”得到一个待纠错文本“今天田气很好”,通过该方法可以获取大量的人造的原始纠错数据。
S12、对步骤S11收集的原始纠错数据进行预处理,以获取格式统一的纠错数据。其中,预处理包括繁简转换、大小写处理、去除特殊字符。
本实施例中,在收集得到原始纠错数据后,还需要对其中的每条待纠错文本进行预处理以得到具有统一的符合模型输入格式的文本。具体地,包括以下步骤:
S121、繁简转换:使用OpenCC等开源工具将文本中的繁体字统一转化为简体字。
S122、大小写处理:将所有的字符统一修改为大写或者统一修改成小写,转化为统一的格式。
S123、去除特殊字符:将原始纠错数据文本中的特殊字符去除,比如制表符、换行符、空格等。
S13、对步骤S12获取的格式统一的纠错数据进行标注,以获取待纠错文本对应的正确文本作为真实标签,根据待纠错文本及其对应的正确文本获取纠错数据。
本实施例中,在对原始纠错数据进行预处理后,对其中的每条待纠错文本进行标注得到对应的正确文本作为真实标签,根据待纠错文本及其对应的正确文本获取纠错数据,用于构建训练文本纠错模型所需的数据集。
具体地,对于待纠错文本
Figure SMS_2
,其中,/>
Figure SMS_5
表示待纠错文本X中的第i个字符,n是待纠错文本X的长度,在中文场景下的字符主要是指中文汉字,此外还包括字母、数字、特殊字符和某些特殊字符串;当后续选用的文本纠错模型为预训练语言模型时还需要在待纠错文本X前添加[CLS]字符串。采用人工标注的标注方式对待纠错文本进行标注得到正确文本/>
Figure SMS_8
,其中/>
Figure SMS_1
是待纠错文本X中第i个字符/>
Figure SMS_6
对应的正确字符。如果字符/>
Figure SMS_9
没有错误,则正确文本Y中的字符/>
Figure SMS_11
与字符/>
Figure SMS_3
相同。当待纠错文本X中不包含字词错误时,正确文本Y与待纠错文本X相同。文本纠错的目的就是要将待纠错文本X纠正为正确文本Y。假设上述步骤中收集到的原始纠错数据中包含M条待纠错文本,不妨记为{
Figure SMS_4
:1<=m<=M},对其中每条待纠错文本进行标注后得到用于训练文本纠错模型的纠错数据{(/>
Figure SMS_7
,/>
Figure SMS_10
):1<=m<=M}。
S14、将步骤S13获取的纠错数据按照8:1:1的比例随机划分为训练集、验证集、测试集,分别用于训练文本纠错模型并调整文本纠错模型的超参数、评估文本纠错模型的效果、测试最终的文本纠错模型。
S2、基于神经网络构建文本纠错模型,将待纠错文本输入文本纠错模型输出第一字符概率分布。其中,文本纠错模型包括嵌入层、编码器和纠错层。
本实施例中,基于神经网络采用深度学习的方法构建文本纠错模型,文本纠错模型是用于将待纠错文本纠正为正确文本的模型。具体地,文本纠错模型可以使用CNN(Convolutional Neural Network,卷积神经网络)、RNN(Recurrent Neural Network,循环神经网络)、GRU(Gate Recurrent Unit,门控循环单元)、LSTM(Long Short Term Memory,长短期记忆网络)、transformer等神经网络进行构建,也可以采用其他模型进行构建,此处不做限制。考虑到基于transformer的预训练语言模型如BERT(Bidirectional EncoderRepresentations from Transformers)、RoBERTa、ALBERT等具有很强的语言理解和表征能力,在许多自然语言处理任务上都取得了优异的效果,优选地,本实施例中采用基于transformer的预训练语言模型构建文本纠错模型,并且实现一个文本纠错模型可以采用序列标注的端到端的框架,也可以采用seq2seq(序列到序列)、seq2edits(序列到编辑)等框架,本实施例中对具体采用哪种框架实现文本纠错模型不做限制。
本实施例中,以BERT预训练语言模型为例,构建一个基于序列标注的端到端的文本纠错模型,文本纠错模型包括嵌入层、编码器和纠错层,如图2所示。该文本纠错模型的构建方式具体为:文本纠错模型的嵌入层采用BERT预训练语言模型的嵌入层,用于获取文本字符的嵌入向量;编码器采用BERT预训练语言模型的编码器,该编码器由多个transformer模块构成,例如BERT的transformer编码器由12个transformer模块堆叠而成,用于获取文本字符的向量表征;纠错层由全连接层和softmax层构成,用于预测文本中每个字符对应的正确字符的概率分布。采用BERT预训练语言模型构建文本纠错模型可以有效地提取文本中的语义信息和语法信息,有助于提升文本纠错的准确率。
进一步地,将待纠错文本输入文本纠错模型即可输出第一字符概率分布,具体为:在获取一个待纠错文本后,首先使用BERT预训练语言模型的词表得到该待纠错文本对应的字符整数索引序列,接着将其输入嵌入层获得每个字符的嵌入向量;然后将待纠错文本的字符嵌入向量序列依次输入编码器中的各个transformer模块,将最后一个transformer模块输出的字符的向量作为该待纠错文本中每个字符的表征向量;最后将待纠错文本的字符表征向量输入纠错层来预测待纠错文本中每个字符纠正为词表中每个字符的概率,以得到待纠错文本中每个字符对应的正确字符的概率分布,即第一字符概率分布。
具体地,构建文本纠错模型和获取待纠错文本的第一字符概率分布的具体步骤如下所示:
S21、使用预训练语言模型的embedding模块构建文本纠错模型的嵌入层,将待纠错文本输入嵌入层输出字符嵌入向量序列。
本实施例中,对于输入的待纠错文本
Figure SMS_13
,首先使用预训练语言模型的词表V将待纠错文本X转换为词表中对应的整数索引序列;需要说明的是,词表V包含常用的字符和字符片段,词表的大小记为N,词表中第i个字符或字符片段记为/>
Figure SMS_15
,1≤i≤N。然后将待纠错文本X的整数索引序列输入预训练语言模型的embedding模块获取待纠错文本X中每个字符/>
Figure SMS_18
对应的字符嵌入向量(character embedding)/>
Figure SMS_14
和位置嵌入向量(position embedding)/>
Figure SMS_17
。最后将字符嵌入向量和位置嵌入向量相加作为每个字符的字符嵌入向量,即可获取待纠错文本X中每个字符/>
Figure SMS_20
的字符嵌入向量/>
Figure SMS_21
= />
Figure SMS_12
+ />
Figure SMS_16
,进一步获取待纠错文本X的字符嵌入向量序列,即/>
Figure SMS_19
S22、使用预训练语言模型的编码器构建文本纠错模型的编码器,将步骤S21获取的待纠错文本的字符嵌入向量序列输入编码器输出字符表征向量序列。
本实施例中,预训练语言模型的编码器由多个transformer模块构成,每个transformer模块由多头自注意力机制(multi-head self-attention operation)和前向传播神经网络(feed-forward network)以及残差连接和层归一化构成,如图3所示。每个transformer模块的输入是上一层的字符隐藏状态向量序列,输出是新的字符隐藏状态向量序列。
示例性地,以BERT预训练语言模型为例,BERT预训练语言模型的编码器由12个transformer模块堆叠而成,第一个transformer模块的输入是字符嵌入向量序列,后续每一个transformer模块的输入是前一个transformer模块的输出向量序列。将最后一个transformer模块输出的字符向量序列作为待纠错文本X的字符表征向量序列,记为
Figure SMS_22
,其中,/>
Figure SMS_23
是待纠错文本X中第i个字符/>
Figure SMS_24
的字符表征向量。
S23、基于全连接层和softmax层构建文本纠错模型的纠错层,将步骤S22获取的待纠错文本的字符表征向量序列输入纠错层输出第一字符概率分布。
本实施例中,文本纠错模型的纠错层由一个全连接层和softmax层构成,如图4所示,输入待纠错文本的字符表征向量序列,输出文本纠错模型预测的待纠错文本中每个字符对应的正确字符的概率分布,即第一字符概率分布。对于待纠错文本X,其第i个字符
Figure SMS_25
预测为词表V中第j个字符/>
Figure SMS_26
的概率的表达式为:
Figure SMS_27
其中,W和b是全连接层的参数,softmax(·)是归一化指数函数,
Figure SMS_28
表示文本纠错模型将待纠错文本X中的第i个字符/>
Figure SMS_29
预测为词表V中第j个字符/>
Figure SMS_30
的概率,
Figure SMS_31
是文本纠错模型预测的待纠错文本X中的第i个字符/>
Figure SMS_32
对应的正确字符的概率分布,即第一字符概率分布。
S3、根据步骤S2获取的待纠错文本的第一字符概率分布及其对应的真实标签计算的纠错损失值作为第一损失值。
本实施例中,待纠错文本的真实标签为步骤S1中对待纠错文本进行标注得到的正确文本,通过计算待纠错文本的第一字符概率分布及其对应的真实标签之间的交叉熵损失,即可获取纠错损失值,即第一损失值。该损失反映了文本纠错模型预测结果与真实标签的差异程度,损失值越小,说明差异越小,文本纠错模型的性能越好。在后期的训练过程中,通过最小化该损失值来优化模型的参数。
具体地,对于待纠错文本
Figure SMS_33
,其真实标签为步骤S1中标注后得到的正确文本/>
Figure SMS_34
,将待纠错文本X输入步骤S2中构建的文本纠错模型中得到每个字符/>
Figure SMS_35
的第一字符概率分布
Figure SMS_36
,其中,/>
Figure SMS_37
表示文本纠错模型将待纠错文本X中的第i个字符/>
Figure SMS_38
预测为词表V中第j个字符/>
Figure SMS_39
的概率。计算待纠错文本X的第一字符概率分布与真实标签Y之间的交叉熵损失作为纠错损失值,即第一损失值,其表达式为:
Figure SMS_40
其中,
Figure SMS_41
表示第一损失值,/>
Figure SMS_42
是文本纠错模型将待纠错文本X中第i个字符
Figure SMS_43
预测为真实标签/>
Figure SMS_44
的概率。
S4、基于步骤S2获取的待纠错文本的第一字符概率分布获取纠错后文本,将待纠错文本和纠错后文本分别输入意图分类模型输出对应的意图类别概率分布,根据意图类别概率分布之间的双向KL散度获取意图一致性得分,以截断的意图一致性得分作为权重对步骤S3获取的纠错损失值进行加权以获取加权纠错损失值作为第二损失值。
S41、选取步骤S2获取的待纠错文本中每个字符的第一字符概率分布中概率最大的字符作为模型预测的正确字符,以获取纠错后文本。
具体地,对于待纠错文本
Figure SMS_45
,将待纠错文本X输入步骤S2构建的文本纠错模型得到每个字符/>
Figure SMS_46
的第一字符概率分布
Figure SMS_47
,其中/>
Figure SMS_48
就是文本纠错模型将待纠错文本X中的第i个字符/>
Figure SMS_49
预测为词表V中第j个字符/>
Figure SMS_50
的概率,可以按照以下公式获取文本纠错模型预测得到的纠错后文本/>
Figure SMS_51
Figure SMS_52
Figure SMS_53
其中,
Figure SMS_54
是文本纠错模型预测的待纠错文本X中第i个字符/>
Figure SMS_55
对应的概率最大的正确字符,/>
Figure SMS_56
是文本纠错模型预测得到的纠错后文本。
S42、将待纠错文本输入意图分类模型以获取各个意图类别的概率分布,作为第一意图概率分布;将步骤S41获取的纠错后文本输入意图分类模型以获取各个意图类别的概率分布,作为第二意图概率分布。
本实施例中,可以采用现有的或公开的意图分类模型,使用意图分类模型可以获取待纠错文本和纠错后文本对应的意图类别的概率分布。意图分类模型是自然语言处理中最常用的模型,用于实现意图分类的功能,常用于智能问答、智能对话等系统,该意图分类模型用于识别用户的意图,系统根据识别得到的意图再决定下一步的动作和策略。在实际应用中,意图分类数据的获取难度较低,因此训练一个高性能的意图分类模型也比较简单。意图分类模型可以采用传统的机器学习算法实现,比如SVM(support vector machines,支持向量机)、决策树、GBDT、Xgboost等算法,也可以采用基于深度学习的方法,比如CNN、RNN、GRU、LSTM、Transformer、预训练语言模型(比如BERT、RoBERTa、ALBERT等)等模型来实现。
示例性地,可以采用以下方式构建并训练一个意图分类模型:首先收集智能问答等系统中的意图分类文本,并标注每条文本对应的意图类别,得到意图分类数据;接着基于BERT预训练语言模型构建意图分类模型,将文本输入BERT模型得到文本的字符表征向量序列,将BERT的[CLS]位置输出的表征向量输入由一层全连接层和softmax层构成的分类层输出该文本属于各个意图类别的概率;基于交叉熵损失,使用意图分类数据来训练基于BERT的意图分类模型,优化模型的参数并将最优的模型参数保存下来。本发明实施例中对具体采用的构建和训练意图分类模型的方法不做限制。
具体地,本发明实施例中假设意图分类功能中有K个意图类别,并且下游的意图分类模型已经训练完成,将已经训练完成的意图分类模型记为CLS_Model。给定输入的文本X,意图分类模型CLS_Model的输出是各个意图类别的概率分布,具体如以下公式:
Figure SMS_57
其中,
Figure SMS_58
是意图分类模型CLS_Model预测输出的文本X对应各个意图类别的概率分布,/>
Figure SMS_59
是文本X属于第k个意图类别的概率(1≤k≤K),满足0≤/>
Figure SMS_60
≤1,/>
Figure SMS_61
进一步地,将待纠错文本X及其对应的纠错后文本
Figure SMS_62
分别输入意图分类模型CLS_Model,可以得到各自对应的各个意图类别的概率分布,表示为:
Figure SMS_63
Figure SMS_64
其中,
Figure SMS_65
是待纠错文本X对应的意图类别概率分布,即第一意图概率分布;/>
Figure SMS_66
是纠错后文本/>
Figure SMS_67
对应的意图类别概率分布,即第二意图概率分布。
S43、根据步骤S42获取的第一意图概率分布和第二意图概率分布计算双向KL散度,根据双向KL散度获取意图一致性得分。
本实施例中,意图一致性得分用来衡量两个意图概率分布之间的一致程度。双向KL散度(bidirectional Kullback-Leibler divergence)可以用来衡量两个分布之间的差异性,双向KL散度越小表明两个分布之间的差异越小。
具体地,基于双向KL散度计算待第一意图概率分布和第二意图概率分布之间的意图一致性得分
Figure SMS_68
,具体如以下公式:
Figure SMS_69
其中,KL(P║Q)是KL散度,用于计算P和Q这两个概率分布之间的差异程度,其公式为
Figure SMS_70
应当理解的是,由于KL散度本身具有不对称性,采用双向KL散度可以得到一个对称的差异,用于衡量第一意图概率分布和第二意图概率分布之间的差异程度:意图一致性得分
Figure SMS_71
越小,表明待纠错文本X和纠错后文本/>
Figure SMS_72
之间的意图越一致;当意图一致性得分
Figure SMS_73
时,表示待纠错文本X和纠错后文本/>
Figure SMS_74
之间的意图完全相同;意图一致性得分/>
Figure SMS_75
越大,表明待纠错文本X和纠错后文本/>
Figure SMS_76
之间的意图差异越大。使用意图一致性得分/>
Figure SMS_77
可以用来衡量待纠错文本和文本纠错模型预测得到的纠错后文本之间的意图差异程度,间接地反映了文本纠错模型纠错时对待纠错文本的改变程度。
S44、将步骤S43获取的意图一致性得分进行截断,以使其处于预先设定的范围之内,以截断的意图一致性得分作为权重对步骤S3获取的纠错损失值进行加权以获取待纠错文本的加权纠错损失值作为第二损失值。
具体地,对于待纠错文本
Figure SMS_78
,以及对应的意图一致性得分/>
Figure SMS_79
,第二损失值是以截断的意图一致性得分作为权重的加权纠错损失值,其对应的表达式为:
Figure SMS_80
其中,
Figure SMS_82
表示第二损失值;/>
Figure SMS_86
是文本纠错模型将待纠错文本X中第i个字符
Figure SMS_90
预测为真实标签/>
Figure SMS_83
的概率;/>
Figure SMS_87
和/>
Figure SMS_91
是两个预先设定的参数,满足0</>
Figure SMS_93
<1</>
Figure SMS_81
,可以通过文本纠错模型在验证集上效果进行选取,用于对意图一致性得分/>
Figure SMS_85
进行截断;
Figure SMS_89
是使用参数/>
Figure SMS_92
和/>
Figure SMS_84
对意图一致性得分/>
Figure SMS_88
截断后得到的;n是待纠错文本的长度。
需要说明的是,当意图一致性得分
Figure SMS_95
小于/>
Figure SMS_98
,/>
Figure SMS_101
=/>
Figure SMS_96
;当意图一致性得分/>
Figure SMS_99
大于/>
Figure SMS_102
,/>
Figure SMS_104
=/>
Figure SMS_94
;通过min()和max()操作可以将意图一致性得分/>
Figure SMS_97
限制在/>
Figure SMS_100
和/>
Figure SMS_103
之间,避免过大或者过小的意图一致性得分对文本纠错模型训练造成的损害。
使用
Figure SMS_105
和/>
Figure SMS_106
这两个参数对意图一致性得分/>
Figure SMS_107
进行截断有以下两个原因:一是训练数据中有部分待纠错文本中是没有字词错误的,文本纠错模型预测输出的纠错后文本很有可能与原文本相同,因此原文本与纠错后文本的意图一致性得分为0,此外还有可能因为文本纠错模型能力不足,无法将输入的待纠错文本中的字词错误成功纠正,导致模型预测得到的纠错后文本与原文本相同,对应的意图一致性得分也为0,在这两种情况下,若不对/>
Figure SMS_108
进行截断,得到的第二损失值也为0,对应的模型参数的梯度也为0,导致该训练样本对更新文本纠错模型参数的贡献为0,该训练样本因此成为了一个无效样本,因此对意图一致性得分进行截断能保证用该训练样本对应的第二损失值计算得到的梯度不为0;二是当某一训练样本的待纠错文本与纠错后文本之间的意图一致性得分很高时,若不对意图一致性得分进行截断可能会使同一批次训练样本中该训练样本对应的损失值的比重特别大,导致更新模型参数时严重受到该训练样本的影响从而导致过拟合,通过对意图一致性得分/>
Figure SMS_109
进行最大值截断,可以避免这种情况的发生。
此外,第二损失值是使用截断的意图一致性得分作为权重乘上第一损失值得到的。某一训练样本对应的截断的意图一致性得分越高,表明纠错后文本与原待纠错文本的差距越大,表明文本纠错模型很有可能存在误纠的情况,此时文本纠错模型在更新参数时更应该着重考虑该训练样本,即增加该训练样本计算得到的第一损失值在训练过程中的权重(得到第二损失值);截断的意图一致性得分越低,说明纠错后文本与原待纠错文本的差距越小,说明该训练样本存在误纠的可能性较低,此时该训练样本在文本纠错模型更新参数时的贡献较低,即降低该训练样本计算得到的第一损失值在训练过程中的权重(得到第二损失值)。
S5、基于步骤S3获取的第一损失值和步骤S4获取的第二损失值,使用步骤S1构建的纠错数据集以两阶段训练的方式对步骤S2构建的文本纠错模型进行训练,以获取训练好的最终的文本纠错模型。
本实施例中,采用两阶段的方式训练步骤S2中构建的文本纠错模型:第一阶段训练时,基于第一损失值,使用步骤S1中得到的纠错数据集训练文本纠错模型,保存最优的文本纠错模型的参数;第二阶段训练时,基于第二损失值,使用步骤S1中得到的纠错数据集训练第一阶段训练保存的文本纠错模型,保存最优的文本纠错模型的参数。需要注意的是,第二阶段训练是在第一阶段训练保存的文本纠错模型的基础上进行训练的。
应当理解的是,第一阶段训练是一般的文本纠错模型的训练方法,基于此可以得到一个具有一定纠错准确率的文本纠错模型,但是该文本纠错模型还存在着不小的误纠率;在第一阶段训练的基础上,进行第二阶段训练可以对该文本纠错模型进行进一步地优化,提升纠错的准确率,降低误纠率。
具体地,获取训练好的文本纠错模型包括以下步骤:
S51、多次遍历步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入步骤S2构建的文本纠错模型中以获取第一阶段预测的第一字符概率分布。
S52、根据步骤S51获取的第一阶段预测的第一字符概率分布和训练集中对应的真实标签计算第一损失值。
需要说明的是,每个批次训练数据样本的第一损失值是该批次中各个训练数据样本的第一损失值的平均值。
S53、根据步骤S52获取的第一损失值采用梯度下降法反向更新文本纠错模型的参数。
本实施例中,文本纠错模型的参数包括嵌入层、编码器和纠错层的参数。
S54、使用步骤S1构建的验证集对步骤S53获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第一阶段训练,并保存当前训练好的文本纠错模型结构及其参数;否则,返回步骤S51。
S55、多次遍历步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入步骤S54保存的训练好的文本纠错模型中以获取第二阶段预测的第一字符概率分布。
S56、根据步骤S55获取的第二阶段预测的第一字符概率分布和训练集中对应的真实标签采用步骤S4中的方法计算第二损失值。
需要说明的是,每个批次训练数据样本的第二损失值是该批次中各个训练数据样本的第二损失值的平均值。
S57、根据步骤S56获取的第二损失值采用梯度下降法反向更新文本纠错模型的参数。
S58、使用步骤S1构建的验证集对步骤S57获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第二阶段训练,并保存当前训练好的文本纠错模型结构及其参数以获取最终的文本纠错模型;否则,返回步骤S55。
进一步地,在第一阶段训练时,使用第一损失值作为损失函数训练A轮(A是预先设定的迭代轮次数,可以取5到10之间的整数),将在验证集上表现最好的文本纠错模型的参数保存下来;在第二阶段训练时,在第一阶段训练保存的文本纠错模型的参数的基础上,再使用第二损失值作为损失函数训练B轮(B是预先设定的迭代轮次数,可以取5到10之间的整数),将在验证集上表现最好的文本纠错模型的参数保存下来。在对待纠错文本进行纠错时使用第二阶段训练后保存的文本纠错模型的参数。
需要说明的是,意图一致性得分仅仅只是一个数值,在第二阶段训练优化文本纠错模型的参数时,不会改变所用到的意图分类模型的参数。
S6、接受用户输入的或者步骤S1构建的测试集中的待纠错文本,使用步骤S5获取的最终的文本纠错模型进行纠错,以获取纠错后文本。
S61、将用户输入的或者步骤S1构建的测试集中的待纠错文本输入步骤S5获取的最终的文本纠错模型中,以获取第一字符概率分布。
需要说明的是,对于用户输入的待纠错文本,需要先按照步骤S1中所述的预处理方式进行预处理,然后将待纠错文本输入文本纠错模型输出得到第一字符概率分布。
S62、对于待纠错文本中的每个字符,选取字符对应的第一字符概率分布中概率最大的字符作为正确字符,以获取纠错后文本。
具体地,对于预处理得到的用户输入的待纠错文本
Figure SMS_110
(n是该待纠错文本的长度),将该待纠错文本X输入步骤S5中训练好的最终的文本纠错模型中得到每个字符/>
Figure SMS_111
的第一字符概率分布/>
Figure SMS_112
,其中/>
Figure SMS_113
就是文本纠错模型将待纠错文本X中的第i个字符/>
Figure SMS_114
预测为词表V中第j个字符/>
Figure SMS_115
的概率,按如下公式获得文本纠错模型预测的纠错后文本/>
Figure SMS_116
Figure SMS_117
Figure SMS_118
其中,
Figure SMS_119
就是文本纠错模型预测输出的纠错后文本。
与前述基于意图一致性的文本纠错方法的实施例相对应,本发明还提供了基于意图一致性的文本纠错装置的实施例。
参见图5,本发明实施例提供的一种基于意图一致性的文本纠错装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现上述实施例中的基于意图一致性的文本纠错方法。
本发明基于意图一致性的文本纠错装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本发明基于意图一致性的文本纠错装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的基于意图一致性的文本纠错方法。
所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

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获取的待纠错文本中每个字符的第一字符概率分布中概率最大的字符作为模型预测的正确字符,以获取纠错后文本;
S42、将待纠错文本输入意图分类模型以获取各个意图类别的概率分布,作为第一意图概率分布;将所述步骤S41获取的纠错后文本输入意图分类模型以获取各个意图类别的概率分布,作为第二意图概率分布;
S43、根据所述步骤S42获取的第一意图概率分布和第二意图概率分布计算双向KL散度,根据双向KL散度获取意图一致性得分;
S44、将所述步骤S43获取的意图一致性得分进行截断,以使其处于预先设定的范围之内,以截断的意图一致性得分作为权重对按照所述步骤S3获取的纠错损失值进行加权以获取待纠错文本的加权纠错损失值作为第二损失值。
7.根据权利要求1所述的基于意图一致性的文本纠错方法,其特征在于,所述步骤S5包括以下子步骤:
S51、多次遍历所述步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入所述步骤S2构建的文本纠错模型中以获取第一阶段预测的第一字符概率分布;
S52、根据所述步骤S51获取的第一阶段预测的第一字符概率分布和训练集中对应的真实标签计算第一损失值;
S53、根据所述步骤S52获取的第一损失值采用梯度下降法反向更新文本纠错模型的参数;
S54、使用所述步骤S1构建的验证集对所述步骤S53获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第一阶段训练,并保存当前训练好的文本纠错模型结构及其参数;否则,返回所述步骤S51;
S55、多次遍历所述步骤S1构建的训练集,从训练集中随机抽取一批纠错数据输入所述步骤S54保存的训练好的文本纠错模型中以获取第二阶段预测的第一字符概率分布;
S56、根据所述步骤S55获取的第二阶段预测的第一字符概率分布和训练集中对应的真实标签采用所述步骤S4中的方法计算第二损失值;
S57、根据所述步骤S56获取的第二损失值采用梯度下降法反向更新文本纠错模型的参数;
S58、使用所述步骤S1构建的验证集对所述步骤S57获取的更新参数后的文本纠错模型进行验证,获取当前文本纠错模型在验证集上的准确率,根据准确率判断是否停止训练,若准确率不再升高,则停止第二阶段训练,并保存当前训练好的文本纠错模型结构及其参数以获取最终的文本纠错模型;否则,返回所述步骤S55。
8.根据权利要求1所述的基于意图一致性的文本纠错方法,其特征在于,所述步骤S6包括以下子步骤:
S61、将用户输入的或者所述步骤S1构建的测试集中的待纠错文本输入所述步骤S5获取的最终的文本纠错模型中,以获取第一字符概率分布;
S62、对于待纠错文本中的每个字符,选取字符对应的第一字符概率分布中概率最大的字符作为正确字符,以获取纠错后文本。
9.一种基于意图一致性的文本纠错装置,包括存储器和处理器,其特征在于,所述存储器与所述处理器耦接;其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现上述权利要求1-8中任一项所述的基于意图一致性的文本纠错方法。
10.一种计算机可读存储介质,其特征在于,其上存储有程序,该程序被处理器执行时,用于实现权利要求1-8中任一项所述的基于意图一致性的文本纠错方法。
CN202310410370.1A 2023-04-18 2023-04-18 一种基于意图一致性的文本纠错方法、装置和介质 Active CN116136957B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310410370.1A CN116136957B (zh) 2023-04-18 2023-04-18 一种基于意图一致性的文本纠错方法、装置和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310410370.1A CN116136957B (zh) 2023-04-18 2023-04-18 一种基于意图一致性的文本纠错方法、装置和介质

Publications (2)

Publication Number Publication Date
CN116136957A CN116136957A (zh) 2023-05-19
CN116136957B true CN116136957B (zh) 2023-07-07

Family

ID=86334700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310410370.1A Active CN116136957B (zh) 2023-04-18 2023-04-18 一种基于意图一致性的文本纠错方法、装置和介质

Country Status (1)

Country Link
CN (1) CN116136957B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116579327B (zh) * 2023-07-14 2023-09-26 匀熵智能科技(无锡)有限公司 文本纠错模型训练方法、文本纠错方法、设备及存储介质
CN117743857A (zh) * 2023-12-29 2024-03-22 北京海泰方圆科技股份有限公司 文本纠错模型训练、文本纠错方法、装置、设备和介质
CN118093527A (zh) * 2024-04-24 2024-05-28 脉得智能科技(无锡)有限公司 一种报告质检方法、装置及电子设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304385A (zh) * 2018-02-09 2018-07-20 叶伟 一种语音识别文本纠错方法及装置
CN109508376A (zh) * 2018-11-23 2019-03-22 四川长虹电器股份有限公司 可在线纠错更新的意图识别方法及装置
CN110555096A (zh) * 2018-06-01 2019-12-10 深圳狗尾草智能科技有限公司 用户意图识别方法、系统、终端及介质
CN110598214A (zh) * 2019-09-10 2019-12-20 四川长虹电器股份有限公司 一种意图识别结果纠错方法
CN112836496A (zh) * 2021-01-25 2021-05-25 之江实验室 一种基于bert和前馈神经网络的文本纠错方法
CN113270103A (zh) * 2021-05-27 2021-08-17 平安普惠企业管理有限公司 基于语义增强的智能语音对话方法、装置、设备及介质
CN113807973A (zh) * 2021-09-16 2021-12-17 平安科技(深圳)有限公司 文本纠错方法、装置、电子设备及计算机可读存储介质
WO2022135206A1 (zh) * 2020-12-25 2022-06-30 华为技术有限公司 一种文本纠错方法和电子设备
CN114970538A (zh) * 2021-02-25 2022-08-30 华为技术有限公司 文本纠错的方法及装置
CN115146621A (zh) * 2022-05-09 2022-10-04 腾讯科技(深圳)有限公司 一种文本纠错模型的训练方法、应用方法、装置及设备
CN115293138A (zh) * 2022-08-03 2022-11-04 北京中科智加科技有限公司 一种文本纠错方法及计算机设备
CN115730585A (zh) * 2022-11-30 2023-03-03 杭州网易智企科技有限公司 文本纠错及其模型训练方法、装置、存储介质及设备

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304385A (zh) * 2018-02-09 2018-07-20 叶伟 一种语音识别文本纠错方法及装置
CN110555096A (zh) * 2018-06-01 2019-12-10 深圳狗尾草智能科技有限公司 用户意图识别方法、系统、终端及介质
CN109508376A (zh) * 2018-11-23 2019-03-22 四川长虹电器股份有限公司 可在线纠错更新的意图识别方法及装置
CN110598214A (zh) * 2019-09-10 2019-12-20 四川长虹电器股份有限公司 一种意图识别结果纠错方法
WO2022135206A1 (zh) * 2020-12-25 2022-06-30 华为技术有限公司 一种文本纠错方法和电子设备
CN112836496A (zh) * 2021-01-25 2021-05-25 之江实验室 一种基于bert和前馈神经网络的文本纠错方法
CN114970538A (zh) * 2021-02-25 2022-08-30 华为技术有限公司 文本纠错的方法及装置
CN113270103A (zh) * 2021-05-27 2021-08-17 平安普惠企业管理有限公司 基于语义增强的智能语音对话方法、装置、设备及介质
CN113807973A (zh) * 2021-09-16 2021-12-17 平安科技(深圳)有限公司 文本纠错方法、装置、电子设备及计算机可读存储介质
CN115146621A (zh) * 2022-05-09 2022-10-04 腾讯科技(深圳)有限公司 一种文本纠错模型的训练方法、应用方法、装置及设备
CN115293138A (zh) * 2022-08-03 2022-11-04 北京中科智加科技有限公司 一种文本纠错方法及计算机设备
CN115730585A (zh) * 2022-11-30 2023-03-03 杭州网易智企科技有限公司 文本纠错及其模型训练方法、装置、存储介质及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于深度学习技术的语法纠错算法模型构建分析;景艳娥;;信息技术(第09期);全文 *

Also Published As

Publication number Publication date
CN116136957A (zh) 2023-05-19

Similar Documents

Publication Publication Date Title
CN116136957B (zh) 一种基于意图一致性的文本纠错方法、装置和介质
CN111126282B (zh) 一种基于变分自注意力强化学习的遥感图像内容描述方法
JP6204959B2 (ja) 音声認識結果最適化装置、音声認識結果最適化方法、及びプログラム
CN109635108B (zh) 一种基于人机交互的远程监督实体关系抽取方法
CN111738003B (zh) 命名实体识别模型训练方法、命名实体识别方法和介质
US10217457B2 (en) Learning from interactions for a spoken dialog system
WO2020133960A1 (zh) 文本质检方法、电子装置、计算机设备及存储介质
WO2020143163A1 (zh) 基于注意力机制的命名实体识别方法、装置和计算机设备
CN110232923B (zh) 一种语音控制指令生成方法、装置及电子设备
CN109977199A (zh) 一种基于注意力池化机制的阅读理解方法
CN111104513B (zh) 一种游戏平台用户问答业务的短文本分类方法
CN116127953B (zh) 一种基于对比学习的中文拼写纠错方法、装置和介质
CN116127952A (zh) 一种多粒度中文文本纠错方法和装置
CN112307130B (zh) 一种文档级远程监督关系抽取方法及系统
CN114386399A (zh) 一种文本纠错方法及装置
CN114239589A (zh) 语义理解模型的鲁棒性评估方法、装置及计算机设备
CN106548787B (zh) 优化生词的评测方法及评测系统
CN114530145A (zh) 语音识别结果纠错方法及装置、计算机可读存储介质
CN112131879A (zh) 一种关系抽取系统、方法和装置
CN111104806A (zh) 神经机器翻译模型的构建方法及装置、翻译方法及装置
JP5555542B2 (ja) 自動単語対応付け装置とその方法とプログラム
JP7359028B2 (ja) 学習装置、学習方法、および、学習プログラム
CN110162629B (zh) 一种基于多基模型框架的文本分类方法
CN113094504A (zh) 基于自动机器学习的自适应文本分类方法及装置
CN108829675A (zh) 文档表示方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant