掌桥专利:专业的专利平台
掌桥专利
首页

文本翻译方法、装置及存储介质

文献发布时间:2023-06-19 19:28:50


文本翻译方法、装置及存储介质

技术领域

本申请涉及机器翻译技术领域,尤其涉及文本翻译方法、装置及存储介质。

背景技术

机器翻译是人工智能领域的重要研究方向之一,在经历了传统的基于规则的机器翻译(rule-based machine translation,RBMT)和统计机器翻译(statistical machinetranslation,SMT)的发展时期之后,目前迎来了以神经机器翻译(neural machinetranslation,NMT)为主流的新翻译模型热潮。神经机器翻译直接采用神经网络以端到端(End-to-End)方式进行翻译建模,使用神经网络学习翻译特征后将源语言直接映射成目标语言文本。

传统的神经机器翻译模型利用平行的双语数据训练,能够完成该训练语言对的翻译任务,而多语言神经翻译模型是指能够处理多个语言对之间翻译任务的系统。在多语言神经翻译模型中,低资源语言可以利用跨语言知识迁移从高资源语言上学习到额外知识,显著提高翻译效果和泛化能力。除此之外,多语言神经翻译模型利用一个统一的模型来翻译多种语言,实际部署更加高效,与双语翻译模型相比更具优势。

多语言神经翻译模型在使用过程中,相关技术人员利用不同语言之间具有相同语义的序列表示在语义空间中更为靠近的思想,对输入序列中词元(token)或短语进行同义替换,以数据增强的方式训练模型,使之具有更强的跨语言知识迁移能力,可以有效地提高模型的翻译效果,但是,上述方案中的同义替换方法大多依赖预训练微调架构,首先利用同义词典替换生成混合编码的序列,接着进行混合编码文本的预训练任务,最后在下游的多个翻译方向上微调模型,虽然该类方法能够保证翻译质量的提升,但会严重削弱多语言模型高效、易部署的特性。此外,替换生成的混合编码序列在表示层面上与原始序列存在差距,会引入额外噪声干扰模型训练,降低了模型训练的准确性。

发明内容

本申请提供文本翻译方法、装置及存储介质,可以缓解噪声对模型的影响,提升模型的性能和鲁棒性,高效易部署。

第一方面,本申请提供一种文本翻译方法,所述方法包括:获取第一翻译指令,所述第一翻译指令包括待翻译文本;将所述待翻译文本输入预设多语言翻译模型中,得到译文文本;其中,所述预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。

在本申请实施例中,使用的是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的预设多语言翻译模型进行翻译的,掩码处理可以缓解噪声对模型的影响,增强模型的通用语言表示能力,进而提升模型的性能和鲁棒性,高效易部署。

第二方面,本申请提供一种文本翻译装置,所述装置包括:获取模块,用于获取第一翻译指令,所述第一翻译指令包括待翻译文本;处理模块,用于将所述待翻译文本输入预设多语言翻译模型中,得到译文文本;其中,所述预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。

第三方面,本申请提供一种电子设备,包括处理器和存储器,所述存储器用于存储代码指令;所述处理器用于运行所述代码指令,以实现上述第一方面中的方法。

可选地,处理器为一个或多个,存储器为一个或多个。

可选地,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。

在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型以及存储器与处理器的设置方式不做限定。

第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)当其在计算机上运行时,使得计算机执行上述第一方面中的方法。

第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当计算机程序被运行时,使得计算机执行上述第一方面中的方法。

附图说明

图1为本申请实施例提供的电子设备的系统架构的示意图;

图2为本申请一个实施例提供的文本翻译方法的流程图;

图3为本申请另一个实施例提供的文本翻译方法的流程图;

图4为本申请一个实施例提供的掩码语言模型的示意图;

图5为本申请一个实施例提供的预设多语言翻译模型的示意图;

图6为本申请一个实施例提供的文本翻译装置的结构性示意图;

图7为本申请另一个实施例提供的文本翻译装置的结构性示意图。

具体实施方式

下面将结合附图,对本申请中的技术方案进行描述。

为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一指令和第二指令是为了区分不同的用户指令,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。

需要说明的是,本申请中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。

