首页> 中国专利> 语法纠错的方法和用于语法纠错模型的训练方法及产品

语法纠错的方法和用于语法纠错模型的训练方法及产品

摘要

本发明的实施方式提供了一种用机器实现语法纠错的方法及装置和用于语法纠错模型的训练方法及训练设备。该用机器实现语法纠错的方法包括:将输入的第一语种的文本编码成中间表示;将所述中间表示解码成第二语种的文本;以及基于所述中间表示和所述第二语种的文本,生成经语法修正的第一语种的修正文本。根据本发明的用机器实现语法纠错的方法不仅能够忽略可能存在的小语法错误,还能够通过结合中间表示来避免回译过程中的信息丢失,从而能够显著的提高语法纠错的准确性,为用户带来了更好的体验。

著录项

  • 公开/公告号CN112765968A

    专利类型发明专利

  • 公开/公告日2021-05-07

    原文格式PDF

  • 申请/专利权人 网易有道信息技术(北京)有限公司;

    申请/专利号CN202110015475.8

  • 发明设计人 付凯;黄瑾;段亦涛;

    申请日2021-01-05

  • 分类号G06F40/253(20200101);G06F40/211(20200101);

  • 代理机构11804 北京维昊知识产权代理事务所(普通合伙);

  • 代理人陈姗姗;王颖慧

  • 地址 100094 北京市海淀区西北旺东路10号院中关村软件园西区7号楼A座1层

  • 入库时间 2023-06-19 10:54:12

说明书

技术领域

本发明的实施方式涉及数据处理技术领域,更具体地,本发明的实施方式涉及用机器实现语法纠错的方法及装置和用于语法纠错模型的训练方法及训练设备。

背景技术

本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。

随着计算机技术的不断发展,传统的基于规则的语言纠错技术已经逐渐被基于深度学习的语言纠错技术所超越。语言纠错通常是对语句中不符合语法规则的字或词等进行纠正。然而,目前缺少专门用于语言纠错的网络模型,而是常使用翻译模型来代替,并通过将翻译模型训练成可以将同一语种的语法错误的句子翻译成语法正确的句子来实现纠错。由于语言纠错领域的真实语料较少,因此需要使用大量的伪语料对翻译模型进行训练。伪语料是对单语语料以一定规则生成语法错误的句子的文本对。伪语料的生成质量和数量会对训练后的翻译模型的纠错准确率产生影响,并且伪语料的语种范围也影响着翻译模型进行语法纠错的语种适用范围。

发明内容

由于伪语料的生成规则非常复杂,特别是对于一些不常见的语种,生成一定数量的好的伪语料的难度更大,因此现有技术中基于翻译模型的语法纠错的纠错准确性以及适用语种范围都不能达到令人满意的效果,这是非常令人烦恼的过程。

为此,非常需要一种改进的语法纠错方法和用于语法纠错模型的训练方法,以提高语法纠错的准确度以及减少对伪语料的依赖程度。

在本上下文中,本发明的实施方式期望提供一种用机器实现语法纠错的方法及装置和用于语法纠错模型的训练方法及训练设备。

在本发明实施方式的第一方面中,提供了一种用机器实现语法纠错的方法,包括:将输入的第一语种的文本编码成中间表示;将所述中间表示解码成第二语种的文本;以及基于所述中间表示和所述第二语种的文本,生成经语法修正的第一语种的修正文本。

在本发明的一个实施例中,基于中间表示和第二语种的文本生成修正文本包括:针对所述第二语种的文本对应词向量构成的张量,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成所述第一语种的修正文本。

在本发明的另一个实施例中,基于中间表示和第二语种的文本生成修正文本包括:针对所述第二语种的文本对应的隐状态向量组,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成所述第一语种的修正文本。

在本发明的又一个实施例中,所述第一语种的文本包括第一语种的语法错误文本。

在本发明实施方式的第二方面中,提供了一种用机器实现语法纠错的装置,包括:第一编码器,其配置用于将输入的第一语种的文本编码成中间表示;第一解码器,其与所述第一编码器连接,并配置用于将所述中间表示解码成第二语种的文本;以及第二解码器,其与所述第一编码器和所述第一解码器连接,并配置用于基于所述中间表示和所述第二语种的文本,生成经语法修正的第一语种的修正文本。

在本发明的一个实施例中,所述第二解码器还配置为:针对所述第二语种的文本对应词向量构成的张量,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成所述第一语种的修正文本。

在本发明的另一个实施例中,所述第二解码器还配置为:针对所述第二语种的文本对应的隐状态向量组,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成所述第一语种的修正文本。

在本发明的又一个实施例中,所述第一语种的文本包括第一语种的语法错误文本。

在本发明实施方式的第三方面中,提供了一种用于语法纠错模型的训练方法,其中所述语法纠错模型包括第一编码器、第一解码器和第二解码器,第一编码器用于将输入的第一语种的文本编码成中间表示,第一解码器用于将所述中间表示解码成第二语种的文本,第二解码器用于基于所述第一编码器和所述第一解码器生成经语法修正的第一语种的修正文本,所述训练方法包括:利用翻译训练语料对所述语法纠错模型进行第一训练;以及利用语法修正语料对所述语法纠错模型进行第二训练。

在本发明的一个实施例中,利用翻译训练语料进行第一训练包括:利用从第一语种到第二语种的平行语料对所述第一编码器和所述第一解码器进行第一翻译训练;以及利用从第二语种到第一语种的平行语料对所述第二解码器进行第二翻译训练。

在本发明的另一个实施例中,在进行所述第二翻译训练之前,所述训练方法包括:冻结所述第一编码器和所述第一解码器的参数,以及移除所述第二解码器与所述第一编码器之间的交互模块。

在本发明的又一个实施例中,利用语法修正语料进行第二训练包括:基于语法修正语料中的第一语种的错误文本和正确文本的二元文本对,对所述语法纠错模型进行整体训练。

