机器翻译方法及装置与流程

文档序号:16068496发布日期:2018-11-24 12:54阅读:314来源:国知局

本发明涉及基于深度学习的数据处理技术领域,具体而言,涉及一种机器翻译方法及装置。

背景技术

在利用机器实现语言翻译的技术领域中,从最初完全基于靠人编纂的规则的机器翻译方法,到现在的神经机器翻译(neuralmachinetranslation,nmt),深度学习技术与自然语言处理(naturallanguageprocessing,nlp)结合是实现机器翻译的常用手段。而在现有的nmt技术中,训练复杂度高,可解释性差。例如,在现有技术中,一个翻译模型通常只能对两种固定的语种进行翻译,若需要对其他语种进行翻译或将待翻译语料翻译为其他语种,需要单独建立两种语种对应的翻译模型,从而增加了系统的复杂度以及系统运算资源的消耗。



技术实现要素:

为了克服上述现有技术中的不足,本发明提供一种机器翻译方法及装置。

为了实现上述目的,本发明实施例所提供的技术方案如下所示:

本发明实施例提供一种机器翻译方法,所述方法包括:

获得待翻译语料,并将所述待翻译语料输入训练后的翻译模型;

将所述待翻译语料转换为中间语料向量;

将所述中间语料向量转换为与预设语种对应的目标语料,其中,所述预设语种与所述待翻译语料对应的语种不同。

可选地,上述获得待翻译语料的步骤之前,所述方法包括:

获取训练语料库,包括多条训练语料;

针对每条所述训练语料,将所述训练语料中的每个字和/或词转换为词向量,每个所述词向量预先关联有与至少一类所述预设语种对应的字或词;

使用所述训练语料库,采用深度学习算法对预设翻译模型进行训练,得到所述训练后的翻译模型。

可选地,上述将所述待翻译语料转换为中间语料向量的步骤,包括:

将所述待翻译语料中的字和/或词转换为相应的待翻译词向量,将各个所述待翻译词向量进行组合得到所述中间语料向量。

可选地,上述将所述中间语料向量转换为与预设语种对应的目标语料的步骤,包括:

将所述待翻译词向量与所述训练后的翻译模型中的词向量进行匹配,得到所述待翻译词向量与所述词向量的相似度;

将所述训练语料库中相似度最大的词向量在所述预设语种中所关联的字或词作为所述待翻译词向量在所述预设语种中对应的字或词;

将每个所述待翻译词向量所对应的字或词进行排列组合,得到所述目标语料。

可选地,上述将每个所述待翻译词向量所对应的字或词进行组合,得到所述目标语料的步骤,包括:

对每个所述待翻译词向量所对应的字或词根据所述预设语种的预设规则进行排序组合,得到所述目标语料。

本发明实施例还提供一种机器翻译装置,所述机器翻译装置包括:

获得单元,用于获得待翻译语料,并将所述待翻译语料输入训练后的翻译模型;

第一转换单元,用于将所述待翻译语料转换为中间语料向量;

第二转换单元,用于将所述中间语料向量转换为与预设语种对应的目标语料,其中,所述预设语种与所述待翻译语料对应的语种不同。

可选地,上述机器翻译装置还包括第三转换单元及模型训练单元,在所述获得单元获得待翻译语料之前,所述获得单元,还用于获取训练语料库,包括多条训练语料;

所述第三转换单元,用于针对每条所述训练语料,将所述训练语料中的每个字和/或词转换为词向量,每个所述词向量预先关联有与至少一类所述预设语种对应的字或词;

所述模型训练单元,用于使用所述训练语料库,采用深度学习算法对预设翻译模型进行训练,得到所述训练后的翻译模型。

可选地,上述第一转换单元还用于:

将所述待翻译语料中的字和/或词转换为相应的待翻译词向量,将各个所述待翻译词向量进行组合得到所述中间语料向量。

可选地,上述第二转换单元还用于:

将所述待翻译词向量与所述训练后的翻译模型中的词向量进行匹配,得到所述待翻译词向量与所述词向量的相似度;

将所述训练语料库中相似度最大的词向量在所述预设语种中所关联的字或词作为所述待翻译词向量在所述预设语种中对应的字或词;

将每个所述待翻译词向量所对应的字或词进行排列组合,得到所述目标语料。

可选地,上述第二转换单元还用于:

对每个所述待翻译词向量所对应的字或词根据所述预设语种的预设规则进行排序组合,得到所述目标语料。

相对于现有技术而言,本发明提供的机器翻译方法及装置,通过将获得的待翻译语料转换为中间语料向量,然后将中间语料向量转换为与预设语种对应的目标语料,一方面有助于简化构建多语种之间的翻译模型,降低系统的复杂度,另一方面可降低系统在翻译过程中运算资源的消耗。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的电子设备的方框示意图。

图2为本发明实施例提供的机器翻译方法的流程示意图之一。

图3为本实施例提供的语种翻译的示意图。

图4为本发明实施例提供的机器翻译方法的流程示意图之二。

图5为本发明实施例提供的机器翻译装置的方框示意图。

图标:10-电子设备;11-处理单元;12-存储单元;100-机器翻译装置;110-获得单元;120-第一转换单元;130-第二转换单元。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

请参照图1,为本发明实施例提供的电子设备10的方框示意图。本发明实施例提供的电子设备10可以用于执行机器翻译方法的各步骤。比如,该电子设备10可以用于将汉语语种的文档翻译成英语语种的文档。

在本实施例中,电子设备10可以是,但不限于,智能手机、个人电脑(personalcomputer,pc)、平板电脑、个人数字助理(personaldigitalassistant,pda)、移动上网设备(mobileinternetdevice,mid)等。

在本实施例中,电子设备10可以包括处理单元11、存储单元12以及机器翻译装置100,处理单元11、存储单元12以及机器翻译装置100各个元件之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