此外,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b和c中的至少一项(个),可以表示:a,或b,或c,或a和b,或a和c,或b和c,或a、b和c,其中a,b,c可以是单个,也可以是多个。

机器翻译(machine translation,MT)是一门使用计算机进行自然语言之间相互翻译的学科。它是自然语言处理研究方向的一个支系,也是人工智能的最终目标之一。机器翻译相比于人工翻译,即使翻译质量有着一定差距,但是机器翻译的高效率以及低成本所带来的收益是极为可观的,并且对于促进人类文化交流有着重要意义。

早期的机器翻译研究都是以基于规则的方法为主,特别是在上世纪70年代,以基于规则方法为代表的专家系统是人工智能中最具代表性的研究领域。它的主要思想是以词典和人工书写的规则库作为翻译知识,用一系列规则的组合完成翻译。该方法的缺陷在于需要大量语言学专家构造规则,并且制定的规则难以统一,甚至人工定义的规则之间会出现冲突,造成基于规则的翻译系统的可扩展性和可维护性较差。

直到上世纪90年代,统计机器翻译逐渐兴起。它利用统计模型从单语或双语语料中自动学习翻译知识。统计机器翻译使用单语语料学习语言模型,使用双语平行语料学习翻译模型,并使用这些统计模型完成对翻译过程的建模。整个过程不需要人工编写规则,也不需要从实例中构建翻译模板。无论是词还是短语,甚至是句法结构,统计机器翻译系统都可以自动学习。但统计机器翻译需要对大量的双语平行语料进行统计分析,从而构造统计翻译模型来完成翻译。至2005年开始,统计机器翻译进入了十年黄金时期。在这一时期,各种基于统计机器翻译模型层出不穷,经典的基于短语的模型和基于句法的模型也先后被提出。

随着机器学习技术的发展,机器翻译作为自然语言处理(natural languageprocessing,NLP)领域极其重要的研究方向,已经与人们的日常生活紧密联系在一起。基于自注意力机制的翻译Transformer模型的提出,将机器翻译领域带入了新时代。在一些通用新闻领域的翻译任务上,基于Transformer的神经机器翻译模型(neural machinetranslation,NMT)已经达到了与人工翻译相媲美的水平。但Transformer的效果依赖于大量平行数据,在一些低资源场景下(平行数据少于100万条),参数未得到充分训练,模型效果不佳,泛化性较差。而迁移学习的兴起,为低资源翻译难题带来了新的解决方案,其中,多语言神经翻译模型(multilingual neural machine translation,MNMT)受到诸多的关注。

传统的神经机器翻译模型利用平行的双语数据训练,能够完成该训练语言对的翻译任务,而多语言神经翻译模型是指能够处理多个语言对之间翻译任务的系统。在多语言翻译模型中,低资源语言可以利用跨语言知识迁移从高资源语言上学习到额外知识,显著提高翻译效果和泛化能力。除此之外,多语言神经翻译模型利用一个统一的模型来翻译多种语言,实际部署更加高效,与双语翻译模型相比更具优势。

当前多语言机器翻译研究可分为关注采样方法、关注模型架构、关注训练方式等方面。多语言翻译模型训练过程中,如果仅将不同语言对数据拼接送入模型训练,数据的不平衡问题会导致模型难以关注到低资源语言,跨语言知识难以迁移,进而导致模型的整体翻译效果显著降低。而关注采样方法研究的出发点就是为了缓解高资源翻译任务和低资源翻译任务之间的不平衡。为了平衡模型对不同语言的关注程度,标准的做法是调整不同语言的数据分布,研究者利用基于温度系数来缩放数据集大小的方法,对不同语言的训练数据进行采样,取得不错的效果,但该方法只关注数据集规模,忽略了语言之间相似性等特征对跨语言知识迁移的影响。

此外,为了使得多语言翻译模型正确翻译出各种不同的语言,很多研究者还提出了各种适应多语言翻译任务的模型结构。首先,参数共享模块的使用,让高资源语言和低资源语言能够在同一表示空间中进行知识迁移,有效地提升低资源语言翻译效果。然而完全的参数共享存在明显的表示瓶颈,会导致高资源语言翻译效果变差,并且完全的参数共享未能考虑语言之间的差异性,因此有研究者综合考虑语言之间的差异和联系,在参数共享模型基础上提出各种独立的语言相关组件来学习语言的特殊信息,如为各个翻译方向设计独立的适配器、额外的线性变换等。