在本发明的再一个实施例中,基于错误文本和正确文本的二元文本对,对所述语法纠错模型进行整体训练包括:对所述正确文本进行从第一语种到第二语种的机器翻译,从而生成包括所述错误文本、正确文本的第二语种译文和所述正确文本的三元文本对的完整语法修正语料;以及利用所述完整语法修正语料对所述语法纠错模型进行整体训练。

在本发明的一个实施例中,在进行所述整体训练之前,所述训练方法包括:解冻所述第一编码器和所述第一解码器的参数;添加所述第二解码器与所述第一编码器之间的交互模块;以及调低所述语法纠错模型的学习率。

在本发明的另一个实施例中,所述语法修正语料包括以下至少一项:伪语料;和真实纠错语料。

在本发明的又一个实施例中,所述伪语料是基于所述翻译训练语料中的第一语种语料生成的,并且在进行所述第二训练时,所述训练方法还包括:将所述翻译训练语料中的与所述第一语种语料对应的第二语种语料用作所述第一解码器的监督结果。

在本发明的再一个实施例中,所述第一语种和所述第二语种是不同的语种,并且所述第一语种选自以下任一:英语、法语、德语、西班牙语、汉语、日语、韩语;所述第二语种选自以下任一:汉语、英语、法语、德语、西班牙语、日语、韩语。

在本发明实施方式的第四方面中,提供了一种用于语法纠错模型的训练设备,其中所述语法纠错模型包括第一编码器、第一解码器和第二解码器,第一编码器用于将输入的第一语种的文本编码成中间表示,第一解码器用于将所述中间表示解码成第二语种的文本,第二解码器用于基于所述第一编码器和所述第一解码器生成经语法修正的第一语种的修正文本,所述训练设备包括:第一训练装置,其配置为利用翻译训练语料对所述语法纠错模型进行第一训练;以及第二训练装置,其配置为利用语法修正语料对所述语法纠错模型进行第二训练。

在本发明的一个实施例中,所述第一训练装置还配置为:利用从第一语种到第二语种的平行语料对所述第一编码器和所述第一解码器进行第一翻译训练;以及利用从第二语种到第一语种的平行语料对所述第二解码器进行第二翻译训练。

在本发明的另一个实施例中,在进行所述第二翻译训练之前,所述第一训练装置还配置为:冻结所述第一编码器和所述第一解码器的参数,以及移除所述第二解码器与所述第一编码器之间的交互模块。

在本发明的又一个实施例中,所述第二训练装置还配置为:基于语法修正语料中的第一语种的错误文本和正确文本的二元文本对,对所述语法纠错模型进行整体训练。

在本发明的再一个实施例中,所述第二训练装置还配置为:对所述正确文本进行从第一语种到第二语种的机器翻译,从而生成包括所述错误文本、正确文本的第二语种译文和所述正确文本的三元文本对的完整语法修正语料;以及利用所述完整语法修正语料对所述语法纠错模型进行整体训练。

在本发明的一个实施例中,在进行所述整体训练之前,所述第二训练装置还配置为:解冻所述第一编码器和所述第一解码器的参数;添加所述第二解码器与所述第一编码器之间的交互模块;以及调低所述语法纠错模型的学习率。

在本发明的另一个实施例中,所述语法修正语料包括以下至少一项:伪语料;和真实纠错语料。

在本发明的又一个实施例中,所述伪语料是基于所述翻译训练语料中的第一语种语料生成的,并且所述第二训练装置还配置为:将所述翻译训练语料中的与所述第一语种语料对应的第二语种语料用作所述第一解码器的监督结果。

在本发明的再一个实施例中,所述第一语种和所述第二语种是不同的语种,并且所述第一语种选自以下任一:英语、法语、德语、西班牙语、汉语、日语、韩语;所述第二语种选自以下任一:汉语、英语、法语、德语、西班牙语、日语、韩语。

根据本发明实施方式的用机器实现语法纠错的方法,可以基于第一语种的中间表示和解码成的第二语种的文本生成经语法修正的第一语种的修正文本,不仅能够利用不同语种翻译过程的鲁棒性来修正可能存在的小语法错误,还能够通过结合中间表示来避免回译过程中的信息丢失,从而能够显著的提高语法纠错的准确性。在一些实施例中,本发明还通过利用隐状态向量组来保留字与字之间或者词与词之间的关系,从而进一步提高语法纠错的准确度。

进一步地,根据本发明实施方式的用于语法纠错模型的训练方法,能够利用翻译训练语料和语法修正语料对语法纠错模型进行训练,而无需或者需要较少的伪语料进行训练,以显著降低对基于伪语料训练的依赖程度,使得根据本发明的训练方法训练出来的语法纠错模型的准确度不受限于伪语料的数量和质量,同时也能够显著提高语法纠错模型的适用语种范围,从而有助于提高用户的使用体验。在一些实施例中,本发明还通过在进行整体训练前解冻参数并添加交互模块,来建立第二解码器与第一编码器之间的联系,并可以通过整体训练来对第二解码器和第一编码器的相关参数进行调整,以减少第二解码器解码过程中可能出现的信息丢失现象,从而能够有助于提高语法纠错模型的纠错准确率。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1示意性地示出了适于实现本发明实施方式的示例性计算系统100的框图;

图2示意性地示出了根据本发明实施方式的用机器实现语法纠错的方法流程图;

图3示意性地示出了根据本发明实施方式的用机器实现语法纠错的装置的示意图;

图4示意性地示出了根据本发明另一个实施方式的用机器实现语法纠错的装置的示意图;

图5示意性地示出了根据本发明又一实施方式的用机器实现语法纠错的装置的示意图;

图6示意性地示出了根据本发明实施方式的用于语法纠错模型的训练方法的流程图;

图7示意性地示出了根据本发明的第一训练的另一个实施例的流程图;

图8示意性地示出了根据本发明的第二训练的另一个实施例的流程图;以及

图9示意性地示出了根据本发明实施方式的用于语法纠错模型的训练设备的示意图。