处理单元11可以是处理器。例如,该处理器可以是中央处理器(centralprocessingunit,cpu)、图形处理器(graphicsprocessingunit,gpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。

存储单元12可以是,但不限于,随机存取存储器,只读存储器,可编程只读存储器,可擦除可编程只读存储器,电可擦除可编程只读存储器等。在本实施例中,存储单元12可以用于存储翻译模型。当然,存储单元12还可以用于存储程序,处理单元11在接收到执行指令后,执行该程序。

可选地,电子设备10可以包括通信单元,通信单元用于通过网络建立电子设备10与服务器的通信连接,并通过网络收发数据。网络可以是,但不限于,有线网络或无线网络。服务器可以用于存储翻译模型,用于从电子设备10接收待翻译语料,并对待翻译语料翻译成目标语料输出至电子设备10。

进一步地,机器翻译装置100包括至少一个可以软件或固件(firmware)的形式存储于存储单元12中或固化在电子设备10操作系统(operatingsystem,os)中的软件功能模块。处理单元11用于执行存储单元12中存储的可执行模块,例如机器翻译装置100所包括的软件功能模块及计算机程序等。

可以理解的是,图1所示的结构仅为电子设备10的一种结构示意图,电子设备10还可以包括比图1所示更多的组件。图1中所示的各组件可以采用硬件、软件或其组合实现。

请参照图2,为本发明实施例提供的机器翻译方法的流程示意图之一。本发明提供的机器翻译方法可以应用于上述的电子设备10,由该电子设备10执行机器翻译方法的各步骤。其中,该电子设备10可以预先存储预设翻译模型。

下面将对图2中所示的机器翻译方法的各步骤进行详细阐述,在本实施例中,机器翻译方法可以包括以下步骤:

步骤s210,获得待翻译语料,并将待翻译语料输入训练后的翻译模型;

在本实施例中,待翻译语料可理解为文字形式的资料,具有相应的语种。该语种可基于文字确定,比如待翻译语料可以为汉语语种、英语语种、俄语语种等,这里不作具体限定。

在本实施例中,训练后的翻译模型可理解为:存储于电子设备10中的预设翻译模型通过深度学习算法进行训练后所得到的翻译模型。

步骤s220,将待翻译语料转换为中间语料向量;

在本实施例中,待翻译语料可通过翻译模型转换成中间语料向量。其中,中间语料向量可理解为待翻译语料中的字、词对应的词向量的组合,词向量可理解为待翻译语料中的字、词在标准语种中的意思。其中,标准语种可以根据实际情况进行设置,比如为汉语语种或者单独构建的一种新语种,这里不作具体限定。

可选地,步骤s220可以包括:将待翻译语料中的字和/或词转换为相应的待翻译词向量,将各个待翻译词向量进行组合得到中间语料向量。

可理解地,步骤s220可以对待翻译语料中的字词进行分解,得到相应字词与字词在标准语中的意思的映射关系,该映射关系便可理解为待翻译词向量,然后对待翻译词向量根据待翻译语料的所表达的含义进行组合可得到中间语料向量,也就是中间语料可表示待翻译语料在标准语种中的含义。其中,步骤s220可以为将待翻译语料中的字和词转换为相应的待翻译词向量,或者将待翻译语料中的字或词转换为相应的待翻译词向量,然后将各个待翻译词向量进行组合得到中间语料向量。

步骤s230,将中间语料向量转换为与预设语种对应的目标语料,其中,预设语种与待翻译语料对应的语种不同。

在本实施例中,预设语种便为目标语料的语种。比如,需要将英语翻译成汉语,那么汉语便为预设语种。其中,预设语种可根据实际情况进行设置,例如可以为汉语、英语、日语、韩语等语种,且预设语种与目标语料的语种不同。

可选地,步骤s230可以包括:将待翻译词向量与训练后的翻译模型中的词向量进行匹配,得到待翻译词向量与词向量的相似度;将训练语料库中相似度最大的词向量在预设语种中所关联的字或词作为待翻译词向量在预设语种中对应的字或词;将每个待翻译词向量所对应的字或词进行排列组合,得到目标语料。其中,选取相似度最大的词向量有助于提高翻译的精准度,另外,对字词的组合过程中,可依据待翻译语料在标准语种中的含义进行组合。

可选地,将每个待翻译词向量所对应的字或词进行组合,得到目标语料的步骤,可以包括:对每个待翻译词向量所对应的字或词根据预设语种的预设规则进行排序组合,得到目标语料。比如,若将英语转换为汉语,可将英语中对应的汉字词根据汉语语法进行组合。

为了便于对本方案的理解,下面将对本方案的步骤s220及步骤s230进行举例阐述:

请参照图3为本实施例提供的语种翻译的示意图,其中,左侧的语种可理解为待翻译语料的语种,右侧的语种可理解为预设语种。例如,待翻译语料为“didyouhavelunch?”,若标准语种为汉语语种,且需要将该待翻译语料翻译为汉语语种(即预设语种)的目标语料。那么,待翻译语料中的“you”在标准语种中对应含义的字便为“你”或者“你们”,“did…havelunch?”在标准语种中对应含义的词便为“吃过午饭了吗?”,“didyouhavelunch?”对应标准语种的标准语(即目标语料)便可以为“你吃过午饭了吗?”,对应的汉语语种的目标语料也就是“你吃过午饭了吗?”。若需要将待翻译语料翻译为韩语,则可基于预先训练的中间语料向量与韩语的字词的对应关系,可得到待翻译语料翻译成韩语后的语料为基于此,在多类语种相互翻译的场景中,在构建翻译模型时,只需训练待翻译语料与中间语料向量的对应关系,以及训练中间语料向量与各预设语种对应的模型即可。与现有技术需要针对待翻译语料的语种与各预设语种进行训练相比,本发明提供的方法可简化模型训练的步骤,另外训练的数据更少,有助于降低电子设备10的内存占用,以及运行系统的运算资源。

请参照图4,为本发明实施例提供的机器翻译方法的流程示意图之二。在本实施例中,在步骤s210之前,机器翻译方法还可以包括对预设翻译模型进行训练的步骤,例如,机器翻译方法还可以包括步骤s240、步骤s250及步骤s260。

步骤s240,获取训练语料库,包括多条训练语料。

在本实施例中,训练语料库可以包括多个国家语言的字、词,也就是训练语料库可以包括多类语种对应的语料。每类语种包括多条语料以作为训练语料。其中,训练语料的数量及语种的数量可根据实际情况进行设置,这不作具体限定。

步骤s250,针对每条训练语料,将训练语料中的每个字和/或词转换为词向量,每个词向量预先关联有与至少一类预设语种对应的字或词。

可理解地,若训练语料为一句完整的话,步骤s250便为对完整的话分解成字词组成的话;然后可将字词的意思对映射到标准语种中相应意思的字词从而形成词向量。每个标准语种中的词向量与预设语种中的一个词或多个词相关联。比如,可基于词频对预设语种中的词设置相应的权重,词频较高的字词可以优先作为词向量对应的字词。

在本实施例中,针对每条训练语料,将训练语料中的每个字和词转换为词向量,或者将训练语料中的每个字或词转换为词向量。

步骤s260,使用训练语料库,采用深度学习算法对预设翻译模型进行训练,得到训练后的翻译模型。

在本实施例中,预设翻译模型通过训练,可得到训练语料与词向量的对应关系,以及词向量与预设语种中的字词的对应关系。基于训练得到的对应关系,当待翻译语料输入训练后的翻译模型中后,该翻译模型便可对待翻译语料进行解析,得到中间语料向量中待翻译词向量与字词的对应关系,可根据中间语料向量得到对应的字词,最后对得到的字词进行上述的组合得到目标语料。

可选地,深度学习算法可以是,但不限于卷积神经网络算法、循环神经网络算法、深度神经网络算法等,这里不作具体限定。

基于上述设计,在面对多语种之间相互翻译的情景,本方案可减少翻译模型的训练数据,简化构建翻译模型的步骤,有助于降低训练后的模型在电子设备10中的内存占用量,从而有利于降低对系统资源的消耗。

请参照图5,为本发明实施例提供的机器翻译装置100的方框示意图。该机器翻译装置100可以应用于上述的电子设备10,用于执行上述机器翻译方法的各步骤。在本实施例中,机器翻译装置100可以包括获得单元110、第一转换单元120及第二转换单元130。

获得单元110,用于获得待翻译语料,并将待翻译语料输入训练后的翻译模型。在本实施例中,获得单元110可以用于执行如图2所示的步骤s210,具体执行的操作内容可参照对步骤s210的详细描述。

第一转换单元120,用于将待翻译语料转换为中间语料向量。在本实施例中,第一转换单元120可以用于执行如图2所示的步骤s220,具体执行的操作内容可参照对步骤s220的详细描述。

第二转换单元130,用于将中间语料向量转换为与预设语种对应的目标语料,其中,预设语种与待翻译语料对应的语种不同。在本实施例中,第二转换单元130可以用于执行如图2所示的步骤s230,具体执行的操作内容可参照对步骤s230的详细描述。

可选地,机器翻译装置100还包括第三转换单元及模型训练单元,在获得单元110获得待翻译语料之前,获得单元110,还用于获取训练语料库,包括多条训练语料。在本实施例中,获得单元110可以用于执行如图4所示的步骤s240,具体执行的操作内容可参照对步骤s240的详细描述。

第三转换单元,用于针对每条训练语料,将训练语料中的每个字和/或词转换为词向量,每个词向量预先关联有与至少一类预设语种对应的字或词。在本实施例中,第三转换单元可以用于执行如图4所示的步骤s250,具体执行的操作内容可参照对步骤s250的详细描述。

模型训练单元,用于使用训练语料库,采用深度学习算法对预设翻译模型进行训练,得到训练后的翻译模型。在本实施例中,模型训练单元可以用于执行如图4所示的步骤s260,具体执行的操作内容可参照对步骤s260的详细描述。

可选地,第一转换单元120还用于:将待翻译语料中的字和/或词转换为相应的待翻译词向量,将各个待翻译词向量进行组合得到中间语料向量。

可选地,第二转换单元130还用于:将待翻译词向量与训练后的翻译模型中的词向量进行匹配,得到待翻译词向量与词向量的相似度;将训练语料库中相似度最大的词向量在预设语种中所关联的字或词作为待翻译词向量在预设语种中对应的字或词;将每个待翻译词向量所对应的字或词进行排列组合,得到目标语料。

可选地,第二转换单元130还用于:对每个待翻译词向量所对应的字或词根据预设语种的预设规则进行排序组合,得到目标语料。

综上所述,本发明提供一种机器翻译方法及装置。该方法可以包括:获得待翻译语料,并将所述待翻译语料输入训练后的翻译模型;将所述待翻译语料转换为中间语料向量;将所述中间语料向量转换为与预设语种对应的目标语料,其中,所述预设语种与所述待翻译语料对应的语种不同。本发明提供的机器翻译方法及装置,通过将获得的待翻译语料转换为中间语料向量,然后将中间语料向量转换为与预设语种对应的目标语料,一方面有助于简化构建多语种之间的翻译模型,降低系统的复杂度,另一方面可降低系统运算资源的消耗。

在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

可以替换的,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1