有研究表明,不同语言之间具有相同语义的序列表示在语义空间中更为靠近,研究者利用该思想,对输入序列中词元(token)或短语进行同义替换,以数据增强的方式训练模型,使之具有更强的跨语言知识迁移能力,有效地提高模型的翻译效果。

但现有的同义替换方法大多依赖预训练微调架构,首先利用同义词典替换生成混合编码的序列,接着进行混合编码文本的预训练任务,最后在下游的多个翻译方向上微调模型,虽然该类方法能够保证翻译质量的提升,但会严重削弱多语言模型高效、易部署的特性。此外,替换生成的混合编码序列在表示层面上与原始序列存在差距,会引入额外噪声干扰模型训练,降低了模型训练的准确性。

有鉴于此,本申请实施例提供了一种文本翻译方法、装置及存储介质,本申请的技术方案中,电子设备首先获取第一翻译指令,该第一翻译指令包括待翻译文本,然后将待翻译文本输入预设多语言翻译模型中,得到译文文本,其中,预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。本申请的文本翻译方法中,使用的是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的预设多语言翻译模型进行翻译的,掩码处理可以缓解噪声对模型的影响,增强模型的通用语言表示能力,进而提升模型的性能和鲁棒性,高效易部署。

应理解,本申请实施例涉及的电子设备可以是手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑等具有翻译功能的电子设备,具体的设备形式本申请实施例对此并不限定。

示例性地,图1为本申请实施例提供的电子设备的系统架构示意图。如图1所示,电子设备包括处理器110、存储器120、收发器130、显示单元140、输入单元150、传感器160、音频电路170以及电源模块180等部件。

处理器110是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器110可包括一个或多个处理单元;可选的,处理器110可集成应用处理器,应用处理器主要处理操作装置、用户界面和应用程序等,当然,还可以包括其他处理器,在此不一一列举。

存储器120可用于存储软件程序以及模块,处理器110通过运行存储在存储器120的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器120主要包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