在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

图1示出了适于实现本发明实施方式的示例性计算系统100的框图。如图1所示,计算系统100可以包括:中央处理单元(CPU)101、随机存取存储器(RAM)102、只读存储器(ROM)103、系统总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和显示器114。这些设备中,与系统总线104耦合的有CPU 101、RAM102、ROM 103、硬盘控制器105、键盘控制器106、串行控制器107、并行控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及显示器114与显示控制器109耦合。应当理解,图1所述的结构框图仅仅是为了示例的目的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。

本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”等。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。

可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举示例)例如可以包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络(包括局域网(LAN)或广域网(WAN))连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

下面将参照本发明实施例的方法的流程图和设备(或装置)的框图描述本发明的实施方式。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。

也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的产品。

也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。

根据本发明的实施方式,提出了一种用机器实现语法纠错的方法及装置和用于语法纠错模型的训练方法及训练设备。

在本文中,需要理解的是,所涉及的术语包括如下:

真实纠错语料,是将人们日常生活中真实发生的语法错误进行标注而生成的文本对。

伪语料,是对单语语料以一定规则生成语法错误的文本,进而形成包括语法错误的文本和语法正确的文本的文本对。

平行语料,为多个语种的相互释义的对照文本对,例如中英平行语料可以包括汉语的文本及其英语的释义文本。

文本对,具有一定对应关系的多个文本形成的文本组合或者文本数据集。

此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。

本发明人发现,翻译模型通常包括一个编码器和一个解码器,其通常是用于将一个语种的句子翻译成另一个语种的句子。当基于翻译模型来进行语法纠错训练时,其核心特点是采用迁移学习的方法,即先使用海量伪语料对翻译模型进行预训练,再基于真实纠错语料对模型进行微调。由于语言纠错领域的真实纠错语料较少,因此想要获得一个好的语法纠错模型,则需要生成海量的伪语料。然而,伪语料的生成规则非常复杂,并且和语种密切相关,例如需要基于语法正确的文本进行调序、词形变化、时态变化以及短语搭配等方面的一系列操作,并配以合适的生成概率才能生成好的伪语料。由此可见,伪语料的生成方法非常依赖研发人员对语言的理解程度,而对于不熟悉的语种造出好的伪语料就会更加困难。

本发明人还发现,在书写文字的场景中,人们通常会先写一个草稿,然后对该草稿进行反复斟酌和推敲,以形成最终定稿文件。本发明人认为这个过程是在反复考量、推敲所写的词语和句子。在翻译领域中的推敲一般是将一种语言的句子翻译成另一种语言后,然后对后者进行二次修正以生成最终的句子。以英中翻译为例,翻译领域的“推敲”是先将英文翻译成中文,然后再对中文进行二次推敲,进而生成更好的中文翻译结果。

在机器翻译领域,相对于抓取语法错误到正确的语法修正语料而言,从网络上抓取到千万级别的双语平行语料是较为容易的事情。基于以上研究和发现,本发明期望将翻译领域的推敲思想应用在语法纠错上,以提供一种不同于翻译模型的用机器实现语法纠错的方法和装置,并能够利用容易获得的平行语料来对语法纠错模型进行训练,以降低训练过程中对伪语料的依赖程度,从而降低对语法纠错模型的训练难度。

在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。

首先参考图2,示意性地示出了根据本发明实施方式的用机器实现语法纠错的方法流程图。如图2中所示,方法200可以包括:在步骤210中,将输入的第一语种的文本编码成中间表示。第一语种的文本可以包括例如第一语种的词组、句子或段落等。在一个实施例中,第一语种的文本可以是一个句子。在另一个实施例中,第一语种的文本可以是多个句子。在本发明的又一个实施例中,第一语种的文本可以包括第一语种的语法错误文本。中间表示可以是编码形成的一种中间结果,可以表示成例如向量或张量等形式。

接着,在步骤220中,可以将中间表示解码成第二语种的文本。在一些实施例中,第一语种和第二语种可以是不同的语种,并且第一语种可以选自以下任一:英语、法语、德语、西班牙语、汉语、日语、韩语等;第二语种可以选自以下任一:汉语、英语、法语、德语、西班牙语、日语、韩语等。在另一些实施例中,步骤220中可以将中间表示逐字或者逐词的解码成第二语种的文本,并且每个解码得到的第二语种的字或词可以作为解码下一个待解码的字或词时的输入。

然后,流程前进到步骤230处,可以基于中间表示和第二语种的文本,生成经语法修正的第一语种的修正文本。为了便于说明,在以下的描述中可以将步骤230的执行过程简称为回译,但是需要理解的是,在步骤230中结合了中间表示,即在回译过程中参考了输入的第一语种的文本,因此步骤230的执行过程不应该简单的理解为将第二语种的文本翻译为第一语种的修正文本的翻译过程。

为了便于理解本发明的回译,将以第一语种为英语以及第二语种为中文进行示例性说明。例如,在一个实施例中,输入的第一语种的文本为“I has a apple”,接着在步骤220中解码成的第二语种的文本为“我有一个苹果”,最后在步骤230中生成的第一语种的修正文本为“I have an apple”。可以理解的是,方法200中的步骤230基于第二语种的文本生成第一语种的修正文本的过程中,可以忽略掉第一语种的文本中可能存在的一些小语法错误,从而生成正确的修正文本。然而,当第一语种的文本为长难句时,往往会因为句子过长或者语法复杂而导致步骤220输出的第二语种的文本出现信息丢失的现象,如果仅是简单的将第二语种的文本翻译回第一语种,较大概率会丢失掉原始文本信息(即输入的第一语种的文本)中的部分内容,从而影响最终输出的修正文本的完整性和还原性。本发明中的步骤230中由于引入了中间表示,能够在对第二语种的文本回译的过程中考虑到输入时的原始文本信息,从而可以有效降低回译不准确的概率以及降低信息丢失的风险。

