本发明涉及语法纠错,尤其是指一种融入源信息的语法纠错早停多轮解码方法和系统。
背景技术:
1、语法纠错(grammatical error correction,gec)旨在自动检查和纠正语句中的语法错误,确保文本语法的正确性,规范语句表述。语法纠错在自然语言处理中具有广泛的应用场景,包括写作助手、搜索引擎、语音识别和语言翻译等。目前语法纠错任务主要采用两种方法解决,一种是序列到编辑方法(sequence-to-edit,seq2edit),将语法纠错任务视为序列标记任务,通过多轮迭代预测每个词的编辑标记(保留、删除、插入、替换等),直到所有词都被预测为保留标记。另一种是序列到序列方法(sequence-to-sequence,seq2seq),将语法纠错任务看作文本到文本的重构,然后直接利用编码器-解码器架构的神经网络模型纠正语法错误。目前两种方法通常都利用预训练模型来获得更好的性能,例如序列到编辑方法使用bert、xlnet,序列到序列方法则更多使用t5、bart。
2、序列到序列方法的主要思想是将要纠正的句子(源句子)输入到模型中,经过编码器分析,由解码器输出纠正后的句子。序列到编辑方法由神经网络模型给源句子中每个词分配一个编辑标签,再根据编辑标签对句子中的词进行相应修改。相较于序列到序列方法,序列到编辑方法通常需要使用针对语言规律设计的编辑操作才能取得相当的性能。现序列到序列方法在语法纠错任务上研究主要集中在三方面:1)精度-召回权衡或重新排序的解码方法,以精进解码提升纠错效果。2)针对语法纠错任务输入与输出相差不大,提出浅层激进解码或非自回归解码,以加速推理。3)针对语法纠错任务的语法性质,提出在模型中加入特定语言知识或语法,以提升模型语法理解能力,提高纠错能。
3、虽然加载预训练模型的序列到序列方法已可以取得较好的语法纠错结果,但其性能仍受从左到右一次解码的限制。
4、目前序列到序列方法在不使用语言相关编辑操作的情况下,可以获得与序列到编辑方法相当或更好的性能。但序列到序列方法存在两个缺点:1)使用从左到右的自回归解码,前面的词被解码时不知道后面的词,无法利用完整的全局信息;2)通常仅解码一次,无法逐步改善解码的结果。而使用mpd(多轮解码)可以利用前一轮解码结果的全部信息,也可以通过多次解码自我校正解码结果。
5、但现有的mpd方法有两个问题:1)多轮解码在重复生成同一纠错结果两次时停止,第二次相同纠错结果的产生将增加推理成本;2)前几轮的纠错可能会由于删除或替换丢失源句子中对纠错的有用信息。
技术实现思路
1、为此,本发明所要解决的技术问题在于克服现有技术中使用多轮解码(mpd)的序列到序列方法推理时间和成本较高,且容易丢失源句子中有用信息的问题。
2、为解决上述技术问题,本发明提供了一种融入源信息的语法纠错早停多轮解码方法,包括:
3、步骤s1:获取需要纠错的源信息;
4、步骤s2:将所述源信息输入语法纠错模型,通过所述语法纠错模型解码得到语法纠错后的信息,所述语法纠错模型为bart预训练模型或t5预训练模型;
5、其中,所述语法纠错模型在解码过程中使用多轮解码,并且在多轮解码中融入所述源信息,通过早停机制判断所述多轮解码是否结束,若未达到早停机制,则继续解码;若达到早停机制,则停止解码。
6、在本发明的一个实施例中,所述步骤s2中语法纠错模型在解码过程中使用多轮解码,并且在多轮解码中融入所述源信息,方法包括:
7、将所述源信息和语法纠错模型的上一轮的解码结果合并成新序列,并将所述新序列作为语法纠错模型下一轮的解码输入,实现对下一轮解码的校正,重复该校正过程以实现多轮解码。
8、在本发明的一个实施例中,所述早停机制包括第一判断条件和第二判断条件,若满足所述第一判断条件或第二判断条件,则停止解码,反之则继续解码,其中,
9、所述第一判断条件为:判断上一轮解码的结果和下一轮解码的结果是否相同,若相同,则停止解码;若不相同,则继续解码;
10、所述第二判断条件为:判断多轮解码的早停概率是否大于早停阈值,若是,则停止解码;若否,则继续解码。
11、在本发明的一个实施例中,通过逻辑回归分类器ce来预测多轮解码的早停概率。
12、在本发明的一个实施例中,所述多轮解码的早停概率公式为:
13、
14、其中,表示语法纠错模型中<eos>的隐藏层表示,<eos>表示一句话的结尾标志符,we表示逻辑回归分类器ce的weight向量,be表示逻辑回归分类器ce的bias标量,·和表示点积;σ是sigmoid的缩写,表示激活函数。
15、在本发明的一个实施例中,在所述语法纠错模型的多轮解码训练过程中给定早停标签ye,若当前轮解码结果等于上一轮解码结果或者正确结果yg与当前轮解码结果之间的编辑距离大于则ye为真,停止解码;反之则ye为假,继续解码;其中,所述编辑距离为一句话修改为另一句话需要编辑的步骤数。
16、在本发明的一个实施例中,所述语法纠错模型在训练时的总损失函数为:
17、l=lseq2seq+λ*le
18、其中,lseq2seq表示语法纠错模型序列到序列的生成损失,le=bce(pe,ye),bce表示二分类损失函数,λ表示设定的超参数。
19、为解决上述技术问题,本发明提供了一种融入源信息的语法纠错早停多轮解码系统,包括:
20、获取模块:用于获取需要纠错的源信息;
21、纠错模块:用于将所述源信息输入语法纠错模型,通过所述语法纠错模型解码得到语法纠错后的信息,所述语法纠错模型为bart预训练模型或t5预训练模型;
22、其中,所述语法纠错模型在解码过程中使用多轮解码,并且在多轮解码中融入所述源信息,通过早停机制判断所述多轮解码是否结束,若未达到早停机制,则继续解码;若达到早停机制,则停止解码。
23、为解决上述技术问题,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述融入源信息的语法纠错早停多轮解码方法的步骤。
24、为解决上述技术问题,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述融入源信息的语法纠错早停多轮解码方法的步骤。
25、本发明的上述技术方案相比现有技术具有以下优点:
26、本发明在语法纠错中使用序列到序列的方法,并在序列到序列的方法中使用多轮解码;
27、本发明使用早停机制能够有效缓解多轮解码的效率问题,提高推理效率,降低推理成本;
28、本发明在解码过程中通过融入源信息,在多轮解码中保证源信息完整可见,提高解码的有效性与准确性。
1.一种融入源信息的语法纠错早停多轮解码方法,其特征在于:包括:
2.根据权利要求1所述的融入源信息的语法纠错早停多轮解码方法,其特征在于:所述步骤s2中语法纠错模型在解码过程中使用多轮解码,并且在多轮解码中融入所述源信息,方法包括:
3.根据权利要求1所述的融入源信息的语法纠错早停多轮解码方法,其特征在于:所述早停机制包括第一判断条件和第二判断条件,若满足所述第一判断条件或第二判断条件,则停止解码,反之则继续解码,其中,
4.根据权利要求3所述的融入源信息的语法纠错早停多轮解码方法,其特征在于:通过逻辑回归分类器ce来预测多轮解码的早停概率。
5.根据权利要求4所述的融入源信息的语法纠错早停多轮解码方法,其特征在于:所述多轮解码的早停概率公式为:
6.根据权利要求5所述的融入源信息的语法纠错早停多轮解码方法,其特征在于:在所述语法纠错模型的多轮解码训练过程中给定早停标签ye,若当前轮解码结果等于上一轮解码结果或者正确结果yg与当前轮解码结果之间的编辑距离大于则ye为真,停止解码;反之则ye为假,继续解码;其中,所述编辑距离为一句话修改为另一句话需要编辑的步骤数。
7.根据权利要求6所述的融入源信息的语法纠错早停多轮解码方法,其特征在于:所述语法纠错模型在训练时的总损失函数为:
8.一种融入源信息的语法纠错早停多轮解码系统,其特征在于:包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述融入源信息的语法纠错早停多轮解码方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述融入源信息的语法纠错早停多轮解码方法的步骤。