收发器130可以提供应用在电子设备上的包括无线局域网(wireless local areanetworks,WLAN)(例如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。收发器130可以是集成至少一个通信处理模块的一个或多个器件,例如,将天线与基带处理器集成收发器130,或者,将天线和调制解调处理器集成收发器130等,在此不作限制。

显示单元140可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种菜单。显示单元140可以采用液晶显示器(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置等,在此不作限制。

输入单元150可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,输入单元150可收集用户在其上或附近的操作,并根据预先设定的程式驱动相应的连接装置。此外,输入单元150中可以包括触控面板,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板。除了触控面板,输入单元150还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于功能键(比如音量控制按键、开关按键等)、轨迹球、操作杆等中的一种或多种。

电子设备还可包括至少一种传感器160,比如陀螺仪传感器、运动传感器以及其他传感器。运动传感器可以包括加速度传感器,用于检测各个方向上加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态的应用,例如横竖屏切换、相关游戏、磁力计姿态校准等;至于电子设备还可配置的压力计、气压计、湿度计、温度计、红外线传感器、指纹传感器等其他传感器,在此不再赘述。

音频电路170可以包括扬声器和传声器,可提供用户与电子设备之间的音频接口。音频电路170可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路170接收后转换为音频数据,再将音频数据输出处理器110处理后,经视频电路以发送给比如另一电子设备,或者将音频数据输出至存储器120以便进一步处理。

电子设备还包括给各个部件供电的电源模块180,可选的,电源模块180可以通过电源管理装置与处理器110逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。

尽管未示出,电子设备还可以包括摄像头。可选地,摄像头在电子设备上的位置可以为前置的,也可以为后置的,本申请实施例对此不作限定。

可以理解的是,本申请实施例示意的结构并不构成对电子设备的具体限定。在本申请另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

为了使本申请的目的、技术方案更加清楚直观,下面将结合附图及实施例,对本申请实施例提供的文本翻译方法、装置及存储介质进行详细说明。应理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

请参考图2,为本申请一个实施例提供的文本翻译方法的流程图。该方法可以应用于如图1所示的电子设备,下面详细说明图2所示的方法中的各个步骤,该流程图包括:

S201,获取第一翻译指令,该第一翻译指令包括待翻译文本。

应理解,待翻译文本可以是只包括一种语言类型的文本,也可以是包括多种语言类型的混合文本,本申请对此不做限定。

S202,将待翻译文本输入预设多语言翻译模型中,得到译文文本,该预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。

应理解,将待翻译文本输入预设多语言翻译模型中,可以得到用户预设的语言类型对应的译文文本,例如,可以将一句包括汉语和俄语的待翻译文本,经过预设多语言翻译模型处理,得到相应的英文译文。

还应理解,利用掩码处理对初始翻译模型进行训练得到的预设多语言翻译模型,能够缓解噪声对模型的影响,增强模型的通用语言表示能力。

在该实施例中,使用的是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的预设多语言翻译模型进行翻译的,掩码处理可以缓解噪声对模型的影响,提升模型的性能和鲁棒性,高效易部署。

基于上述实施例,图3为本申请另一个实施例提供的文本翻译方法的流程图,在图3所示的实施例中,以怎么训练得到预设多语言翻译模型为例,下面详细说明图3所示的方法中的各个步骤,该流程图包括:

S301,获取第一翻译指令,该第一翻译指令包括待翻译文本。

该步骤和图2所示的实施例中的步骤S201相似,在此不再赘述。

S302,获取至少一个训练数据,该至少一个训练数据是对至少一个原始训练数据进行同义词替换得到的。

应理解,同义词替换指的是使用与原始词语语义相同或相近的词语替换原始词语,本申请实施例中主要以使用与原始词语语义相同或相近且语言类型不同的词语替换原始词语为例进行说明。

在一种可能的实施方式中,电子设备基于预设概率,将至少一个原始训练数据中的第一词语替换为第二词语,得到至少一个替换后的数据,该第一词语与第二词语的语义相同且语言类型不同。

应理解,至少一个原始训练数据中的第一词语可以是至少一个原始训练数据中的任意一个词语,每个词语被替换的概率可能不太一样,例如可以是30%或60%等,也都是提前预设好的超参数。此外,替换后的第二词语的语言类型与第一词语的语言类型不同,可以是除第一词语的语言类型以外的任意一种语言类型,本申请对此不做限定。

在一种可能的实施方式中,将至少一个原始训练数据中的第一词语替换为第二词语的方法可以采用同义词典替换方法,也可以采用别的替换方法,本申请对此不做限定。下面以采用同义词典替换方法为例对同义词替换进行说明。

一般情况下,标准的同义词典替换方法通常采用随机选取被替换元素,然后利用外部词典的对齐信息来进行同义替换,生成混合编码序列,例如替换过程如下所示:

1)原始平行句对:“L'exercice est bon pour la santé”->“Exercise is goodfor health”;

2)随机选取源端序列词语:“L'exercice”和“santé”;

3)从同义词典中匹配同义替换词:“L'exercice”<->“运动”&“santé”<->“健康”;

4)生成混合编码序列:“运动est bon pour la健康”->“Exercise is good forhealth”。

本申请实施例在上述标准的同义词典替换方法的基础上,对实验数据进行动态同义词替换处理,构建动态混合编码文本,具体流程如下:

1)构建同义词典:例如采用一种无监督的词对齐方法MUSE作为同义词典,可以将lang_A(x)转换为lang_B(y),其中,lang_A和lang_B表示不同的语言类型,x和y表示一对同义的词语。

2)动态同义词典替换:不同于以往相关模型离线化的替换策略,本方案采用动态同义词典替换策略,即根据至少一个原始训练数据中的词语的预设概率P进行随机替换操作(P为设定的超参数),实现了同一文本的不同混合编码形态,显著提高了混合编码文本的多样性。

在一种可能的实施方式中,在同义词典替换方法中,还可以进行源端语言相互替换或固定中间语言替换等,本申请对此不做限定。