在本发明的一个实施例中,步骤230可以包括:针对第二语种的文本对应词向量构成的张量,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成第一语种的修正文本。本文中所述的词向量可以是字词(或短语)被映射到实数的向量,其涉及从字词的一维空间到具有更低维度的连续向量空间的数学嵌入。在一些实施例中,可以通过在包括字词及其对应的向量的词表数据库中查询,来获得第二语种的文本的各个字词对应的词向量。本文中所述的张量可以是由文本的各个字词对应的词向量组合而成,其在形式上可以是高维矩阵。在另一些实施例中,张量也可以由多个句子的各个字词对应的词向量组成。在又一些实施例中,逐字或者逐词生成第一语种的修正文本可以是将每个生成的经语法修正的字或词作为下一个待回译的字或词的输入。

在本发明的另一个实施例中,步骤230可以包括:针对第二语种的文本对应的隐状态向量组,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成第一语种的修正文本。该隐状态向量组可以包括第二语种的文本的各个解码位置(例如各个字或词)对应的隐状态向量。隐状态向量组可以保留第二语种的文本中的各个字或词之间的关系特征。逐字或者逐词生成第一语种的修正文本可以与上述实施例所描述的相同或相似,此处不再赘述。

以上结合图2总体上对根据本发明实施方式的用机器实现语法纠错的方法进行了示意性的描述,本领域技术人员可以理解的是,上面的描述是示例性的而非限制性的,例如,可以不限于在步骤230中逐字或者逐词生成第一语种的修正文本,在一些实施例中,在步骤220中可以包括将中间表示逐字或者逐词的解码成第二语种的文本。还可以理解的是,本发明的用机器实现语法纠错的方法可以通过将第一语种的文本翻译成第二语种的文本,再将第二语种的文本回译成第一语种的修正文本来实现语法纠错,并在回译过程中结合了中间表示,可以有效避免因第二语种的文本的不准确而可能导致回译过程中的信息丢失现象,从而能够显著提高纠错过程中对文本修正的完整性和准确性。

在介绍了本发明示例性实施方式的方法之后,接下来,参考图3对本发明示例性实施方式的用机器实现语法纠错的装置进行描述。

图3示意性地示出了根据本发明实施方式的用机器实现语法纠错的装置的示意图。如图3中所示,装置300可以包括:第一编码器310,其可以配置用于将输入的第一语种的文本编码成中间表示。第一编码器310的数量可以为一个或多个。在一些实施例中,多个第一编码器310可以串联连接,使得输入的第一语种的文本可以经过多个第一编码器310的编码生成中间表示,根据这样的设置,在一些应用场景中可以实现提高编码质量的效果。在另一些实施例中,多个第一编码器310可以并联连接,使得第一语种的文本包括的多个句子或者多个段落可以分别经过多个第一编码器310的编码(例如其中每个第一编码器310可以用于对多个句子或者多个段落中的一个句子或者一个段落进行编码),并可以将多个第一编码器310输出的编码结果进行组合以生成中间表示。在本发明的另一个实施例中,第一语种的文本可以包括第一语种的语法错误文本。

如图3中进一步示出地,装置300还可以包括:第一解码器320,其可以与第一编码器310连接,并配置用于将中间表示解码成第二语种的文本。第一解码器320的数量可以为一个或多个。在一些实施例中,多个第一解码器320可以串联连接,使得输入的中间表示可以经过多个第一解码器320的解码生成第二语种的文本,根据这样的设置,在一些应用场景中有利于提高解码的准确率等。在另一些实施例中,多个第一解码器320可以并联连接,使得中间表示中的多个句子或者多个段落可以分别经过多个第一解码器320的解码,并可以将多个第一解码器320输出的解码结果进行组合以生成第二语种的文本。

进一步地,装置300还可以包括第二解码器330,其可以与第一编码器310和第一解码器320连接,并配置用于基于中间表示和第二语种的文本,生成经语法修正的第一语种的修正文本。第二解码器330的数量可以为一个或多个。在一些实施例中,多个第二解码器330可以串联连接,使得输入的中间表示和第二语种的文本可以经过多个第二解码器330的解码生成经语法修正的第一语种的修正文本,根据这样的设置,在一些应用场景中有利于提高解码质量等。在另一些实施例中,多个第二解码器330可以并联连接,使得第二语种的文本包括的多个句子或者多个段落结合中间表示可以分别经过多个第二解码器330的解码,并可以将多个第二解码器330输出的解码结果进行组合以生成第一语种的修正文本。

可以理解的是,图3中所示的装置300的功能已经在前文中结合图2所示的方法进行了详细的描述和解释,此处不再赘述。为了便于进一步理解本发明的用机器实现语法纠错的装置的具体实现结构,下面将结合图4和图5进行示例性的描述。

图4示意性地示出了根据本发明另一个实施方式的用机器实现语法纠错的装置的示意图。通过下面的描述,本领域技术人员可以理解的是,图4所示的装置400可以是图3所示的装置300的一个具体体现,因此上文中结合图3进行的描述同样可以适用于图4所示的装置400中。

如图4中所示,装置400可以包括第一编码器410,其可以配置用于将输入的第一语种的文本编码成中间表示。在一些实施例中,在将第一语种的文本输入到第一编码器410时,可以添加用于表示第一语种的文本中的各个词(或字)的位置信息的位置编码向量,其中每个词(或字)可以对应添加至少一个位置编码向量。该位置编码向量的维度和第一语种的文本对应的词向量的维度可以一样,且位置编码向量可以包括顺序信息以便于体现输入的第一语种的文本中的词(或字)的位置,或者说可以用于体现在第一语种的文本中不同的词(或字)之间的距离。