进一步地,在将至少一个原始训练数据中的第一词语替换为第二词语,得到至少一个替换后的数据之后,在至少一个替换后的数据中添加原始语言类型标记,得到至少一个具有语言类型标记的训练数据,该原始语言类型标记是根据原始训练数据的语言类型确定的。

例如,原始训练数据为平行句对“L'exercice est bon pour la santé”->“Exercise is good for health”,替换后的数据为平行句对“运动est bon pour la健康”->“Exercise is good for health”,则根据原始训练数据的语言类型为法语和英语,对应的法语标记为“”,英语标记为“”,则在至少一个替换后的数据前面添加该法语标记为“”和英语标记“”,得到具有语言类型标记的训练数据“运动est bonpour la健康”->“Exercise is good for health”。

最后,将至少一个具有语言类型标记的训练数据作为至少一个训练数据。

S303,基于至少一个训练数据训练初始翻译模型,得到预设多语言翻译模型。

应理解,电子设备首先对上个步骤S302得到的至少一个训练数据进行预处理,得到预处理后的至少一个训练数据,该预处理用于将至少一个训练数据中的第二词语替换为第二词语对应的语言类型标记。

例如,对该训练数据“运动est bon pour la健康”->“Exercise is goodfor health”进行预处理,得到预处理后的训练数据“est bon pour la”->“Exercise is good for health”。

进一步地,基于该预处理后的至少一个训练数据,训练初始翻译模型执行掩码处理任务以及翻译任务,其中初始翻译模型包括编码器和译码器。

在一种可能的实施方式中,将预处理后的至少一个训练数据输入至编码器中执行掩码处理任务,该掩码处理任务用于根据预处理后的至少一个训练数据中除第二词语以外的其他词语预测第二词语,以及根据原始语言类型标记预测除第二词语以外的其他词语的语言类型标记。

应理解,使用掩码语言模型能够缓解噪声对模型的影响,增强模型的通用语言表示能力。传统的掩码语言模型(masked language model,MLM)任务或掩码处理任务类似于完形填空任务,如图4所示,首先按一定比例随机对输入序列中的token进行遮盖,例如对输入的序列“L'exercice est bon pour la santé”中的第一个token和最后一个token进行遮盖,同时使用“”替换被遮盖的token,得到序列“est bon pour la”,然后令编码器去预测被遮盖的token,例如,编码器根据序列中的其他没被遮盖的token预测出被遮盖的token为“L'exercice”和“santé”。

本申请实施例在传统的掩码处理任务的基础上,使用被替换词语的语言类型标记来代替“”,同时生成MLM的目标序列。

理解性地,电子设备首先利用同义词替换方法生成动态混合编码序列,接着选取被替换过的词语,也即第二词语的位置的作为MLM的遮盖位置,并使用该第二词语的语言标记来代替“”,也即上述中的预处理过程,同时生成MLM的目标序列,该目标序列中包括了根据除第二词语以外的其他词语预测出来的第二词语,以及根据原始语言类型标记预测出来的除第二词语以外的其他词语的语言类型标记。

例如,图5为本申请一个实施例提供的预设多语言翻译模型的示意图,如图5中左侧的部分所示,原始序列为“L'exercice est bon pour la santé”,首先以预设概率P随机选中原始序列中的词语“L'exercice”和“santé”,接着选取替换语言为中文,从同义词典中找到其中文同义词“运动”和“健康”,随后在原始序列前添加语言类型标记,以及将原始序列中被选中的词语替换为中文的语言标记“”,得到最终的输入序列“est bonpour la”->“Exercise is good for health”,然后经过编码器生成MLM的目标序列“运动健康”。

进一步地,计算掩码处理任务的第一执行结果,该第一执行结果用于指示基于至少一个训练数据训练初始翻译模型执行掩码处理任务后输出MLM的目标序列与真值序列之间的损失,也即图5中的掩码语言模型损失,然后电子设备根据该第一执行结果,反向对编码器的参数进行调整。

在另一种可能的实施方式中,训练初始翻译模型执行翻译任务时,电子设备基于预处理后的至少一个训练数据以及预设语言类型标记,将预处理后的至少一个训练数据翻译为与预设语言类型标记对应的译文。

理解性地,将预处理后的至少一个训练数据输入编码器中执行编码任务,得到编码后的数据,然后再将该编码后的数据输入至译码器中,得到与预设语言类型标记对应的译文。进一步地,电子设备计算该翻译任务得到的第二执行结果,该第二执行结果用于指示基于至少一个训练数据训练初始翻译模型执行翻译处理任务后输出的目标译文与真值译文之间的损失。最后根据第二执行结果,反向对编码器的参数和译码器的参数进行调整。

示例性地,如图5中的右侧所示,译码器最终输出的译文为“Exercise is goodfor health”,其中,“”表示序列的结尾;机器翻译损失也即第二执行结果。

还应理解,电子设备训练初始翻译模型执行翻译任务时,与标准的机器翻译任务相同。但由于同义词替换的概率为P,因此输入序列可能存在两种状态:未被替换的原始序列、由语言标记和词语组成的混合编码序列。翻译任务通过对原始序列和混合编码序列的联合学习,可以将从混合编码序列中学习到的跨语言知识迁移到原始单语言序列中,增强原始序列的语言表示。

综上所述,电子设备根据掩码处理任务的第一执行结果和翻译任务的第二执行结果,对初始翻译模型的编码器的参数和译码器的参数进行调整,得到预设多语言翻译模型。

还应理解,预设多语言翻译模型在模型推断的时候,不需要进行MLM任务,因此不需要对输入序列进行遮盖和替换操作,使用原始序列进行翻译任务即可。

在又一种可能的实施方式中,第一翻译指令还包括目标语言类型标记,该目标语言类型标记用于指示预设多语言翻译模型将文本翻译成与目标语言类型标记对应的译文。

S304,将待翻译文本输入预设多语言翻译模型中,得到译文文本,该预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。

该步骤和图2所示的实施例中的步骤S202相似,在此不再赘述。

理解性地,上述实施例中的文本翻译方法,与现有技术中的基于温度系数采样的基准模型的翻译方法、在基于温度系数采样的基准模型上只加上同义词典替换方法的翻译方法和在基于温度系数采样的基准模型上加上同义词典替换方法联合语言标签预测任务的翻译方法相比,翻译效果更好。其中,语言标签预测任务指的是不对输入序列进行遮掩,只替换并预测其语言标记。例如,可以进行实验,假如实验在ted-related多语言翻译任务数据集上进行,该数据集包括8种语言到英语的平行数据,然后实验采用序列到序列的模型架构,以基于温度系数的采样方法为基础设置,以双语评估替补(bilingual evaluationunderstudy,BLEU)指标为例,计算双语评估替补分数(BLEU score),该分数是给定一个机器生成的翻译,自动计算的分数,用来衡量机器翻译的好坏,取值范围是[0,100],分数越高,表明翻译质量越好。实验结果如下表1所示:

表1

其中,“Avg”表示平均分数,“aze”表示阿塞拜疆语,“bel”表示白俄罗斯语,“glg”表示加利西亚语,“slk”表示斯洛伐克语,“tur”表示土耳其语,“rus”表示俄语,“por”表示葡萄牙语,“ces”表示英语。

从表1中可以看出,与基于温度系数采样的基准模型相比,只加入同义词典替换方法,在测试集上平均提升0.35分;同义词典替换联合语言标签预测任务,在测试集上平均提升0.58分;本申请实施例中的同义词典替换联合掩码语言模型的策略取得了最佳效果,在测试集上平均提升0.86分,翻译效果较好。

该实施例中,将同义词替换与掩码语言模型处理相结合,同义词替换能够增强模型的跨语言知识迁移能力,掩码语言模型处理能够缓解噪声对模型的影响,增强模型的通用语言表示能力,两者相辅相成,与现有技术相比,在不借助预训练微调的范式下,不仅实现了多语言翻译模型性能的显著提升,还保证了多语言模型统一架构的高效性和易部署性。