接着,在第一编码器410中可以包括多头注意力机制(或模块)和前馈网络(或模块),并且在多头注意力机制和前馈网络之后各执行相加归一化(即相加和层归一化)的操作,以生成第一语种的文本的中间表示。在本实施例中,多头注意力机制可以包含多个注意力机制,多个注意力机制的输出结果将被拼合后再输入到下一层(例如图示中的相加归一化)。注意力机制可以是但不限于例如加权求和的运算。多头注意力机制可以有利于关注到来自不同编码位置的信息。本实施例中的前馈网络可以是基于位置的全连接前馈网络。相加归一化可以将前一层的输出与原始输入相加并执行层归一化操作。相加和层归一化的操作可以利用残差和层归一化将各个层的输出相连,并且其中层归一化可以防止层内的数值变化过大,从而有利于加快训练速度并且提高泛化性能。

在另一些实施例中,第一编码器410可以包括多层结构,其中每层结构可以包括例如图4中所示的第一编码器410中的多头注意力机制、前馈网络、以及在多头注意力机制和前馈网络之后各执行的相加归一化。第一编码器410的层数可以根据需要进行设置,在一些应用场景中可以通过增加第一编码器410的层数来提高编码质量。

如图4中进一步示出地,装置400还包括第一解码器420,其可以配置用于基于中间表示,逐字或者逐词的解码生成第二语种的文本。在一些实施例中,逐字或者逐词的解码可以是逐步解码出第二语种的文本中的每个字或词。在另一些实施例中,在逐步解码第二语种的文本的每个解码位置表示的字或词时,可以是通过结合例如多头注意力机制以及根据中间表示中的每个字或词对当前解码位置的重要性信息(例如重要程度的概率分布),来确定当前解码位置生成的字或词;并且生成的当前解码位置的字或词可以被提供到第一解码器420的底端,以便结合之前解码位置解码出的字或词一起输入到第一解码器420中参与下一个解码位置的解码过程。在又一些实施例中,与第一编码器410类似的,第一解码器420的底端也可以给每个输入的字或词添加用于嵌入并添加位置编码向量来表示每个字或词的位置信息。

在另一些实施例中,第一解码器420可以包括与第一编码器410类似的结构,即可以包括例如多头注意力机制和前馈网络,并且在多头注意力机制和前馈网络之后各执行相加归一化操作,以生成第二语种的文本对应的隐状态向量组。隐状态向量组可以包括第二语种的文本的各个解码位置的隐状态向量,并可以关注到各个解码位置(例如一句话中的各个字或词)之间的关系,进而有利于提高后续第二解码器430针对第二语种的文本生成修正文本的准确性和修正效率。进一步地,第一解码器420还可以包括掩盖的多头注意力机制(或称掩盖层),其可以被允许只处理中间表示中当前处理位置靠前的解码位置的词向量,并且隐藏掉靠后的解码位置的信息,从而可以用于保护输入的第一语种的文本的各个字词的序列信息。

在又一些实施例中,第一解码器420可以包括多层结构,其中每层结构可以包括例如图4中所示的第一解码器420中的掩盖的多头注意力机制、多头注意力机制、前馈网络、以及在掩盖的多头注意力机制、多头注意力机制和前馈网络之后各执行的相加归一化。第一解码器420的层数可以根据需要进行设置,在一些应用场景中可以通过增加第一解码器420的层数来提高解码质量。

进一步地,如图4中所示,装置400还包括第二解码器430,其可以配置为:针对第二语种的文本对应的隐状态向量组,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成经语法修正的第一语种的修正文本。在一些实施例中,逐字或者逐词的生成修正文本可以是逐步生成出第一语种的修正文本中的每个字或词。在另一些实施例中,在逐步生成第一语种的修正文本的每个解码位置表示的字或词时,可以是通过结合例如多头注意力机制以及根据第二语种的文本中的每个字或词,并结合中间表示中的每个字或词对当前解码位置的重要性信息(例如重要程度的概率分布),来确定当前解码位置生成的字或词;并且生成的当前解码位置的字或词可以被提供到第二解码器430的底端,以便结合之前解码位置解码出的字或词一起输入到第二解码器430中参与下一个解码位置的解码过程。

第二解码器430的结构可以与第一解码器420的结构类似,但是相比于第一解码器420的结构而言,由于第二解码器430可以结合中间表示来对第一语种的文本进行修正,因此在第二解码器430中还可以包括用于与第一编码器410交互的交互模块,该交互模块可以包括例如多头注意力机制以及相加归一化。在另一些实施例中,第二解码器430可以包括多层结构,其中每层结构可以包括例如图4中第二解码器430所示的掩盖的多头注意力机制、多头注意力机制、交互模块、前馈网络、以及在掩盖的多头注意力机制、多头注意力机制和前馈网络之后各执行的相加归一化。第二解码器430的层数可以根据需要进行设置,在一些应用场景中可以通过增加第二解码器430的层数来提高解码质量。

如图4中进一步示出地,在第二解码器430的顶端,装置400还可以包括对第二解码器430的输出结果执行线性变换和归一化操作的模块,以生成修正文本。本实施例中的线性变换可以是一种全连接神经网络。这里的归一化操作不同于前文中所述的层归一化,其可以在对线性变换的结果进行归一化的过程中凸显其中的最大值并抑制远低于最大值的其他分量值,从而形成多个预测字词的概率分布,以便于选出其中最大概率的字词作为装置400的输出。在一些实施例中,该归一化操作可以是基于归一化指数函数Softmax的操作。

进一步地,图5示意性地示出了根据本发明又一实施方式的用机器实现语法纠错的装置的示意图。如图5中所示,装置500可以包括第一编码器510、第一解码器520和第二解码器530,其中第二解码器520还可以配置为:针对第二语种的文本对应词向量构成的张量,结合输入的第一语种的文本编码生成的中间表示,逐字或者逐词生成第一语种的修正文本。装置500与图4中所示的装置400的区别在于,在第一解码器520的顶部还可以包括线性变换和归一化操作,以生成第二语种的文本。这里的线性变换和归一化操作与前文中结合图4所述的线性变换和归一化操作相似,此处不再赘述。第二语种的文本在输入到第二解码器530前可以转换为对应的张量,以便于第二解码器530对其进行处理。