综上所述,本申请实施例中的文本翻译方法根据多语言机器翻译模型单一模型多种翻译能力的特性,融合了同义词替换方法和掩码语言模型来增强模型跨语言迁移能力,可以显著提升模型的性能和鲁棒性;且动态同义词典替换方法,增加了混合编码文本的多样性,可以实现数据增强,进一步提升模型效果;进一步地,本申请实施例中,在模型推理时只需要完成翻译任务,无需对原始输入序列进行处理,高效易部署。

还应理解,上述各个实施例之间也可以相互耦合,本申请对此不作限定。且上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

上文中结合图1至图5,详细描述了本申请实施例的文本翻译方法,下面将结合图6和图7,详细描述本申请实施例的文本翻译装置。

图6为本申请一个实施例提供的文本翻译装置600的结构性示意图,该装置600包括:获取模块601和处理模块602。

其中,获取模块601,用于获取第一翻译指令,所述第一翻译指令包括待翻译文本;处理模块602,用于将所述待翻译文本输入预设多语言翻译模型中,得到译文文本;其中,所述预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。

在一些实施例中,所述文本翻译装置还包括:训练模块。获取模块601,还用于获取所述至少一个训练数据,所述至少一个训练数据是对至少一个原始训练数据进行同义词替换得到的;训练模块,用于基于所述至少一个训练数据训练所述初始翻译模型,得到所述预设多语言翻译模型。

在一些实施例中,所述获取模块601具体用于:基于预设概率,将所述至少一个原始训练数据中的第一词语替换为第二词语,得到至少一个替换后的数据,所述第一词语与所述第二词语的语义相同且语言类型不同;在所述至少一个替换后的数据中添加原始语言类型标记,得到至少一个具有语言类型标记的训练数据,所述原始语言类型标记是根据所述原始训练数据的语言类型确定的;将所述至少一个具有语言类型标记的训练数据作为所述至少一个训练数据。

在一些实施例中,训练模块具体用于:对所述至少一个训练数据进行预处理,得到预处理后的至少一个训练数据,所述预处理用于将所述至少一个训练数据中的所述第二词语替换为所述第二词语对应的语言类型标记;基于所述预处理后的至少一个训练数据,训练所述初始翻译模型执行掩码处理任务以及翻译任务;根据所述掩码处理任务的第一执行结果和所述翻译任务的第二执行结果,对所述初始翻译模型进行调整,得到所述预设多语言翻译模型。

在一些实施例中,所述初始翻译模型包括编码器,训练模块具体还用于:将所述预处理后的至少一个训练数据输入至所述编码器中执行掩码处理任务,所述掩码处理任务用于根据所述预处理后的至少一个训练数据中除所述第二词语以外的其他词语预测所述第二词语,以及根据所述原始语言类型标记预测所述除所述第二词语以外的其他词语的语言类型标记。

在一些实施例中,训练模块具体还用于:基于所述预处理后的至少一个训练数据以及预设语言类型标记,将所述预处理后的至少一个训练数据翻译为与所述预设语言类型标记对应的译文。

在一些实施例中,所述第一执行结果用于指示基于所述至少一个训练数据训练所述初始翻译模型执行掩码处理任务后输出的目标序列与真值序列之间的损失,所述第二执行结果用于指示基于所述至少一个训练数据训练所述初始翻译模型执行翻译处理任务后输出的目标译文与真值译文之间的损失。

在一些实施例中,所述初始翻译模型还包括译码器,处理模块602具体用于:根据所述第一执行结果,对所述编码器的参数进行调整;根据所述第二执行结果,对所述编码器的参数和所述译码器的参数进行调整,得到所述预设多语言翻译模型。

在一些实施例中,所述第一翻译指令还包括目标语言类型标记,所述目标语言类型标记用于指示所述预设多语言翻译模型将文本翻译成与所述目标语言类型标记对应的译文。

应理解,这里的装置600以功能模块的形式体现。这里的术语“模块”可以指应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。在一个可选例子中,本领域技术人员可以理解,装置600可以具体为上述实施例中的电子设备,或者,上述实施例中电子设备的功能可以集成在装置600中,装置600可以用于执行上述方法实施例中与电子设备对应的各个流程和/或步骤,为避免重复,在此不再赘述。

上述装置600具有实现上述方法中电子设备执行的相应步骤的功能;上述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