以上结合图4和图5对根据本发明多个实施方式的用机器实现语法纠错的装置进行了示例性的描述,本领域技术人员可以理解的是,上面的描述是示例性的而非限制性的,例如第一编码器的数量可以不限于图示中的一个,可以根据需要设置的更多。第一解码器的数量可以不限于图示中的一个,可以根据需要设置的更多。第二解码器的数量可以不限于图示中的一个,可以根据需要设置的更多。

通过上面结合图2-图5对根据本发明实施方式的用机器实现语法纠错的方法和装置进行了示例性的描述,可以理解是,本发明通过结合中间表示和第二语种的文本来生成第一语种的修正文本,可以有效保证待纠错文本的信息完整度以及提高语法纠错的准确性。在一些实施例中,可以直接针对第二语种的文本对应的隐状态向量组生成修正文本,根据这样的设置,可以保留文本的各个词之间的关系信息以提高修正文本的准确性,还因在将隐状态向量组输入到第二解码器时能够减少文本转张量的操作步骤,从而有利于提高整个装置的纠错速度和纠错效率。

在介绍了本发明示例性实施方式的用机器实现语法纠错的方法和装置之后,接下来,参考图6对本发明示例性实施方式的训练方法进行描述。

图6示意性地示出了根据本发明实施方式的用于语法纠错模型的训练方法的流程图。如图6中所示,提供了一种用于语法纠错模型的训练方法600,其中语法纠错模型可以包括第一编码器、第一解码器和第二解码器,第一编码器用于将输入的第一语种的文本编码成中间表示,第一解码器用于将中间表示解码成第二语种的文本,第二解码器用于基于第一编码器和第一解码器生成经语法修正的第一语种的修正文本。在一些实施例中,语法纠错模型可以参考前文中结合图3-图5中任一所示的装置。根据本发明的训练方法600可以包括:在步骤610中,可以利用翻译训练语料对语法纠错模型进行第一训练。翻译训练语料可以为对翻译模型进行翻译训练的语料,其可以是包括不同语种之间相互释义的语料。在一些实施例中,翻译训练语料可以为不同语种之间的平行语料。在另一些实施例中,第一训练可以包括翻译训练等。

在本发明的一个实施例中,步骤610可以包括:在步骤611(图中以虚线框示出)中,可以利用从第一语种到第二语种的平行语料对第一编码器和第一解码器进行第一翻译训练,以对第一编码器和第一解码器的参数和精度等进行调整。例如,在一些实施例中,可以将平行语料中的第一语种语料输入到第一编码器中,根据第一解码器的翻译结果与平行语料中的第二语种语料进行对比,来对第一编码器和第一解码器进行调整。还例如,在另一些实施例中,可以将平行语料中的第一语种语料输入到第一编码器中,并将平行语料中的第二语种语料输入到第一解码器中,来对第一编码器和第一解码器进行训练。在又一些实施例中,第一语种和第二语种可以是不同的语种,并且第一语种可以选自例如以下任一:英语、法语、德语、西班牙语、汉语、日语、韩语等;第二语种可以选自例如以下任一:汉语、英语、法语、德语、西班牙语、日语、韩语等。

接着,如图6中虚线框示出的实施例中,在步骤612处,可以利用从第二语种到第一语种的平行语料对第二解码器进行第二翻译训练,以对第二解码器的参数和精度等进行调整。步骤612中的第二语种到第一语种的平行语料与步骤611中的第一语种到第二语种的平行语料可以不同,也可以为相同的语料。在一些实施例中,可以将平行语料中的第二语种语料输入到第二解码器中,根据第二解码器的翻译结果与平行语料中的第一语种语料进行对比,并根据对比结果来对第二解码器进行调整。在另一些实施例中,可以将平行语料中的第二语种语料输入到第一解码器中,并将平行语料中的第一语种语料输入到第二解码器中,来对第二解码器进行训练。

如图6中进一步示出地,训练方法600还可以包括:在步骤620中,可以利用语法修正语料对语法纠错模型进行第二训练。语法修正语料可以包括由语法错误语料和对应的语法正确语料组成的语料集合。在一些实施例中,可以将语法修正语料中的语法错误语料输入到第一编码器中,根据第二解码器的修正结果与语法修正语料中的语法正确语料进行对比,来对语法纠错模型进行调整。还例如,在另一些实施例中,可以将语法修正语料中的语法错误语料输入到第一编码器中,并将语法修正语料中的语法正确语料输入到第二解码器中,来对语法纠错模型进行训练。

在本发明的一个实施例中,利用语法修正语料进行第二训练可以包括:基于语法修正语料中的第一语种的错误文本和正确文本的二元文本对,对语法纠错模型进行整体训练。进一步地,语法修正语料可以不限于包括第一语种的错误文本和正确文本的二元文本对,在另一些实施例中,还可以包括例如第一语种的错误文本、正确文本以及对应的第二语种的正确文本的三元文本对。

在本发明的另一个实施例中,语法修正语料可以包括伪语料和真实纠错语料等中的至少一种。例如,语法修正语料可以仅包括伪语料或仅包括真实纠错语料,也可以既包括伪语料也包括真实纠错语料。在一些应用场景中,基于在步骤610中对语法纠错模型进行了第一训练,且第一训练所使用的训练数据集可以为大量的翻译训练语料,从而对语法纠错模型进行第二训练可以是对语法纠错模型的一种微调操作,根据这样的设置,能够有助于降低对第二训练中所需的语法修正语料的数量要求。