图7为本申请另一个实施例提供的文本翻译装置的结构性示意图。图7所示的文本翻译装置可以用于执行前述任意一个实施例的方法。

如图7所示,本实施例的装置700包括:存储器701、处理器702、通信接口703以及总线704。其中,存储器701、处理器702、通信接口703通过总线704实现彼此之间的通信连接。

其中,处理器702用于:获取第一翻译指令,所述第一翻译指令包括待翻译文本;用于将所述待翻译文本输入预设多语言翻译模型中,得到译文文本;其中,所述预设多语言翻译模型是基于至少一个训练数据利用掩码处理对初始翻译模型进行训练得到的。

在一些实施例中,处理器702用于:获取所述至少一个训练数据,所述至少一个训练数据是对至少一个原始训练数据进行同义词替换得到的;基于所述至少一个训练数据训练所述初始翻译模型,得到所述预设多语言翻译模型。

在一些实施例中,处理器702用于:基于预设概率,将所述至少一个原始训练数据中的第一词语替换为第二词语,得到至少一个替换后的数据,所述第一词语与所述第二词语的语义相同且语言类型不同;在所述至少一个替换后的数据中添加原始语言类型标记,得到至少一个具有语言类型标记的训练数据,所述原始语言类型标记是根据所述原始训练数据的语言类型确定的;将所述至少一个具有语言类型标记的训练数据作为所述至少一个训练数据。

在一些实施例中,处理器702用于:对所述至少一个训练数据进行预处理,得到预处理后的至少一个训练数据,所述预处理用于将所述至少一个训练数据中的所述第二词语替换为所述第二词语对应的语言类型标记;基于所述预处理后的至少一个训练数据,训练所述初始翻译模型执行掩码处理任务以及翻译任务;根据所述掩码处理任务的第一执行结果和所述翻译任务的第二执行结果,对所述初始翻译模型进行调整,得到所述预设多语言翻译模型。

在一些实施例中,所述初始翻译模型包括编码器,处理器702用于:将所述预处理后的至少一个训练数据输入至所述编码器中执行掩码处理任务,所述掩码处理任务用于根据所述预处理后的至少一个训练数据中除所述第二词语以外的其他词语预测所述第二词语,以及根据所述原始语言类型标记预测所述除所述第二词语以外的其他词语的语言类型标记。

在一些实施例中,处理器702用于:基于所述预处理后的至少一个训练数据以及预设语言类型标记,将所述预处理后的至少一个训练数据翻译为与所述预设语言类型标记对应的译文。

在一些实施例中,所述第一执行结果用于指示基于所述至少一个训练数据训练所述初始翻译模型执行掩码处理任务后输出的目标序列与真值序列之间的损失,所述第二执行结果用于指示基于所述至少一个训练数据训练所述初始翻译模型执行翻译处理任务后输出的目标译文与真值译文之间的损失。

在一些实施例中,所述初始翻译模型还包括译码器,处理器702用于:根据所述第一执行结果,对所述编码器的参数进行调整;根据所述第二执行结果,对所述编码器的参数和所述译码器的参数进行调整,得到所述预设多语言翻译模型。

在一些实施例中,所述第一翻译指令还包括目标语言类型标记,所述目标语言类型标记用于指示所述预设多语言翻译模型将文本翻译成与所述目标语言类型标记对应的译文。

存储器701可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器701可以存储程序,当存储器701中存储的程序被处理器702执行时,处理器702用于执行上述实施例中所示的方法的各个步骤。

处理器702可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例中所示的各个方法。

处理器702还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的方法的各个步骤可以通过处理器702中的硬件的集成逻辑电路或者软件形式的指令完成。

上述处理器702还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、ASIC、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器701,处理器702读取存储器701中的信息,结合其硬件完成本申请装置包括的单元所需执行的功能。

通信接口703可以使用但不限于收发器一类的收发装置,来实现装置700与其他设备或通信网络之间的通信。

总线704可以包括在装置700各个部件(例如,存储器701、处理器702、通信接口703)之间传送信息的通路。

应理解,本申请实施例所示的装置700可以是电子设备,或者,也可以是配置于电子设备中的芯片。

应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

技术分类

06120115921014