在本发明的又一个实施例中,伪语料可以是基于翻译训练语料中的第一语种语料生成的,即基于第一语种的正确语料生成第一语种的错误语料,以便将其用于对语法纠错模型的第二训练中,并且在进行第二训练时,训练方法600还可以包括:将翻译训练语料中的与第一语种语料对应的第二语种语料用作第一解码器的监督结果。根据本实施例的设置,在将第二语种语料用作第一解码器的监督结果时,可以通过将第一解码器的输出翻译结果与第二语种语料进行对比,来监督第一解码器的解码准确度,并为语法纠错模型的参数和精度等的进一步调整提供参考。基于翻译训练语料生成伪语料不仅可以提供大量的正确文本来源,以降低伪语料的生成难度,还能够提供可靠的监督结果来实现语法纠错模型的进一步优化。

以上结合图6对根据本发明实施方式的用于语法纠错模型的训练方法进行了示例性的描述,可以理解的是,相比于语法修正语料,翻译训练语料的来源比较广泛且较易于获得。根据本发明的训练方法,可以以翻译训练语料为核心进行训练,即先利用大量的翻译训练语料对语法纠错模型进行第一训练,再利用数据量较少的语法修正语料对语法纠错模型进行调整,来获得纠错效果更好的语法纠错模型,从而可以降低训练过程中对语法修正语料的数量要求以及对伪语料的依赖程度。还需要理解的是,图6中所示的训练方法是示例性的而非限制性的,例如,在一个实施例中,步骤610中可以不限于仅包括步骤611和步骤612,还可以在对第二解码器进行第二翻译训练前执行冻结第一编码器和第一解码器的参数等步骤,下面将结合图7对步骤610的另一个具体实施方式进行描述。

图7示意性地示出了根据本发明实施方式的第一训练的另一个实施例的流程图。通过下面的描述,可以理解的是,图7中所示的方法700可以是图6中所示的步骤610的一个具体实现方式,因此前文中结合图6对步骤610的描述同样可以适用于下面关于图7的描述中。

如图7中所示,利用翻译训练语料对语法纠错模型进行第一训练的方法700可以包括:步骤710中,可以利用从第一语种到第二语种的平行语料对第一编码器和第一解码器进行第一翻译训练。步骤710与前文中结合图6所描述的步骤611相同或相似,此处不再赘述。

接着,在步骤720中,可以冻结第一编码器和第一解码器的参数。冻结参数可以是将第一编码器和第一解码器的参数固定,以避免后续操作对第一编码器和第一解码器的参数造成改变。然后,流程前进到步骤730处,可以移除第二解码器与第一编码器之间的交互模块。该交互模块可以是位于第二解码器内,例如可以是图4或者图5中所示的用于与第一编码器连接以便输入中间表示的模块。在移除了交互模块后,第二解码器的结构可以与第一解码器的结构相同(例如图5中所示的第二解码器在移除了交互模块后可以具有与第一解码器相同的结构),此时可以将第一编码器和第一解码器看作一个整体,以此来进行后续的第二翻译训练。如图7中进一步示出地,在步骤740中,可以利用从第二语种到第一语种的平行语料对第二解码器进行第二翻译训练。步骤740已经在前文中结合图6所示的步骤612进行了详细的描述,此处不再赘述。

以上结合图7对根据本发明实施例的第一训练进行了示例性的说明,可以理解的是,通过执行步骤720和步骤730的操作,可以在对第二解码器进行第二翻译训练时仅设置第二解码器的参数,而不会对已经训练过的第一编码器和第一解码器的参数造成影响,从而可以保证每个步骤中训练的有效性和准确性。经过第一训练后的语法纠错模型实际上已经可以应用于一些较简单的语法纠错场景中,并能够纠正一些常见的语法错误。为了进一步提高语法纠错模型的纠错率,并能够使其更好的应用于一些长难句的纠错场景中,本发明的训练方法还包括了对语法纠错模型的第二训练。下面将结合图8对第二训练的一个具体实施方式进行描述。

图8示意性地示出了根据本发明实施方式的第二训练的另一个实施例的流程图。通过下面的描述,本领域技术人员可以理解的是,图8中所示的方法800可以是图6中所示的步骤620的一个具体实现方式,因此前文中结合图6中步骤620的描述也同样适用于图8。

如图8中所示,第二训练的方法800可以包括:在步骤810中,可以解冻第一编码器和第一解码器的参数,以便在进行第二训练时可以对第一编码器和第一解码器的参数进行调整。在一些实施例中,步骤810可以与图7中所示的步骤720对应执行,即当本发明的第一训练中不包括步骤720时,方法800可以不执行步骤810。

然后,流程前进到步骤820中,可以添加第二解码器与第一编码器之间的交互模块,以便于在后续的训练过程中可以更新第二解码器与第一编码器之间的相关联的参数。该交互模块与前文中结合图7所述的交互模块相同或相似,此处不再赘述。在一些实施例中,步骤820可以与图7中所示的步骤730对应执行,即当本发明的第一训练中不包括步骤730时,方法800可以不执行步骤820。

接着,在步骤830中,可以调低语法纠错模型的学习率。根据本实施例中的语法纠错模型的损失函数Loss可以通过如下公式计算得到:

Loss=·α*Loss

其中,Loss

根据本实施例,可以通过损失函数来估计多次迭代中语法纠错模型的权重的优选值,并且学习率可以控制语法纠错模型学习的速度,换言之,其可以控制权重更新以达到损失函数的最小点的速度,从而影响模型的参数变化幅度。通过调低学习率的操作,可以避免在后续整体训练中语法纠错模型的参数出现大幅度的变化,从而使得第二训练起到微调的作用,这将更有利于语法纠错模型的整体训练效果。

进一步地,如图8中所示,在步骤840中,可以基于语法修正语料中的第一语种的错误文本和正确文本的二元文本对,对语法纠错模型进行整体训练。在整体训练过程中,可以对第一编码器、第一解码器以及第二解码器的参数进行整体调整。在一些实施例中,整体训练可以实现对语法纠错模型中的参数的微调。在另一些实施例中,可以将第一语种的错误文本输入到第一编码器中,将第一语种的正确文本输入到第二解码器中,来对语法纠错模型进行整体训练。在另一些实施例中,可以将第一语种的错误文本输入到第一编码器中,根据第二解码器的修正结果与第一语种的正确文本进行对比,来对语法纠错模型进行整体调整。

如图8中进一步示出地,在步骤840的一个具体实施例中(图中以虚线框示出),步骤840可以包括:步骤841中,可以对正确文本进行从第一语种到第二语种的机器翻译,从而生成包括(第一语种的)错误文本、正确文本的第二语种译文和(第一语种的)正确文本的三元文本对的完整语法修正语料。可以理解的是,第二语种译文的语法也应该是正确的。

接着,在步骤842中,可以利用完整语法修正语料对语法纠错模型进行整体训练。利用完整语法修正语料对语法纠错模型进行训练,可以关注到第一编码器、第一解码器和第二解码器中的每个模块的参数,以便于对第一编码器、第一解码器和第二解码器中的关联参数进行整体调整,有利于获得更佳的训练效果。在一些实施例中,可以将完整语法修正语料中第一语种的错误文本输入到第一编码器中,将第二语种译文输入到第一解码器中,并将第一语种的正确文本输入到第二解码器中,来对语法纠错模型进行整体训练。在另一些实施例中,可以将完整语法修正语料中第一语种的错误文本输入到第一编码器中,根据第一解码器的翻译结果与第二语种译文进行对比,以及根据第二解码器的修正结果与第一语种的正确文本进行对比,来对语法纠错模型进行整体调整。

以上结合图8示例性的描述了根据本发明的第二训练的另一种具体实施方式,本领域技术人员可以理解的是,图8中所示的流程是示例性的而非限制性的,例如,步骤810~步骤830可以不限于图示中的位于步骤840之前执行,在一个实施例中,步骤810~步骤830可以在步骤841和步骤842之间执行。在另一个实施例中,步骤810~步骤830可以根据需要在第二训练之前执行。

在介绍了本发明示例性实施方式的训练方法之后,接下来,参考图9对本发明示例性实施方式的训练设备进行描述。

图9示意性地示出了根据本发明实施方式的用于语法纠错模型的训练设备的示意图。如图9中所示,提供了一种用于语法纠错模型的训练设备900,其中语法纠错模型可以包括第一编码器、第一解码器和第二解码器,第一编码器用于将输入的第一语种的文本编码成中间表示,第一解码器用于将中间表示解码成第二语种的文本,第二解码器用于基于第一编码器和第一解码器生成经语法修正的第一语种的修正文本,训练设备900可以包括:第一训练装置910,其可以配置为利用翻译训练语料对语法纠错模型进行第一训练;以及第二训练装置920,其可以配置为利用语法修正语料对语法纠错模型进行第二训练。

在本发明的一个实施例中,第一训练装置910还可以配置为:利用从第一语种到第二语种的平行语料对第一编码器和第一解码器进行第一翻译训练;以及利用从第二语种到第一语种的平行语料对第二解码器进行第二翻译训练。

在本发明的另一个实施例中,在进行第二翻译训练之前,第一训练装置910还可以配置为:冻结第一编码器和第一解码器的参数,以及移除第二解码器与第一编码器之间的交互模块。

在本发明的又一个实施例中,第二训练装置920还可以配置为:基于语法修正语料中的第一语种的错误文本和正确文本的二元文本对,对语法纠错模型进行整体训练。

在本发明的再一个实施例中,第二训练装置920还可以配置为:对正确文本进行从第一语种到第二语种的机器翻译,从而生成包括错误文本、正确文本的第二语种译文和正确文本的三元文本对的完整语法修正语料;以及利用完整语法修正语料对语法纠错模型进行整体训练。

在本发明的一个实施例中,在进行整体训练之前,第二训练装置920还可以配置为:解冻第一编码器和第一解码器的参数;添加第二解码器与第一编码器之间的交互模块;以及调低语法纠错模型的学习率。

在本发明的另一个实施例中,语法修正语料可以包括以下至少一项:伪语料;和真实纠错语料。

在本发明的又一个实施例中,伪语料可以是基于所述翻译训练语料中的第一语种语料生成的,并且第二训练装置920还可以配置为:将翻译训练语料中的与第一语种语料对应的第二语种语料用作第一解码器的监督结果。

在本发明的再一个实施例中,第一语种和第二语种可以是不同的语种,并且第一语种可以选自以下任一:英语、法语、德语、西班牙语、汉语、日语、韩语;第二语种可以选自以下任一:汉语、英语、法语、德语、西班牙语、日语、韩语。

本发明的训练设备在上文中已经结合训练方法进行了详细的描述和解释,这里将不再赘述。

通过上面对根据本发明的用于语法纠错模型的训练方法和训练设备的技术方案及其多个实施例的描述,可以理解的是,本发明的训练方法可以使用数据搜索难度相对较小的翻译训练语料来对语法纠错模型进行第一训练,并可以进一步使用语法修正语料来对语法纠错模型进行第二训练,可以显著降低训练过程对伪语料的依赖程度,同时使得语法纠错模型可以适用于例如英中、法中、德中、日中等平行语料较为充足的语种的语法纠错上,从而能够显著提高语法纠错模型的适用语种范围,并能够保证训练后的语法纠错模型的纠错准确率。在一些实施例中,可以通过在整体训练前调低语法纠错模型的学习率来控制整体训练对语法纠错模型的参数的调整幅度,从而有利于保证训练后的语法纠错模型的稳定性。在另一些实施例中,通过生成三元文本对作为完整语法修正语料来对语法纠错模型进行整体训练,可以关注到语法纠错模型中第一编码器、第一解码器和第二解码器的每部分参数及其关联性,从而能够达到更好的训练效果。

应当注意,尽管在上文详细描述中提及了装置或训练设备的若干模块或子模块,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。

此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

申请文件中提及的动词“包括”、“包含”及其词形变化的使用不排除除了申请文件中记载的那些元素或步骤之外的元素或步骤的存在。元素前的冠词“一”或“一个”不排除多个这种元素的存在。

虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号