CN113239708B - 一种模型训练的方法、翻译的方法以及装置 - Google Patents
一种模型训练的方法、翻译的方法以及装置 Download PDFInfo
- Publication number
- CN113239708B CN113239708B CN202110466719.4A CN202110466719A CN113239708B CN 113239708 B CN113239708 B CN 113239708B CN 202110466719 A CN202110466719 A CN 202110466719A CN 113239708 B CN113239708 B CN 113239708B
- Authority
- CN
- China
- Prior art keywords
- corpus
- word vector
- plm
- language
- parameters
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请涉及人工智能领域,公开了一种模型训练的方法、翻译方法以及装置,其中,模型训练的方法包括:利用第一单语语料对模型进行训练,以获取第一PLM,利用第二单语语料对模型进行训练,以获取第二PLM。基于第一PLM获取第一翻译模型的词向量参数。利用高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,根据训练后的第一翻译模型和第二PLM获取第二翻译模型,利用低资源平行语料对第二翻译模型进行训练,以获取训练后的第二翻译模型。本申请提供的方案在训练模型的阶段,同时利用到高资源平行语料、低资源平行语料、第一单语语料和第二单语语料,使训练后的模型在低资源场景下,也具有很好的翻译效果。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及一种模型训练的方法、翻译的方法以及装置。
背景技术
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
随着AI技术的发展,神经机器翻译(neural machine translation,NMT)模型被广泛应用到日常生活中。NMT模型的训练需要大量的平行语料,因此,NMT模型的顺利运作往往局限于高资源场景,高资源场景是指平行语料丰富的场景,例如,通过NMT模型将英文文献资料翻译成中文文献资料。但是,实际应用中的许多场景是低资源场景,低资源场景是指平行语料缺乏的场景,例如,通过NMT模型对小语种、特定领域(如医学领域、法学领域)的文献等进行翻译。在低资源场景下,NMT模型翻译的效果往往会明显下降,因此,提升NMT模型在低资源场景下的翻译效果亟待解决。
发明内容
本申请实施例提供一种模型训练的方法、翻译方法以及装置,提升NMT模型在低资源场景下的翻译效果。
为达到上述目的,本申请实施例提供如下技术方案:
第一方面,由于低资源平行语料难以获取,只通过少量的低资源平行语料作为训练数据,难以使训练后的模型的编码器的词向量参数准确的表示输入的低资源语料的词向量,难以使训练后的模型的解码器的词向量参数准确的表示输出的低资源目标语料的词向量。为了达到这一目的,本申请实施例提供一种模型训练的方法,借助第一单语语料和第二单语语料,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同。方法包括:获取第一预训练语言模型(pretrained language model,PLM)的词向量参数和第二PLM的词向量参数,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第一PLM的词向量参数所在的向量空间和第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内。相比于低资源平行语料,第二单语语料更容易获取,比如,低资源平行语料是德语英语语言对,该低资源平行语料的源语料是德语文本,目标语料是该德语文本的英语译文文本,第二单语语料可以是德语文本,第二单语语料还可以是英语文本,相比于获取德语英语语言对,获取单一的语料是更容易的,即获取单一的德语文本,单一的英文文本是更容易的。因此,本申请提供的方案首先想到可以通过第二单语语料对PLM进行训练,训练后的PLM中的词向量参数可以作为第二翻译模型的编码器的词向量参数,或者作为第二翻译模型的解码器的词向量参数。但是通常情况下,第二单语语料也不足够丰富,本申请提供的方案进一步想到可以借助丰富的第一单语语料。通过第一单语语料对第一PLM进行训练,并使训练后的第二PLM的词向量参数所在的向量空间和训练后的第一PLM的词向量参数所在的向量空间之间的偏差在预设范围内。在这种方式中,同时借助了第一单语语料和第二单语语料,使训练后的第二PLM的词向量参数能更准确的表示第二单语语料的词向量,进而可以更准确的表示低资源平行语料的源语料的词向量,以及更准确的表示低资源目标语料的词向量。然后,固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,第一翻译模型的词向量参数是基于第一PLM中的词向量参数获取的。基于低资源平行语料,对第二翻译模型进行训练,以获取训练后的第二翻译模型,第二翻译模型的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的。可以通过第一PLM的词向量参数对第一翻译模型的编码器的词向量参数进行初始化,或者通过第一PLM的词向量参数对第一翻译模型的解码器的词向量参数进行初始化。通过高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。使第二翻译模型中除编码器词向量参数和解码器词向量参数之外的其他参数,和训练后的第一翻译模型中除词向量参数之外的其他参数是相同的,进而使第二翻译模型可以利用训练后的第一翻译模型学习到的如何进行翻译的知识。
在第一方面的一种可能实现方式中,在高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的,固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,包括:固定第一翻译模型的解码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。在这种实施方式中,高资源平行语料的源语料和低资源平行语料的源语料是共享的,所谓的共享是指高资源平行语料的源语料和低资源平行语料的源语料采用的语言是相同的,并且高资源平行语料和低资源平行语料是来自相同领域的数据。在这种情况下,给出了一种具体的训练方案。在这种实施方式中,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数(在这种实施方式中,除解码器的词向量参数之外的其他参数包括第二翻译模型的编码器的词向量参数),是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的。
在第一方面的一种可能实现方式中,在高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取的,固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,包括:固定第一翻译模型的编码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。在这种实施方式中,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数(在这种实施方式中,除解码器的词向量参数之外的其他参数包括第二翻译模型的解码器的词向量参数),是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的。
在第一方面的一种可能实现方式中,第一PLM包括第一类型的第一PLM和第二类型的第一PLM,第二PLM包括第一类型的第二PLM和第二类型的第二PLM,第一类型的第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二类型的第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第一类型的第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二类型的第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第一类型的第一PLM的词向量参数所在的向量空间和第一类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二类型的第一PLM的词向量参数所在的向量空间和第二类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二翻译模型的编码器的词向量参数是基于第一类型的第二PLM的词向量参数获取的,第二翻译模型的解码器的词向量参数是基于第二类型的第二PLM的词向量参数获取的,固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,包括:固定第一翻译模型的解码器的词向量参数和编码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,第一翻译模型的编码器的词向量参数是基于第一类型的第一PLM中的词向量参数获取的,第一翻译模型的解码器的词向量参数是基于第二类型的第一PLM中的词向量参数获取的。在这种实施方式中,不论高资源平行语料的源语料和低资源平行语料的源语料是否是共享的,高资源平行语料的目标语料和低资源平行语料的目标语料是否是共享的,都可以参照这种实施方式执行训练过程。
在第一方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据。
在第一方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,并且高资源平行语料和低资源平行语料是来自不相同领域的数据。
在第一方面的一种可能实现方式中,第一类型的第一PLM是基于与高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的源语料采用的语言相同的第二单语语料,对初始的第一类型的第二PLM进行训练后获取的,初始的第一类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。在这种实施方式中,给出了一种具体实施方式,使第一PLM的词向量空间和第二PLM的词向量空间是接近的。
在第一方面的一种可能实现方式中,第二类型的第一PLM是基于与高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的目标语料采用的语言相同的第二单语语料,对初始的第二类型的第二PLM进行训练后获取的,初始的第二类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。在这种实施方式中,给出了一种具体的实现方式,使第一PLM的词向量空间和第二PLM的词向量空间是接近。
在第一方面的一种可能实现方式中,在高资源平行语料的源语料采用至少两种语言,高资源平行语料的源语料采用的至少两种语言和高资源平行语料的目标语料采用的语言相同,低资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用的至少两种语言和低资源平行语料的目标语料采用的语言相同的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于第二PLM的词向量参数获取的,固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,包括:固定第一翻译模型的解码器的词向量参数和第一翻译模型的编码器的词向量,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。在这种实施方式中,使训练后的第二翻译模型是一个双向互译模型,即第二翻译模型允许输入是多种不同的语言,对应的输出也可以是多种不同的语言。
本申请第二方面提供一种机器翻译的方法,包括:获取待翻译语句。通过目标翻译模型对待翻译语句进行翻译,以获取翻译结果,目标翻译模型是基于低资源平行语料对第二翻译模型进行训练后获取的,第二翻译模型的词向量参数是基于第二预训练语言模型PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第二PLM的词向量参数所在的向量空间和第一PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,训练后的第一翻译模型是固定第一翻译模型的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的词向量参数是基于第一PLM中的词向量参数获取的。由第二方面可知,通过第一方面训练得到的翻译模型来执行翻译任务,由于该翻译模型在训练阶段利用了多种数据作为辅助数据,使训练后的翻译模型针对低资源的场景,也有很好的翻译效果,比如针对小语种的翻译或者针对特定领域文献的翻译都要很好的效果。
在第二方面的一种可能实现方式中,在高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
在第二方面的一种可能实现方式中,在高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取的,第一翻译模型是在固定第一翻译模型的编码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
在第二方面的一种可能实现方式中,第一PLM包括第一类型的第一PLM和第二类型的第一PLM,第二PLM包括第一类型的第二PLM和第二类型的第二PLM,第一类型的第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二类型的第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第一类型的第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二类型的第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第一类型的第一PLM的词向量参数所在的向量空间和第一类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二类型的第一PLM的词向量参数所在的向量空间和第二类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二翻译模型的编码器的词向量参数是基于第一类型的第二PLM的词向量参数获取的,第二翻译模型的解码器的词向量参数是基于第二类型的第二PLM的词向量参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数和编码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的编码器的词向量参数是基于第一类型的第一PLM中的词向量参数获取的,第一翻译模型的解码器的词向量参数是基于第二类型的第一PLM中的词向量参数获取的。
在第二方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据。
在第二方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,并且高资源平行语料和低资源平行语料是来自不相同领域的数据。
在第二方面的一种可能实现方式中,第一类型的第一PLM是基于与高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的源语料采用的语言相同的第二单语语料,对初始的第一类型的第二PLM进行训练后获取的,初始的第一类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在第二方面的一种可能实现方式中,第二类型的第一PLM是基于与高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的目标语料采用的语言相同的第二单语语料,对初始的第二类型的第二PLM进行训练后获取的,初始的第二类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在第二方面的一种可能实现方式中,在高资源平行语料的源语料采用至少两种语言,高资源平行语料的源语料采用的至少两种语言和高资源平行语料的目标语料采用的语言相同,低资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用的至少两种语言和低资源平行语料的目标语料采用的语言相同的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于第二PLM的词向量参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数和第一翻译模型的编码器的词向量的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
本申请第三方面提供一种模型训练的装置,包括:第一训练模块,用于获取第一预训练语言模型PLM的词向量参数和第二PLM的词向量参数,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第一PLM的词向量参数所在的向量空间和第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同。第二训练模块,用于固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,第一翻译模型的词向量参数是基于第一训练模块获取的第一PLM中的词向量参数获取的。第三训练模块,用于基于低资源平行语料,对第二翻译模型进行训练,以获取训练后的第二翻译模型,第二翻译模型的词向量参数是基于第一训练模块获取的第二PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于第二训练模块获取的训练后的第一翻译模型中除词向量参数之外的其他参数获取的。
在第三方面的一种可能实现方式中,在高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的,第二训练模块,具体用于:固定第一翻译模型的解码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。
在第三方面的一种可能实现方式中,在高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取的,第二训练模块,具体用于:固定第一翻译模型的编码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。
在第三方面的一种可能实现方式中,第一PLM包括第一类型的第一PLM和第二类型的第一PLM,第二PLM包括第一类型的第二PLM和第二类型的第二PLM,第一类型的第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二类型的第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第一类型的第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二类型的第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第一类型的第一PLM的词向量参数所在的向量空间和第一类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二类型的第一PLM的词向量参数所在的向量空间和第二类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二翻译模型的编码器的词向量参数是基于第一类型的第二PLM的词向量参数获取的,第二翻译模型的解码器的词向量参数是基于第二类型的第二PLM的词向量参数获取的,第二训练模块,具体用于:固定第一翻译模型的解码器的词向量参数和编码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,第一翻译模型的编码器的词向量参数是基于第一类型的第一PLM中的词向量参数获取的,第一翻译模型的解码器的词向量参数是基于第二类型的第一PLM中的词向量参数获取的。
在第三方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据。
在第三方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,并且高资源平行语料和低资源平行语料是来自不相同领域的数据。
在第三方面的一种可能实现方式中,第一类型的第一PLM是基于与高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的源语料采用的语言相同的第二单语语料,对初始的第一类型的第二PLM进行训练后获取的,初始的第一类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在第三方面的一种可能实现方式中,第二类型的第一PLM是基于与高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的目标语料采用的语言相同的第二单语语料,对初始的第二类型的第二PLM进行训练后获取的,初始的第二类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在第三方面的一种可能实现方式中,在高资源平行语料的源语料采用至少两种语言,高资源平行语料的源语料采用的至少两种语言和高资源平行语料的目标语料采用的语言相同,低资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用的至少两种语言和低资源平行语料的目标语料采用的语言相同的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于第二PLM的词向量参数获取的,第二训练模块,具体用于:固定第一翻译模型的解码器的词向量参数和第一翻译模型的编码器的词向量,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。
本申请第四方面提供一种翻译装置,包括:获取模块,用于获取待翻译语句。翻译模块,用于通过目标翻译模型对获取模块获取的待翻译语句进行翻译,以获取翻译结果,目标翻译模型是基于低资源平行语料对第二翻译模型进行训练后获取的,第二翻译模型的词向量参数是基于第二预训练语言模型PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第二PLM的词向量参数所在的向量空间和第一PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,训练后的第一翻译模型是固定第一翻译模型的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的词向量参数是基于第一PLM中的词向量参数获取的。
在第四方面的一种可能实现方式中,在高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
在第四方面的一种可能实现方式中,在高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取的,第一翻译模型是在固定第一翻译模型的编码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
在第四方面的一种可能实现方式中,第一PLM包括第一类型的第一PLM和第二类型的第一PLM,第二PLM包括第一类型的第二PLM和第二类型的第二PLM,第一类型的第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二类型的第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第一类型的第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二类型的第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第一类型的第一PLM的词向量参数所在的向量空间和第一类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二类型的第一PLM的词向量参数所在的向量空间和第二类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二翻译模型的编码器的词向量参数是基于第一类型的第二PLM的词向量参数获取的,第二翻译模型的解码器的词向量参数是基于第二类型的第二PLM的词向量参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数和编码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的编码器的词向量参数是基于第一类型的第一PLM中的词向量参数获取的,第一翻译模型的解码器的词向量参数是基于第二类型的第一PLM中的词向量参数获取的。
在第四方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据。
在第四方面的一种可能实现方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,并且高资源平行语料和低资源平行语料是来自不相同领域的数据。
在第四方面的一种可能实现方式中,第一类型的第一PLM是基于与高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的源语料采用的语言相同的第二单语语料,对初始的第一类型的第二PLM进行训练后获取的,初始的第一类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在第四方面的一种可能实现方式中,第二类型的第一PLM是基于与高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的目标语料采用的语言相同的第二单语语料,对初始的第二类型的第二PLM进行训练后获取的,初始的第二类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在第四方面的一种可能实现方式中,在高资源平行语料的源语料采用至少两种语言,高资源平行语料的源语料采用的至少两种语言和高资源平行语料的目标语料采用的语言相同,低资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用的至少两种语言和低资源平行语料的目标语料采用的语言相同的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于第二PLM的词向量参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数和第一翻译模型的编码器的词向量的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
本申请第五方面提供一种模型训练的装置,包括:存储器,用于存储计算机可读指令。还包括,与存储器耦合的处理器,用于执行存储器中的计算机可读指令从而执行如第一方面或第一方面任意一种可能的实施方式中所描述的方法。
本申请第六方面提供一种翻译装置,包括:存储器,用于存储计算机可读指令。还包括,与存储器耦合的处理器,用于执行存储器中的计算机可读指令从而执行如第二方面或第二方面任意一种可能的实施方式中所描述的方法。
本申请第七方面提供一种计算机可读存储介质,包括指令,当指令在计算机装置上运行时,使得计算机装置执行如第一方面或第一方面任意一种可能的实施方式中所描述的方法。
本申请第八方面一种计算机可读存储介质,包括指令,当指令在计算机装置上运行时,使得计算机装置执行如第二方面或第二方面任意一种可能的实施方式中所描述的方法。
本申请第九方面一种计算机程序产品,当在计算机上运行时,使得计算机可以执行如第一方面或第一方面任意一种可能的实施方式中所描述的方法。
本申请第十方面一种计算机程序产品,当在计算机上运行时,使得计算机可以执行如第二方面或第二方面任意一种可能的实施方式中所描述的方法。
本申请第十一方面一种芯片,芯片与存储器耦合,用于执行存储器中存储的程序,以执行如第一方面或第一方面任意一种可能的实施方式中所描述的方法。
本申请第十二方面一种芯片,芯片与存储器耦合,用于执行存储器中存储的程序,以执行如第二方面或第二方面任意一种可能的实施方式中所描述的方法。
第三方面、第五方面、第七方面、第九方面、第十一方面及其对应的实施方式所产生的有益效果可以参照第一方面以及对应的实施方式所产生的有益效果进行理解,这里不再重复赘述。
第四方面、第六方面、第八方面、第十方面、第十二方面及其对应的实施方式所产生的有益效果可以参照第二方面以及对应的实施方式所产生的有益效果进行理解,这里不再重复赘述。
附图说明
图1为本申请实施例提供的翻译系统的一种系统架构图;
图2为本申请实施例提供的翻译系统的另一种系统架构图;
图3为一种主流的NMT架构;
图4为本申请实施例提供的一种模型训练方法的流程示意图;
图5为本申请实施例提供的一种模型训练方法的示意图;
图6为本申请实施例提供的一种模型训练方法的流程示意图;
图7为本申请实施例提供的一种模型训练方法的流程示意图;
图8为本申请实施例提供的一种模型训练方法的流程示意图;
图9为本申请实施例提供的一种模型训练方法的流程示意图;
图10为本申请实施例提供的一种模型训练方法的流程示意图;
图11为本申请实施例提供的一种翻译方法的流程示意图;
图12为本申请实施例提供的一种计算机设备的结构示意图;
图13为本申请实施例提供的另一种计算机设备的结构示意图;
图14为本申请实施例提供的芯片的一种结构示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请提供一种模型训练的方法、翻译的方法以及装置。通过本申请提供的一种模型训练的方法得到的翻译模型,可以提升低资源场景下的翻译效果,比如可以提升小语种的翻译效果,特定领域(如医学领域、法学领域)的翻译效果。
为了便于理解本方案,先结合图1对本申请实施例提供的翻译系统进行介绍,请参阅图1,图1为本申请实施例提供的翻译系统的一种系统架构图,在图1中,翻译系统100包括执行设备110、训练设备120、数据库130和数据存储系统140。
在训练阶段,数据库130中存储有训练数据集合,训练数据集合中包括高资源平行语料,第一单语语料,低资源平行语料以及第二单语语料。其中,第一单语语料包括两种类型,一种类型的第一单语语料采用的语言和高资源平行语料的源语料采用的语言相同,另一种类型的第一单语语料采用的语言和高资源平行语料的目标语料采用的语言相同。此外,第一单语语料和高资源平行语料是来自同一领域的数据,以下对此不再重复强调。其中,第二单语语料也包括两种类型,一种类型的第二单语语料采用的语言和低资源平行语料的源语料采用的语言相同,另一种类型的第二单语语料采用的语言和低资源平行语料的目标语料采用的语言相同。此外,第二单语语料和低资源平行语料是来自同一领域的数据,以下对此不再重复强调。需要说明的是,在一些可能的情况下,高资源平行语料采用的语言和低资源平行语料采用的语言可能相同,比如高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,在这些情况下,第一单语语料和第二单语语料采用的语言可能是相同的。此外,本申请对训练数据集合中的语料的具体表现方式并不进行限定,比如可以通过文本的方式表示,还可以通过语音的方式表示,再比如还可以通过图像的方式表示。本申请实施例对训练数据集合中的语料的具体表示方式并不进行限定。在一个可能的实施方式中,若输入只能是文本方式表示的训练语句,还可以对语音方式表示的训练语句进行语音识别处理,以转换为文本方式表示的训练语句,还可以对图像方式表示的训练语句进行图像识别处理,以转换为文本方式表示的训练语句。
平行语料,是指由原文文本及其平行对应的译语文本构成的双语或多语语料。比如原文文本是“这次旅行需要认真计划”,与其平行对应的英文文本为“The trip needscareful planning”,则“这次旅行需要认真计划”和“The trip needs careful planning”可以看做一组平行语料,该组平行语料是中英平行语言对,可以将原文文本“这次旅行需要认真计划”看做该组平行语料的源语料,将译文文本“The trip needs careful planning”看做该组平行语料的目标语料。“这次旅行需要认真计划”可以看做一个第一单语语料,“The trip needs careful planning”也可以都看做一个第一单语语料。高资源平行语料包括的平行语料比较丰富,换句话说,高资源平行语料比较容易获取,比如新闻资讯类的平行语料,文献资料的平行语料,中文英文平行语言对等等。实际上,高资源平行语料常常只存在于少量的几种语言之间,并且往往受限于某些特定的领域(比如政府文件、新闻等)。除了这些特定的领域之外,有些语言本身就资源缺乏(比如小语种),难以从互联网上找到或者获取可用的平行语料。为了和高资源平行语料进行区分,本申请将这些难以获取的平行语料称为低资源平行语料。示例性的,这里给出几种常见的低资源平行语料,比如小语种的平行语料(朝鲜语泰语平行语言对,越南语德语平行语言对等等);再比如特定领域的语料,比如医学领域的平行语料,法律领域的平行语料。性能优秀的MMT模型需要依赖大量的平行语料,而本申请提供的方案借助高资源平行语料、第一单语语料以及第二单语语料,使得即使采用少量的低资源平行语料,也可以获取性能优秀的MMT模型,使训练后的MMT模型在低资源场景下,也有很好的翻译效果。
需要说明的是,数据库130具体可以表现为任意形式的存储介质,不限定为传统意义上的数据库。
训练设备120生成MMT模型101,并利用数据库130中的训练数据集合对MMT模型101进行迭代训练,得到成熟的MMT模型101。关于具体的训练设备120如何利用数据库130中训练数据集合对MMT模型101进行迭代训练,将在下文展开介绍。
在推理阶段,执行设备110可以调用数据存储系统140中的数据、代码等,也可以将数据、指令等存入数据存储系统140中。数据存储系统140可以配置于执行设备110中,也可以为执行设备110外部的存储器。执行设备110可以调用成熟的MMT模型101执行翻译任务。
本申请的一些实施例中,例如图1中,“用户”可以直接与执行设备110进行交互,也即执行设备110与客户设备集成于同一设备中。作为示例,在一些应用场景中,执行设备110可以表现为翻译设备(可以是不同的智能终端:比如手机、电脑),则在推理阶段,执行设备110在选取到成熟的NMT模型之后,可以根据执行设备110的指示,执行翻译任务,其中,执行设备110的指示可以通过用户的指令获取,也可以通过存储在数据存储系统140中的代码获取。在另一些应用场景中,执行设备110具体可以表现为配置有显示屏的执行设备,则在推理阶段,执行设备110在完成一个任务获取多个任务之后,可以向用户展示翻译结果,比如展示部分翻译结果或者完整的翻译结果等,执行设备110还可以表现为其它形态,此处不一一进行列举,但图1仅是本发明实施例提供翻译系统的架构示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。
在本申请的另一些实施例中,执行设备110和客户设备可以为分别独立的设备,执行设备110配置有输入/输出接口,与客户设备进行数据交互,“用户”可以通过客户设备的输入/输出接口向执行设备110输入至少一个任务,执行设备110通过输入/输出接口将处理结果返回给客户设备。
在本申请的一些实施例中,数据库130中存储的训练数据集合可以通过数据采集设备获取,或者数据库130可以部署在数据采集设备上。请参阅图2,图2为本申请实施例提供的翻译系统的另一种系统架构图。在图2中,翻译系统200包括数据采集设备210,训练设备220以及执行设备230。每个数据采集设备210可以通过多种途径获取一种或者多种训练数据。比如通过人工手动输入第一单语语料或者第二单语语料或者平行语料至数据采集设备;再比如数据采集设备210通过网络查找的方式获取第一单语语料或者第二单语语料或者平行语料。例如,可以从专业领域的相关网站上直接获取专业电子字典,该专业电子字典中包括大量的专业平行语料。各个数据采集设备210可以将获取到的训练数据传输至训练设备220,训练设备220可以参照图1中的训练设备120进行理解。训练后的MMT模型可以部署到执行设备230中,执行设备230可以参照图1中的执行设备110进行理解。需要说明的是,在一些实施例中,数据采集设备210以及训练设备220执行的动作/任务可以直接由执行设备110完成。
图1对翻译系统进行了介绍,为了更好的理解本申请提供的方案,下面再对翻译模型的工作原理进行介绍,本申请也将翻译模型称为MMT模型,二者表示相同的意思。参阅图2,为一种NMT模型的架构示意图。如图2所示,一般地,NMT的结构包括编码器(encoder)和解码器(decoder)。编码器对待翻译的源语句进行编码(本申请有时也将源语句称为源语料,二者表示相同的意思)生成向量,解码器对源语句的向量进行解码生成对应的目标语句。其中编码和解码的过程可以通过卷积神经网络(convolutional neural networks,CNN)模型或循环神经网络(recurrent neural networks,RNN)模型实现。可以将NMT看做一个复杂的神经网络,通过对其进行迭代训练,直至模型收敛,获取训练后的翻译模型。训练后的翻译模型可以用于执行翻译任务。
参阅图3,为一种主流的NMT架构:Transformer框架。以Transformer框架为例,对NMT模型的工作流程进行说明。Transformer框架主要包括编码器、解码器。编码器和解码器包括多个层,编码器/解码器的每一层是由一些编码单元/解码单元构成。其中编码器各层把源语句对应的词向量经过一系列的神经网络的变换之后,表示成一个高维的向量。解码器各层负责把这个高维向量再重新解码(翻译)成目标语言。
其中,可以通过编码器的词向量参数获取源语句对应的词向量,编码器的词向量参数的集合可以看做一个参数矩阵。可以通过一个词表来包含源语言可能的词,编码器的词向量参数矩阵中包含该词表中的每个词的词向量,词向量参数矩阵的维度可以是[词向量维度,词表大小],其中的词表大小即词表中包含的词的数量。图1中所示的成熟的NMT模型(或者说训练后的MMT模型)中的词向量参数矩阵可以准确表示词表中各词的词向量,换句话说,训练好的词向量参数矩阵可以准确表示词表中各词的词向量,具体的表示源语言中各词的词向量。在一些场景下,输入至NMT模型源语句中的词可能不存在于词表中,对于这样的词可以通过固定的词向量对其进行表示。编码器的每层可以包括自注意力层(self-attention)和前馈网络层(feed forward)。其中,编码器的自注意力层是为了在编码每个词向量时,将源语句中各个词的词向量的权重(各个词对于当前编码的词向量的影响力)都考虑进去。编码器的前馈网络层是为了对自注意力层的输出向量进行非线性变换处理。可以认为编码器的自注意力层通过自注意力层包括的参数将源语句中各个词的词向量的权重(各个词对于当前编码的词向量的影响力)都考虑进去,编码器的前馈网络层通过前馈网络层包括的参数对自注意力层的输出向量进行非线性变换处理。
解码器的每层包括自注意力层(self-attention)、编码-解码关注层(encoder-decoder attention)以及前馈网络层(feed forward)。解码器的自注意力层在解码的过程考虑已经生成的新词对当前解码的向量的影响。解码器的编码-解码关注层考虑编码器的输入对当前解码的向量的影响。解码器的前馈网络层是为了对编码-解码关注层的输出向量进行非线性变换处理。输出映射层接收解码器的最后一层网络层输出的解码向量,并将解码向量转换为翻译结果,比如生成一个新词。具体的,已经生成的新词通过解码器的词向量参数矩阵进行处理后,获取已经生成的新词的词向量,该已经生成的新词的词向量作为解码器的第一层网络层的输入,这个过程一直循环下去直到生成一个结尾符号,或者满足其他预设的停止条件,则解码阶段生成的所有目标词语为翻译结果。可以通过一个词表来包含目标语言可能的词,解码器的词向量参数矩阵中包含该词表中的每个词的词向量,词向量参数矩阵的维度可以是[词向量维度,词表大小],其中的词表大小即词表中包含的词的数量。可以通过最后一层网络层输出的解码向量和解码器的词向量参数矩阵中包含的各个词向量之间的距离中的最小距离,获取与最后一层网络层输出的解码向量最接近的词向量,根据该最接近的词向量和词表获取翻译结果。图1中所示的成熟的NMT模型(或者说训练后的MMT模型)中的词向量参数矩阵可以准确表示词表中各词的词向量,换句话说,训练好的词向量参数矩阵可以准确表示词表中各词的词向量,具体的表示目标语言中各词的词向量。
由图1中的描述可知,本申请实施例包括推理阶段和训练阶段,而推理阶段和训练阶段的流程有所不同,以下分别对前述两个阶段的具体实现流程进行描述。
一、训练阶段
在训练阶段,本申请提供的方案的重点在于构建初始的翻译模型,构建了初始的翻译模型后,再通过少量的低资源平行语料对初始的翻译模型进行微调,即可获取高性能的翻译模型,该高性能的翻译模型针对低资源场景,有优秀的翻译效果。其中,本申请将初始的翻译模型中的全部参数分为两组,第一组包括词向量参数(该词向量参数可以包括编码器的词向量参数和解码器的词向量参数中的一种或者两种),第二组是初始的翻译模型中除该第一组中的参数之外的其他参数。为了更好的理解本申请提供的方案,下面先对获取第一组参数和第二组参数的思路进行介绍。
由于低资源平行语料难以获取,只通过少量的低资源平行语料作为训练数据,难以使训练后的模型的编码器的词向量参数准确的表示输入的低资源语料的词向量,难以使训练后的模型的解码器的词向量参数准确的表示输出的低资源目标语料的词向量。为了达到这一目的,本申请提供的方案借助第一单语语料和第二单语语料。在不特意强调的情况下,第一单语语料采用的语言和高资源平行语料的源语料或者目标语料采用的语言相同,第二单语语料采用的语言和低资源平行语料的源语料或者目标语料采用的语言相同。
相比于低资源平行语料,第二单语语料更容易获取,比如,低资源平行语料是德语英语语言对,该低资源平行语料的源语料是德语文本,目标语料是该德语文本的英语译文文本,第二单语语料可以是德语文本,第二单语语料还可以是英语文本,相比于获取德语英语语言对,获取单一的语料是更容易的,即获取单一的德语文本,单一的英文文本是更容易的。因此,本申请提供的方案首先想到可以通过第二单语语料对预训练语言模型(pretrained language model,PLM)进行训练,训练后的PLM中的词向量参数可以作为初始的翻译模型的编码器的词向量参数,或者作为初始的翻译模型的解码器的词向量参数。
但是通常情况下,第二单语语料也不足够丰富,本申请提供的方案进一步想到可以借助丰富的第一单语语料。通过第一单语语料对第一PLM进行训练,并使训练后的第二PLM的词向量参数所在的向量空间和训练后的第一PLM的词向量参数所在的向量空间之间的偏差在预设范围内,训练后的第二PLM的词向量参数可以作为初始的翻译模型的编码器的词向量参数,或者作为初始的翻译模型的解码器的词向量参数。在这种方式中,同时借助了第一单语语料和第二单语语料,使训练后的第二PLM的词向量参数能更准确的表示第二单语语料的词向量,进而可以更准确的表示低资源平行语料的源语料的词向量,以及更准确的表示低资源目标语料的词向量。为了更好的理解这一逻辑,下面结合一个例子进行说明,假设第一单语语料采用中文,假设训练后的第一PLM的词向量参数所在的空间为第一空间,第一空间中包括第一单语语料中各个词的词向量,比如第一空间中的(0.1,0.5,5)这一个词向量可以准确的表示“我”这个词。假设第二单语语料采用韩文,由于第二单语语料没有那么丰富,只通过第二单语语料训练得到的第二PLM的词向量参数,不足以很好的表示第二单语语料中各个词的词向量,所以本申请提供的方案通过训练后的第一PLM的词向量参数作为辅助,使训练后的第二PLM的词向量参数所在的向量空间接近训练后的第一PLM的词向量参数所在的向量空间。假设训练后的第二PLM的词向量参数所在的空间为第二空间,第二空间中包括第二单语语料中各个词的词向量,比如包括这个词对应的词向量。在第一空间中,(0.1,0.5,5)这一向量能够准确的表示“我”,则可以认为(0.1,0.5,5)这一向量可以很好的表示“我”这个词的语义,由于/>和“我”表示相同的意思,二者表示的语义相同,如果韩文/>对应的词向量接近(0.1,0.5,5)这一向量,比如通过(0.09,0.45,5.1)这一个词向量表示/>可以认为(0.09,0.45,5.1)这一个词向量准确的表示了/>的语义。因此,如果使第一单语语料和第二单语语料中相同语义的各个词的词向量都是接近的,由于第一PLM是通过丰富的训练数据训练得到的,性能更好,第二PLM虽然没有采用丰富的训练数据得到,但是可以利用第一PLM学习到的知识,这就是使训练后的第二PLM的词向量参数所在的向量空间接近训练后的第一PLM的词向量参数所在的向量空间的原因。需要说明的是,第一单语语料中的各个词表示的全部语义的集合,和第二单语语料中的各个词表示的全部语义的集合不一定是相同的,换句话说,第一单语语料中的词对应的词向量和第二单语语料中的词对应的词向量不一定是一一对应的,所以本申请提供的方案使第二PLM的全部词向量参数所在的向量空间和第一PLM的全部词向量参数所在的向量空间之间的偏差在预设范围内即可。
需要说明的是,本申请提供的方案可以通过多种方式使第二PLM的全部词向量参数所在的向量空间和第一PLM的全部词向量参数所在的向量空间之间的偏差在预设范围内,将在下文展开介绍。
以上对获取第一组参数的思路进行了介绍,下面再对获取第二组参数的思路进行介绍。上文介绍到翻译模型的编码器/解码器的每一层是由一些编码单元/解码单元构成。其中编码器各层把源语句对应的词向量经过一系列的神经网络的变换之后,表示成一个高维的向量。解码器各层负责把这个高维向量再重新解码(翻译)成目标语言,可以将编码单元/解码单元看做由第二组参数组成的,以下将这一过程称为通过第二组参数执行翻译任务。由于低资源平行语料难以获取,只通过少量的低资源平行语料作为训练数据,难以使训练后的模型的第二组参数能够准确的基于词向量完成翻译任务。为了达到这一目的,本申请提供的方案借助高资源平行语料和第一单语语料。通过高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。使第二翻译模型中除编码器词向量参数和解码器词向量参数之外的其他参数,和训练后的第一翻译模型中除词向量参数之外的其他参数是相同的,进而使第二翻译模型可以利用训练后的第一翻译模型学习到的如何进行翻译的知识。但是这种方式只利用了高资源平行语料,导致提升第二翻译模型的翻译效果很有限,本申请提供的方案还利用了第一单语语料。相比于高资源平行语料,第一单语语料更为丰富,为了进一步提升训练后的第一翻译模型的性能,可以通过第一PLM的词向量参数对第一翻译模型的编码器的词向量参数进行初始化,或者通过第一PLM的词向量参数对第一翻译模型的解码器的词向量参数进行初始化。
在训练阶段,本申请提供的方案利用了多种语料,即高资源平行语料、第一单语语料,低资源平行语料以及第二单语语料。需要说明的是,在不特意强调的情况下,第一单语语料采用的语言和高资源平行语料的源语料或者目标语料采用的语言相同,第二单语语料采用的语言和低资源平行语料的源语料或者目标语料采用的语言相同。具体的可以包括如下几种情况:
1、高资源平行语料的源语料和低资源平行语料的源语料是不共享的,高资源平行语料的目标语料和低资源平行语料的目标语料也是不共享的。
2、高资源平行语料的源语料和低资源平行语料的源语料是共享的,高资源平行语料的目标语料和低资源平行语料的目标语料是不共享的。
3、高资源平行语料的源语料采用的语言和低资源平行语料的源语料是不共享的,高资源平行语料的目标语料和低资源平行语料的目标语料是共享的。
4、高资源平行语料的源语料和高资源平行语料的目标语料是共享的,低资源平行语料的源语料和低资源平行语料的目标语料是共享的。高资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用至少两种语言。
其中,两种类型的语料是共享的是指该两种语料采用的语言是相同的,并且该两种语料是来自相同领域的数据。
基于上述研究思路,结合这几种不同的情况,下面对本申请提供的一种模型训练的方法进行介绍。
第一种情况:高资源平行语料的源语料和低资源平行语料的源语料是不共享的,高资源平行语料的目标语料和低资源平行语料的目标语料也是不共享的。在第一种情况中,包括两种具体的情况,其中一种情况是,高资源平行语料和低资源平行语料是来自相同领域的数据,但是高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言也不相同。在另一种情况中,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言也相同,但是,高资源平行语料和低资源平行语料是从不同领域获取的数据,比如高资源平行语料是从新闻领域获取的数据,低资源平行语料是从法律领域获取的数据。下面结合图4对应的实施例对第一种情况进行介绍。
参阅图4,为本申请实施例提供的一种模型训练方法的流程示意图。
如图4所示,本申请实施例提供的一种模型训练的方法可以包括如下步骤:
401、基于第一单语语料对应的词向量,对第一预训练语言模型(pretrainedlanguage model,PLM)进行训练,以获取训练后的第一PLM。
上文介绍到第一单语语料包括两种类型,一种类型的第一单语语料采用的语言和高资源平行语料的源语料采用的语言相同,另一种类型的第一单语语料采用的语言和高资源平行语料的目标语料采用的语言相同。在步骤401中,第一单语语料采用的语言和高资源平行语料的源语料采用的语言是相同的。
可以采用不同的方案对第一PLM进行训练,下面以一种经典的训练方案为例对如何训练第一PLM进行介绍。
PLM常用的训练方案叫做掩码语言模型(masked language model,MLM)。MLM的训练原理是,使得PLM学习到捕捉文字上下文信息的能力。在MLM训练方案中,PLM的训练样本,第一单语语料是被掩码处理后的文本,即部分文字被替换成特殊的标记符号,例如,原文本是“今天是晴朗的周六”,被掩码处理后的文本为“今[MASK]是晴[MASK]的周六”;被掩码处理后的文本输入到PLM,PLM需要预测出被掩码的字分别是“天”和“朗”。
训练后的第一PLM对输入的文本具有理解能力,比如具备捕捉文字上下文信息的能力。具体的,训练后的第一PLM对第一单语语料具有理解能力。
需要说明的是,本申请对PLM模型的具体类型并不进行限定。在一种可能的实施方式中,PLM可以是BERT(bidirectional encoder representation from transformers)。在一种可能的实施方式中,PLM可以是(generative pretrained transformer,GPT)。
402、固定第二PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM。
第二PLM中除词向量参数之外的其他参数和训练后的第一PLM中除词向量参数之外的其他参数相同。
上文介绍到,第二单语语料也包括两种类型,一种类型的第二单语语料采用的语言和低资源平行语料的源语料采用的语言相同,另一种类型的第二单语语料采用的语言和低资源平行语料的目标语料采用的语言相同。在步骤402中,第二单语语料采用的语言和低资源平行语料的源语料采用的语言是相同的。
基于第二单语语料对应的词向量对第二PLM进行训练的过程可以参照基于第一单语语料对应的词向量对第一PLM进行训练的过程进行理解,这里不再重复赘述。训练后的第二PLM对第二单语语料具有优秀的理解能力。
通过执行步骤401和步骤402就可以实现使训练后的第二PLM的词向量参数所在的向量空间和训练后的第一PLM的词向量参数所在的向量空间是接近的。参阅图5,对上述步骤401和步骤402描述的步骤进行梳理,基于第一单语语料对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM,训练后的第一PLM包括词向量参数,和第一PLM中除词向量参数之外的其他参数,其中词向量参数用于获取第一单语语料对应的词向量,第一PLM中除词向量参数之外的其他参数基于第一单语语料对应的词向量对第一PLM进行训练,使训练后的第一PLM具备捕捉文字上下文信息的能力。通过训练后的第一PLM中除词向量参数之外的其他参数对第二PLM中除词向量参数之外的其他参数进行初始化,即第二PLM中除词向量参数之外的其他参数和第一PLM中除词向量参数之外的其他参数是相同的。在此基础上,固定第二PLM中除词向量参数之外的其他参数,对第二PLM进行训练,具体的由于固定了第二PLM中除词向量参数之外的其他参数,实际上是对第二PLM的词向量参数进行训练。当第二PLM和训练后的第一PLM中除词向量参数之外的其他参数都是相同的,固定第二PLM除词向量之外的其他参数对第二PLM进行训练,第二PLM的词向量参数所在的向量空间会随着迭代次数的增加,越来越接近训练后的第一PLM的词向量参数所在的向量空间。
在一些可能的实施方式中,还可以通过其他的方式实现训练后的第二PLM的向量参数所在的向量空间和训练后的第一PLM的词向量参数所在的向量空间是接近的。下面给出一种方式:对第一PLM和第二PLM进行联合训练。分别在第一PLM和第二PLM的损失函数中加入第一PLM的词向量参数和第二PLM的词向量参数之间的偏差,在迭代训练的过程中,是损失值不断减小的过程,第一PLM的词向量参数和第二PLM的词向量参数之间的偏差也随之不断缩小,使训练后的第二PLM的向量参数所在的向量空间和训练后的第一PLM的词向量参数所在的向量空间是接近的。其中,第一PLM的词向量参数和第二PLM的词向量参数之间的偏差可以通过多种方式进行确定,比如将第一PLM的词向量参数通过n维的向量进行表示,将第二PLM的词向量参数通过n维的向量进行表示,通过这两个n维的向量之间的距离获取第一PLM的词向量参数和第二PLM的词向量参数之间的偏差。可以通过在第一PLM和第二PLM的训练过程中,引入双语词典,该双语词典包括至少两种语言,该至少两种语言包括第一PLM的训练数据采用的语言,还包括第二PLM的训练数据采用的语言,可以通过查阅该双语词典,获取第一PLM的词向量参数和第二PLM的词向量参数之间的偏差。
403、根据训练后的第二PLM中的词向量参数获取第二翻译模型中编码器的词向量参数。
通过训练后的第二PLM中的词向量参数对第二翻译模型的编码器的词向量参数进行初始化,即第二翻译模型的编码器的词向量参数和第二PLM中的词向量参数是相同的。
通过步骤401至步骤403就完成了低资源场景下,初始的翻译模型的编码器的词向量的构建过程。即第二翻译模型的编码器的词向量参数能够对低资源平行语料的源语料的词进行准确的表示。
404、基于第一资源目标语料对应的词向量,对第三PLM进行训练,以获取训练后的第三PLM。
上文介绍到在步骤401中,第一单语语料采用的语言和高资源平行语料的源语料采用的语言是相同的。在步骤404中,第一单语语料采用的语言和高资源平行语料的目标语料采用的语言是相同的。
基于第一单语语料对应的词向量对第三PLM进行训练的过程可以参照基于第一单语语料对应的词向量对第一PLM进行训练的过程进行理解,这里不再重复赘述。
训练后的第三PLM对输入的语言具有理解能力,比如具备捕捉文字上下文信息的能力。具体的,训练后的第一PLM对第一单语语料具有理解能力。
405、固定第四PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第四PLM进行训练,以获取训练后的第四PLM。
第四PLM中除词向量参数之外的其他参数和训练后的第三PLM中除词向量参数之外的其他参数相同。
在步骤402中,第二单语语料采用的语言和低资源平行语料的源语料采用的语言是相同的。在步骤405中,第二单语语料采用的语言和低资源平行语料的目标语料采用的语言是相同的。
基于第二单语语料对应的词向量对第四PLM进行训练的过程可以参照基于第二单语语料对应的词向量对第二PLM进行训练的过程进行理解,这里不再重复赘述。
通过执行步骤404和步骤405就可以实现使训练后的第四PLM的词向量参数所在的向量空间和训练后的第三PLM的词向量参数所在的向量空间是接近的。继续参阅图5,对上述步骤404和步骤405描述的步骤进行梳理,基于第一单语语料对应的词向量,对第三PLM进行训练,以获取训练后的第三PLM,训练后的第三PLM包括词向量参数,和第三PLM中除词向量参数之外的其他参数,其中词向量参数用于获取第一单语语料对应的词向量,第三PLM中除词向量参数之外的其他参数基于第一单语语料对应的词向量对第三PLM进行训练,使训练后的第三PLM具备捕捉文字上下文信息的能力。通过训练后的第三PLM中除词向量参数之外的其他参数对第四PLM中除词向量参数之外的其他参数进行初始化,即第四PLM中除词向量参数之外的其他参数和第三PLM中除词向量参数之外的其他参数是相同的。在此基础上,固定第四PLM中除词向量参数之外的其他参数,对第四PLM进行训练,具体的由于固定了第四PLM中除词向量参数之外的其他参数,实际上是对第四PLM的词向量参数进行训练。当第四PLM和训练后的第三PLM中除词向量参数之外的其他参数都是相同的,固定第四PLM除词向量之外的其他参数对第四PLM进行训练,第四PLM的词向量参数所在的向量空间会随着迭代次数的增加,越来越接近训练后的第三PLM的词向量参数所在的向量空间。
在一些可能的实施方式中,还可以通过其他的方式实现训练后的第四PLM的向量参数所在的向量空间和训练后的第三PLM的词向量参数所在的向量空间是接近的。下面给出一种方式:对第三PLM和第四PLM进行联合训练。分别在第三PLM和第四PLM的损失函数中加入第三PLM的词向量参数和第四PLM的词向量参数之间的偏差,在迭代训练的过程中,是损失值不断减小的过程,第三PLM的词向量参数和第四PLM的词向量参数之间的偏差也随之不断缩小,使训练后的第四PLM的向量参数所在的向量空间和训练后的第三PLM的词向量参数所在的向量空间是接近的。其中,第三PLM的词向量参数和第四PLM的词向量参数之间的偏差可以通过多种方式进行确定,比如将第三PLM的词向量参数通过n维的向量进行表示,将第四PLM的词向量参数通过n维的向量进行表示,通过这两个n维的向量之间的距离获取第三PLM的词向量参数和第四PLM的词向量参数之间的偏差。
406、根据训练后的第四PLM中的词向量参数获取第二翻译模型中解码器的词向量参数。
通过训练后的第二PLM中的词向量参数对第二翻译模型的解码器的词向量参数进行初始化,即第二翻译模型的解码器的词向量参数和第四PLM中的词向量参数是相同的。
通过步骤404至步骤406就完成了低资源场景下,初始的翻译模型的解码器的词向量的构建过程。即第二翻译模型的解码器的词向量参数能够对低资源平行语料的目标语料的词进行准确的表示。
通过步骤401至步骤406就完成了初始的翻译模型的第一组参数的获取,即完成了第第二翻译模型的编码器的词向量参数和解码器的词向量参数的获取。获取初始的翻译模型的第二组参数需要利用高资源平行语料以及第一单语语料,下面结合步骤407和步骤408对如何获取初始的翻译模型的第二组参数进行介绍。
407、根据训练后的第一PLM中的词向量参数获取第一翻译模型中编码器的词向量参数。
通过训练后的第一PLM中的词向量参数对第一翻译模型中编码器的词向量参数进行初始化,即第一翻译模型的编码器的词向量参数和第一PLM中的词向量参数是相同的。
相比于只通过高资源平行语料直接对第一翻译模型进行训练,通过数据资源更丰富的第一单语语料训练得到的第一PLM对第一翻译模型的编码器的词向量参数进行初始化后,可以有效的提升第一翻译模型的编码器的词向量参数对高资源平行语料的源语料的词进行表示的准确度。
408、根据训练后的第三PLM中的词向量参数获取第一翻译模型中解码器的词向量参数。
通过训练后的第三PLM中的词向量参数对第一翻译模型中解码器的词向量参数进行初始化,即第一翻译模型的解码器的词向量参数和第三PLM中的词向量参数是相同的。
相比于只通过高资源平行语料直接对第一翻译模型进行训练,通过数据资源更丰富的第一单语语料训练得到的第三PLM对第一翻译模型的解码器的词向量参数进行初始化后,可以有效的提升第一翻译模型的解码器的词向量参数对高资源平行语料的目标语料的词进行表示的准确度。
409、固定第一翻译模型的编码器的词向量参数和解码器的词向量参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。
针对于第一翻译模型采用的结构不同,对第一翻译模型的训练方式可能存在差异,本申请对如何对第一模型进行训练的过程并不进行限定,而是重点关注固定第一翻译模型的编码器的词向量参数和解码器的词向量参数的前提下,基于高资源平行语料对应的词向量对第一翻译模型进行训练后,获取的训练后的第一翻译模型。示例性的,当第一翻译模型是图2所示的主流的MMT模型时,可以将NMT看做一个复杂的神经网络,通过对其进行迭代训练,直至模型收敛,获取训练后的翻译模型。具体的,通过第一翻译模型的编码器的词向量参数对源语料进行词嵌入处理,可以获取高资源平行语料的源语料的词向量,编码器对高资源平行语料的源语料的词向量进行编码,以生成编码序列,解码器对编码序列进行解码生成对应的预测翻译结果,根据预测翻译结果和高资源平行语料的目标语料之间的差异获取损失值,通过该损失值对第一翻译模型进行更新,重复执行上述过程直至第一翻译模型收敛,或者满足预设的训练次数,可以认为第一翻译模型训练完成。
410、根据训练后的第一翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数获取第二翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数。
换句话说,第二翻译模型除词向量参数(编码器的词向量参数和解码器的词向量)之外的其他参数和第一翻译模型除词向量参数(编码器的词向量参数和解码器的词向量)之外的其他参数是相同的。
第一翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数,是基于第一翻译模型的编码器的词向量参数(训练后的第一PLM的词向量参数)获取的高资源平行语料的源语料的词向量,以及第一翻译模型的解码器的词向量参数(训练后的第三PLM的词向量参数)获取的高资源平行语料的目标语料的词向量执行翻译任务的。第二翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数,是基于第二翻译模型的编码器的词向量参数(训练后的第二PLM的词向量参数)获取的低资源平行语料的源语料的词向量,以及第二翻译模型的解码器的词向量参数(训练后的第四PLM的词向量参数)获取的低资源平行语料的目标语料的词向量执行翻译任务的。又由于训练后的第二PLM的词向量参数所在的向量空间和训练后的第一PLM的词向量参数所在的向量空间是接近的,训练后的第四PLM的词向量参数所在的向量空间和训练后的第三PLM的词向量参数所在的向量空间是接近的。固定第一翻译模型的编码器的词向量参数和解码器的词向量参数,对第一翻译模型进行训练,是为了使训练过程不会破坏第一翻译模型的编码器的词向量参数所在的向量空间以及解码器的词向量参数所在的向量空间。基于上述论述,当固定第一翻译模型的编码器的词向量参数和解码器的词向量参数,并基于该高资源平行语料的源语料的词向量和目标语料的词向量对第一翻译模型进行训练后,获取训练后的第一翻译模型,并使该训练后的第一翻译模型除词向量参数(编码器的词向量参数和解码器的词向量参数)之外的其他参数和第二翻译模型除词向量参数(编码器的词向量参数和解码器的词向量参数)之外的其他参数是相同的,可以使第二翻译模型除词向量参数(编码器的词向量参数和解码器的词向量参数)之外的其他参数,学习训练后的第一翻译模型除词向量参数(编码器的词向量参数和解码器的词向量参数)之外的其他参数学习到的如何翻译的知识。
步骤407至步骤410的过程也可以继续参照图5进行理解。
通过步骤408和步骤409就完成了初始的翻译模型的第二组参数的获取,即完成了第二翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数的获取。通过步骤410即完成了初始的翻译模型的构建过程,即获取了完整的第二翻译模型。
411、基于低资源平行语料对应的词向量,对第二翻译模型进行训练,以获取训练后的第二翻译模型。
步骤401至步骤410对如何获取第二翻译模型进行了介绍,在步骤411中通过少量的低资源平行语料对第二翻译模型进行微调,即可获取高性能的翻译模型,该高性能的翻译模型针对低资源场景,有优秀的翻译效果。
由图4对应的实施例可知,本申请提供的方案利用了高资源平行语料、低资源平行语料、第一单语语料和第二单语语料对翻译模型进行训练,提升翻译模型在低资源场景下的翻译效果。
此外,需要说明的是,预训练语言模型和翻译模型的编码器或者解码器可以是相同结构的模型,也可以是不同结构的模型。比如在一种可能的实施方式中,预训练语言模型和翻译模型的编码器、解码器都采用transformer模型。此时,二者的结构完全相同,包括的参数也完全相同,可以直接通过一个模型中任意的一个参数替换另一个模型的对应位置的参数。在这种实施方式中,可以对本方案中的词向量参数做扩大解释,初始的翻译模型中的第一组参数可以包括词向量参数和至少一个其他参数,第二组参数是初始的翻译模型中除该第一组中的参数之外的其他参数。换句话说,词向量参数是指包括词向量参数的参数集合。此外,为了保证第一翻译模型的词向量参数(不做扩大解释)所在的向量空间和第二翻译模型的词向量参数(不做扩大解释)所在的向量空间是接近的,第一组参数不宜包括过多的其他参数,并且该至少一个其他参数可以直接利用词向量参数获取的词向量,示例性的,在一种可能的实施方式中,该至少一个其他参数包括模型的第一层的参数。需要说明的是,本申请在不做特殊强调的时候,均不对词向量参数做扩大解释。假设该其他至少一个其他参数是目标参数,则在步骤402中:固定第二PLM中除词向量参数和目标参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM;在步骤403中:根据训练后的第二PLM中的词向量参数和目标参数获取第二翻译模型中编码器的词向量参数和目标参数;在步骤405中:固定第四PLM中除词向量参数和目标参数之外的其他参数,基于第二单语语料对应的词向量对第四PLM进行训练,以获取训练后的第四PLM。在步骤406中:根据训练后的第四PLM中的词向量参数和目标参数获取第二翻译模型中解码器的词向量参数和目标参数。在步骤407中:根据训练后的第一PLM中的词向量参数和目标参数获取第一翻译模型中编码器的词向量参数和目标参数。在步骤408中:根据训练后的第三PLM中的词向量参数和目标参数获取第一翻译模型中解码器的词向量参数和目标参数。在步骤409中:固定第一翻译模型的编码器的词向量参数和解码器的词向量参数和目标参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。在步骤411中:根据训练后的第一翻译模型中除编码器的词向量参数和解码器的词向量参数和目标参数之外的其他参数获取第二翻译模型中除编码器的词向量参数和解码器的词向量参数和目标参数之外的其他参数。在另一种可能的实施方式中,预训练语言模型和翻译模型的编码器、解码器可以是结构不同的模型,比如,预训练语言模型采用transformer模型或者循环神经网络(recurrent neural network,RNN)模型中的其中一种,对应的翻译模型的编码器和解码器采用transformer模型或循环神经网络(recurrentneural network,RNN)模型中的其中一种,对于模型结构不匹配的情况,可以只初始化匹配的参数(所有模型结构都会包括词向量参数,所以至少存在这一部分匹配的参数)。
图4对应的实施例中,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言也不相同。在图4对应的实施例中,高资源平行语料和低资源平行语料也可以是来自不同领域的数据。在一些实施例中,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言可能相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言也可能相同,在这些实施例中,可以对上述图4对应的实施例进行简化,下面分别进行说明。
第二种情况:高资源平行语料的源语料和低资源平行语料的源语料是共享的,高资源平行语料的目标语料和低资源平行语料的目标语料是不共享的。下面结合图6对应的实施例对第二种情况进行介绍。
参阅图6,为本申请实施例提供的一种模型训练方法的流程示意图。
如图6所示,本申请实施例提供的一种模型训练的方法可以包括如下步骤:
601、基于第一单语语料对应的词向量,对第三PLM进行训练,以获取训练后的第三PLM。
602、固定第四PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第四PLM进行训练,以获取训练后的第四PLM。
603、根据训练后的第四PLM中的词向量参数获取第二翻译模型中解码器的词向量参数。
步骤601至步骤603可以参照图4对应的实施例中的步骤404至406进行理解,这里不再重复赘述。
604、根据训练后的第三PLM中的词向量参数获取第一翻译模型中解码器的词向量参数。
步骤604可以参照图4对应的实施例中的步骤408进行理解,这里不再重复赘述。
605、固定第一翻译模型的解码器的词向量参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。
在图6对应的实施例中,由于高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,可以对第一翻译模型的编码器的词向量参数进行随机的初始化,在训练过程中,不需要固定第一翻译模型的编码器的词向量参数。
在另一些可能的实施方式中,也可以基于第一单语语料(这里的第一单语语料指和高资源平行语料的源语料采用的语言是相同的情况)对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM,根据训练后的第一PLM中的词向量参数获取第一翻译模型中编码器的词向量参数。在这种实施方式中,在执行步骤605时,可以固定第一翻译模型的编码器的词向量参数,也可以不固定第一翻译模型的编码器的词向量参数。
606、根据训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取第二翻译模型中除解码器的词向量参数之外的其他参数。
在步骤606中,第一翻译模型中除解码器的词向量参数之外的其他参数包括第一翻译模型的编码器的词向量参数,第二翻译模型中除解码器的词向量参数之外的其他参数包括第二翻译模型的编码器的词向量参数。由于高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同(这里默认高资源平行语料的源语料和低资源平行语料的源语料来自相同的领域,即高资源平行语料的源语料和低资源平行语料的源语料是共享的),则可以认为训练后的第一翻译模型的编码器的词向量参数和第二翻译模型的编码器的词向量参数是共享的。
607、基于低资源平行语料对应的词向量,对第二翻译模型进行训练,以获取训练后的第二翻译模型。
步骤607可以参照图4对应的实施例中的步骤411进行理解,合理不再重复赘述。
第三种情况:高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言是不共享的,高资源平行语料的目标语料和低资源平行语料的目标语料是共享的。下面结合图7对应的实施例对第二种情况进行介绍。
参阅图7,为本申请实施例提供的一种模型训练方法的流程示意图。
如图7所示,本申请实施例提供的一种模型训练的方法可以包括如下步骤:
701、基于第一单语语料对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM。
702、固定第二PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM。
703、根据训练后的第二PLM中的词向量参数获取第二翻译模型中编码器的词向量参数。
步骤701至步骤703可以参照图4对应的实施例中的步骤401至403进行理解,这里不再重复赘述。
704、根据训练后的第一PLM中的词向量参数获取第一翻译模型中编码器的词向量参数。
步骤704可以参照图4对应的实施例中的步骤407进行理解,这里不再重复赘述。
705、固定第一翻译模型的编码器的词向量参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。
在图7对应的实施例中,由于高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,可以对第一翻译模型的解码器的词向量参数进行随机的初始化,在训练过程中,不需要固定第一翻译模型的解码器的词向量参数。
在另一些可能的实施方式中,也可以基于第一单语语料(这里的第一单语语料指和高资源平行语料的目标语料采用的语言是相同的情况)对应的词向量,对第三PLM进行训练,以获取训练后的第三PLM,根据训练后的第三PLM中的词向量参数获取第一翻译模型中解码器的词向量参数。在这种实施方式中,在执行步骤705时,可以固定第一翻译模型的解码器的词向量参数,也可以不固定第一翻译模型的解码器的词向量参数。
706、根据训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取第二翻译模型中除编码器的词向量参数之外的其他参数。
在步骤606中,第一翻译模型中除编码器的词向量参数之外的其他参数包括第一翻译模型的解码器的词向量参数,第二翻译模型中除编码器的词向量参数之外的其他参数包括第二翻译模型的解码器的词向量参数。由于高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同(这里默认高资源平行语料的目标语料和低资源平行语料的目标语料来自相同的领域,即高资源平行语料的目标语料和低资源平行语料的目标语料是共享的),则可以认为训练后的第一翻译模型的解码器的词向量参数和第二翻译模型的解码器的词向量参数可以是共享的。
707、基于低资源平行语料对应的词向量,对第二翻译模型进行训练,以获取训练后的第二翻译模型。
步骤707可以参照图4对应的实施例中的步骤411进行理解,合理不再重复赘述。
第四种情况:高资源平行语料的源语料和高资源平行语料的目标语料是共享的,低资源平行语料的源语料和低资源平行语料的目标语料是共享的。高资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用至少两种语言。下面结合图8对应的实施例对第二种情况进行介绍。
801、基于第一单语语料对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM。
在步骤801中,第一单语语料包括两种类型,一种类型的第一单语语料采用的语言和高资源平行语料的源语料采用的语言相同,另一种类型的第一单语语料采用的语言和高资源平行语料的目标语料采用的语言相同。通过两种类型的第一单语语料对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM。
802、固定第二PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM。
第二PLM中除词向量参数之外的其他参数和训练后的第一PLM中除词向量参数之外的其他参数相同。
在步骤802中,第二单语语料包括两种类型,一种类型的第二单语语料采用的语言和低资源平行语料的源语料采用的语言相同,另一种类型的第二单语语料采用的语言和低资源平行语料的目标语料采用的语言相同。固定第二PLM中除词向量参数之外的其他参数,通过两种类型的第二单语语料对应的词向量,对第二PLM进行训练,以获取训练后的第一PLM。
803、根据训练后的第二PLM中的词向量参数获取第二翻译模型中编码器的词向量参数和解码器的词向量参数。
804、根据训练后的第一PLM中的词向量参数获取第一翻译模型中编码器的词向量参数和解码器的词向量参数。
通过执行步骤801至步骤804使第一翻译模型的编码器的词向量参数、第一翻译模型的解码器的词向量参数、第二翻译模型的编码器的词向量参数以及第二翻译模型的解码器的词向量参数中的任意两个词向量参数所在的向量空间都是接近的。
805、固定第一翻译模型的编码器的词向量和解码器的词向量参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。
806、根据训练后的第一翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数获取第二翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数。
807、基于低资源平行语料对应的词向量,对第二翻译模型进行训练,以获取训练后的第二翻译模型。
通过图8对应的实施例,使训练后的第二翻译模型是一个双向互译模型,即第二翻译模型允许输入是多种不同的语言,对应的输出也可以是多种不同的语言。
在另一些可能的实施方式中,高资源平行语料的源语料和低资源平行语料的目标语料是共享的,高资源平行语料的目标语料和低资源平行语料的源语料是不共享的。或者高资源平行语料的源语料和低资源平行语料的目标语料是不共享的,高资源平行语料的目标语料采用的语言和低资源平行语料的源语料是共享的。在这种实施方式中,可以参照图8对应的实施例,使第一翻译模型的编码器的词向量参数、第一翻译模型的解码器的词向量参数、第二翻译模型的编码器的词向量参数以及第二翻译模型的解码器的词向量参数中的任意两个词向量参数所在的向量空间都是接近的。还可以使第二翻译模型的解码器的词向量参数所在的空间和第一翻译模型的编码器的词向量参数所在的空间是相同的,或者使第二翻译模型的编码器的词向量参数所在的空间和第一翻译模型的解码器的词向量参数所在的空间是相同的,示例性的,介绍两种可能的方案。
如图8所示,在高资源平行语料的源语料和低资源平行语料的目标语料是共享的,高资源平行语料的目标语料和低资源平行语料的源语料是不共享的情况下,本申请实施例提供的一种模型训练的方法可以包括如下步骤:
901、基于第一单语语料对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM。
步骤901参照图4对应的实施例中的步骤401进行理解,这里不再重复赘述。
902、根据训练后的第一PLM中的词向量参数获取第二翻译模型中解码器的词向量参数。
903、基于第一单语语料对应的词向量,对第三PLM进行训练,以获取训练后的第三PLM。
上文介绍到在步骤401中,第一单语语料采用的语言和高资源平行语料的源语料采用的语言是相同的。在步骤404中,第一单语语料采用的语言和高资源平行语料的目标语料采用的语言是相同的。
904、固定第二PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM。
第二PLM中除词向量参数之外的其他参数和训练后的第三PLM中除词向量参数之外的其他参数相同。
在步骤904中,第二单语语料采用的语言和低资源平行语料的源语料采用的语言是相同的。
905、根据训练后的第二PLM中的词向量参数获取第二翻译模型中编码器的词向量参数。
906、根据训练后的第一PLM中的词向量参数获取第一翻译模型中编码器的词向量参数。
907、根据训练后的第三PLM中的词向量参数获取第一翻译模型中解码器的词向量参数。
908、固定第一翻译模型的编码器的词向量参数和解码器的词向量参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。
909、根据训练后的第一翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数获取第二翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数。
910、基于低资源平行语料对应的词向量,对第二翻译模型进行训练,以获取训练后的第二翻译模型。
如图10所示,在高资源平行语料的目标语料和低资源平行语料的源语料是共享的,高资源平行语料的目标语料和低资源平行语料的源语料是不共享的情况下,本申请实施例提供的一种模型训练的方法可以包括如下步骤:
1001、基于第三资源语料对应的词向量,对第一PLM进行训练,以获取训练后的第一PLM。
在步骤1001中,第一单语语料采用的语言和高资源平行语料的目标语料采用的语言是相同的。
1002、固定第四PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM。
1003、基于第一单语语料对应的词向量,对第三PLM进行训练,以获取训练后的第三PLM。
上文介绍到在步骤401中,第一单语语料采用的语言和高资源平行语料的源语料采用的语言是相同的。在步骤404中,第一单语语料采用的语言和高资源平行语料的目标语料采用的语言是相同的。
1004、固定第二PLM中除词向量参数之外的其他参数,基于第二单语语料对应的词向量对第二PLM进行训练,以获取训练后的第二PLM。
第二PLM中除词向量参数之外的其他参数和训练后的第三PLM中除词向量参数之外的其他参数相同。
在步骤1004中,第二单语语料采用的语言和低资源平行语料的源语料采用的语言是相同的。
1005、根据训练后的第二PLM中的词向量参数获取第二翻译模型中编码器的词向量参数。
1006、根据训练后的第一PLM中的词向量参数获取第一翻译模型中编码器的词向量参数。
1007、根据训练后的第三PLM中的词向量参数获取第一翻译模型中解码器的词向量参数。
1008、固定第一翻译模型的编码器的词向量参数和解码器的词向量参数,基于高资源平行语料对应的词向量,对第一翻译模型进行训练,以获取训练后的第一翻译模型。
1009、根据训练后的第一翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数获取第二翻译模型中除编码器的词向量参数和解码器的词向量参数之外的其他参数。
1010、基于低资源平行语料对应的词向量,对第二翻译模型进行训练,以获取训练后的第二翻译模型。
本申请实施例中,利用了高资源平行语料、低资源平行语料、第一单语语料和第二单语语料对翻译模型进行训练,提升翻译模型在低资源场景下的翻译效果。
二、推理阶段
参阅图11,为本申请实施例提供的一种翻译方法的流程示意图。
如图11所示,本申请实施例提供的一种翻译方法可以包括如下步骤:
1101、获取待翻译语句。
待翻译语句可以是小语种,或者是特定领域的文献,比如法律领域的文献、英文领域的文献等等。
1102、通过目标翻译模型对待翻译语句进行翻译,以获取翻译结果。
目标翻译模型是基于低资源平行语料对第二翻译模型进行训练后获取的,第二翻译模型的词向量参数是基于第二预训练语言模型PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第二PLM的词向量参数所在的向量空间和第一PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,训练后的第一翻译模型是固定第一翻译模型的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的词向量参数是基于第一PLM中的词向量参数获取的。
其中,目标翻译模型可以参照图4至图10中描述的训练后的第二翻译模型进行理解。
具体的,在一种可能的实施方式中,在高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
在第二方面的一种可能实现方式中,在高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取的,第一翻译模型是在固定第一翻译模型的编码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
在第二方面的一种可能实现方式中,第一PLM包括第一类型的第一PLM和第二类型的第一PLM,第二PLM包括第一类型的第二PLM和第二类型的第二PLM,第一类型的第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二类型的第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第一类型的第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二类型的第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第一类型的第一PLM的词向量参数所在的向量空间和第一类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二类型的第一PLM的词向量参数所在的向量空间和第二类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二翻译模型的编码器的词向量参数是基于第一类型的第二PLM的词向量参数获取的,第二翻译模型的解码器的词向量参数是基于第二类型的第二PLM的词向量参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数和编码器的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的编码器的词向量参数是基于第一类型的第一PLM中的词向量参数获取的,第一翻译模型的解码器的词向量参数是基于第二类型的第一PLM中的词向量参数获取的。
在一种可能的实施方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据。
在一种可能的实施方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,并且高资源平行语料和低资源平行语料是来自不相同领域的数据。
在一种可能的实施方式中,第一类型的第一PLM是基于与高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的源语料采用的语言相同的第二单语语料,对初始的第一类型的第二PLM进行训练后获取的,初始的第一类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在一种可能的实施方式中,第二类型的第一PLM是基于与高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的目标语料采用的语言相同的第二单语语料,对初始的第二类型的第二PLM进行训练后获取的,初始的第二类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在一种可能的实施方式中,在高资源平行语料的源语料采用至少两种语言,高资源平行语料的源语料采用的至少两种语言和高资源平行语料的目标语料采用的语言相同,低资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用的至少两种语言和低资源平行语料的目标语料采用的语言相同的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于第二PLM的词向量参数获取的,第一翻译模型是在固定第一翻译模型的解码器的词向量参数和第一翻译模型的编码器的词向量的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的。
为了更直观地理解本方案所带来的有益效果,以下结合数据对本申请实施例带来的有益效果进行说明。
在一次实验中,针对于上述描述的第二种情况,高资源平行语料是英语-德语新闻类文献,低资源平行语料是英语-爱沙尼亚语新闻类文献,在这次实现中,采用了590万句对高资源平行语料,采用了英语新闻类的单语语料0.94亿句,德语新闻类的单语语料1.47亿句,爱沙尼亚语新闻类的单语语料1.39亿句。其中,预训练语言模型和翻译模型的编码器、解码器都采用transformer模型。在本次实验中,第一组参数包括的词向量参数不做扩大解释,仅包括词向量参数。相比于只通过低资源平行语料(约190万句对)对模型训练后得到的翻译模型,通过本申请提供的方案,由于利用了更多辅助训练数据(单语语料,高资源平行语料),使机器翻译自动评价方法(bilingual evaluation understudy,BLEU)从16.29提升至19.41。BLEU是业界用来对机器翻译质量的一种自动评估指标。BLEU是用于测量机器翻译得到的文本与翻译参考文本之间的相似度的一种算法,BLEU值越大表明机器翻译的质量越高。
在一次实验中,针对于上述描述的第三种情况,高资源平行语料是德语-英语新闻类文献,低资源平行语料是爱沙尼亚语-英语新闻类文献,在这次实现中,采用了590万句对高资源平行语料,采用了英语新闻类的单语语料0.94亿句,德语新闻类的单语语料1.47亿句,爱沙尼亚语新闻类的单语语料1.39亿句。其中,预训练语言模型和翻译模型的编码器、解码器都采用transformer模型。在本次实验中,第一组参数包括的词向量参数不做扩大解释,仅包括词向量参数。相比于只通过低资源平行语料(约190万句对)对模型训练后得到的翻译模型,通过本申请提供的方案,由于利用了更多辅助训练数据(单语语料,高资源平行语料),使BLEU从21.76提升至24.81。
在一次实验中,针对于上述描述的第四种情况,高资源平行语料是法语-英语新闻类文献,低资源平行语料是俄语-英语新闻类文献,在这次实现中,采用了500万句对高资源平行语料,采用了法英维基百科的单语语料1.34亿句,俄英维基百科的单语语料1.30亿句。第一单语语料包括法语维基百科语料和英语维基百科语料,第二单语语料包括俄语维基百科语料和英语维基百科语料。在这次实验中,翻译模型的编码器和解码器是异构的,编码器为12层Transformer,解码器为3层的基于RNN的变种,词向量维数为336。相比仅使用模拟的低资源俄语-英语平行语料(10万平行句对)对模型训练后得到的翻译模型,通过本申请提供的方案,由于利用了更多辅助训练数据(单语语料,高资源平行语料),使BLEU从1.22提升至20.49。
以上对本申请提供的一种模型训练的方法以及一种翻译的方法进行了介绍,通过本申请实施例提供的方案。可以理解的是,上述训练装置以及翻译设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
从硬件结构上来描述,图4至图10中的执行主体可以由一个实体设备实现,也可以由多个实体设备共同实现,还可以是一个实体设备内的一个逻辑功能模块,本申请实施例对此不作具体限定。图11中的执行主体可以由一个实体设备实现,也可以由多个实体设备共同实现,还可以是一个实体设备内的一个逻辑功能模块,本申请实施例对此不作具体限定。
下面基于前述的一种模型训练的方法以及一种翻译的方法,对本申请提供的模型训练的装置、翻译装置进行阐述,模型训练的装置用于执行前述图4至图10对应的方法的步骤。翻译装置用于执行前述图11对应的方法的步骤。
例如,模型训练的装置或者翻译装置可以通过图12中的计算机设备来实现,图12所示为本申请实施例提供的计算机设备的硬件结构示意图。包括:通信接口1201和处理器1202,还可以包括存储器1203。
通信接口1201可以使用任何收发器一类的装置,用于与其他设备或通信网络通信,在本方案中,端侧设备可以利用通信接口1201与服务器进行通信,比如上传模型或者下载模型。在一个可能的实施方式中,通信接口1201可以采用以太网,无线接入网(radioaccess network,RAN),无线局域网(wireless local area networks,WLAN)等技术与服务器进行通信。
处理器1202包括但不限于中央处理器(central processing unit,CPU),网络处理器(network processor,NP),专用集成电路(application-specific integratedcircuit,ASIC)或者可编程逻辑器件(programmable logic device,PLD)中的一个或多个。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(genericarray logic,GAL)或其任意组合。处理器1202负责通信线路1204和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节,电源管理以及其他控制功能。
存储器1203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically er服务器able programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路1204与处理器1202相连接。存储器1203也可以和处理器1202集成在一起。如果存储器1203和处理器1202是相互独立的器件,存储器1203和处理器1202相连,例如存储器1203和处理器1202可以通过通信线路通信。通信接口1201和处理器1202可以通过通信线路通信,通信接口1201也可以与处理器1202直连。
通信线路1204可以包括任意数量的互联的总线和桥,通信线路1204将包括由处理器1202代表的一个或多个处理器1202和存储器1203代表的存储器的各种电路链接在一起。通信线路1204还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本申请不再对其进行进一步描述。
在一个可能的实施方式中,该计算机设备是模型训练的装置,该模型训练的装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取训练数据,训练数据可以包括未携带标签的源域数据和目标域有标签数据。
处理器用于执行所述存储器中的计算机可读指令从而执行图4对应的实施例中的步骤401至步骤411。
在一个可能的实施方式中,该计算机设备是模型训练的装置,该模型训练的装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取训练数据,训练数据可以包括未携带标签的源域数据和目标域有标签数据。
处理器用于执行所述存储器中的计算机可读指令从而执行图6对应的实施例中的步骤601至步骤607。
在一个可能的实施方式中,该计算机设备是模型训练的装置,该模型训练的装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取训练数据,其中训练数据可以包括未携带标签的源域数据、目标域有标签数据以及目标域无标签数据。处理器用于执行所述存储器中的计算机可读指令从而执行图7对应的实施例中的步骤701至步骤707。
在一个可能的实施方式中,该计算机设备是模型训练的装置,该模型训练的装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取训练数据,其中训练数据可以包括未携带标签的源域数据、目标域有标签数据以及目标域无标签数据。处理器用于执行所述存储器中的计算机可读指令从而执行图8对应的实施例中的步骤801至步骤807。
在一个可能的实施方式中,该计算机设备是模型训练的装置,该模型训练的装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取训练数据,其中训练数据可以包括未携带标签的源域数据、目标域有标签数据以及目标域无标签数据。处理器用于执行所述存储器中的计算机可读指令从而执行图9对应的实施例中的步骤901至步骤910。
在一个可能的实施方式中,该计算机设备是模型训练的装置,该模型训练的装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取训练数据,其中训练数据可以包括未携带标签的源域数据、目标域有标签数据以及目标域无标签数据。处理器用于执行所述存储器中的计算机可读指令从而执行图10对应的实施例中的步骤1001至步骤1010。
在一个可能的实施方式中,该计算机设备是翻译装置,该翻译装置包括存储器,用于存储计算机可读指令。还可以包括和存储器耦合的通信接口和处理器。通信接口用于获取源域数据,用于执行图11对应的实施例中的步骤1101。处理器用于执行所述存储器中的计算机可读指令从而执行图11对应的实施例中的步骤1102。
在本申请实施例中,可以将通信接口视为计算机设备的收发模块1301,将具有处理功能的处理器视为计算机设备的处理模块1302,将存储器视为计算机设备的存储模块(图中未示出)。参阅图13,为本申请实施例提供的一种计算机设备的结构示意图。
本申请实施例对模型的名称并不进行限定,比如,当计算机设备是模型训练的装置时,该处理模块1302可以看做训练模块。其中,在一种可能的实施方式中,包括:第一训练模块,用于获取第一预训练语言模型PLM的词向量参数和第二PLM的词向量参数,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第一PLM的词向量参数所在的向量空间和第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同。第二训练模块,用于固定第一翻译模型的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,第一翻译模型的词向量参数是基于第一训练模块获取的第一PLM中的词向量参数获取的。第三训练模块,用于基于低资源平行语料,对第二翻译模型进行训练,以获取训练后的第二翻译模型,第二翻译模型的词向量参数是基于第一训练模块获取的第二PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于第二训练模块获取的训练后的第一翻译模型中除词向量参数之外的其他参数获取的。
在一个可能的实施方式中,在高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的解码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除解码器的词向量参数之外的其他参数获取的,第二训练模块,具体用于:固定第一翻译模型的解码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。
在一个可能的实施方式中,在高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数是基于第二PLM的词向量参数获取的,第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的第一翻译模型中除编码器的词向量参数之外的其他参数获取的,第二训练模块,具体用于:固定第一翻译模型的编码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。
在一个可能的实施方式中,第一PLM包括第一类型的第一PLM和第二类型的第一PLM,第二PLM包括第一类型的第二PLM和第二类型的第二PLM,第一类型的第一PLM的词向量参数用于表示,与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二类型的第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,第一类型的第二PLM的词向量参数用于表示,与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二类型的第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,第一类型的第一PLM的词向量参数所在的向量空间和第一类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二类型的第一PLM的词向量参数所在的向量空间和第二类型的第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第二翻译模型的编码器的词向量参数是基于第一类型的第二PLM的词向量参数获取的,第二翻译模型的解码器的词向量参数是基于第二类型的第二PLM的词向量参数获取的,第二训练模块,具体用于:固定第一翻译模型的解码器的词向量参数和编码器的词向量参数,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型,第一翻译模型的编码器的词向量参数是基于第一类型的第一PLM中的词向量参数获取的,第一翻译模型的解码器的词向量参数是基于第二类型的第一PLM中的词向量参数获取的。
在一个可能的实施方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言不相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言不相同,并且高资源平行语料和低资源平行语料是来自相同领域的数据。
在一个可能的实施方式中,高资源平行语料的目标语料采用的语言和低资源平行语料的目标语料采用的语言相同,高资源平行语料的源语料采用的语言和低资源平行语料的源语料采用的语言相同,并且高资源平行语料和低资源平行语料是来自不相同领域的数据。
在一个可能的实施方式中,第一类型的第一PLM是基于与高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的源语料采用的语言相同的第二单语语料,对初始的第一类型的第二PLM进行训练后获取的,初始的第一类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在一个可能的实施方式中,第二类型的第一PLM是基于与高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第一PLM进行训练后获取的,第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与高资源平行语料的目标语料采用的语言相同的第二单语语料,对初始的第二类型的第二PLM进行训练后获取的,初始的第二类型的第二PLM中除词向量参数之外的其他参数,和第一PLM中除词向量参数之外的其他参数相同。
在一个可能的实施方式中,在高资源平行语料的源语料采用至少两种语言,高资源平行语料的源语料采用的至少两种语言和高资源平行语料的目标语料采用的语言相同,低资源平行语料的源语料采用至少两种语言,低资源平行语料的源语料采用的至少两种语言和低资源平行语料的目标语料采用的语言相同的情况下,第一PLM的词向量参数用于表示,与高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,第二PLM的词向量参数用于表示,与低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于第二PLM的词向量参数获取的,第二训练模块,具体用于:固定第一翻译模型的解码器的词向量参数和第一翻译模型的编码器的词向量,基于高资源平行语料对第一翻译模型进行训练,以获取训练后的第一翻译模型。
当计算机设备是翻译的装置时,在一个可能的实施方式中,该翻译的装置可以包括:获取模块,用于获取待翻译语句。翻译模块,用于通过目标翻译模型对获取模块获取的待翻译语句进行翻译,以获取翻译结果,目标翻译模型是基于低资源平行语料对第二翻译模型进行训练后获取的,第二翻译模型的词向量参数是基于第二预训练语言模型PLM的词向量参数获取的,第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第二PLM的词向量参数所在的向量空间和第一PLM的词向量参数所在的向量空间之间的偏差在预设范围内,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,第一单语语料和高资源平行语料是来自相同领域的数据,并且第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第二单语语料和低资源平行语料是来自相同领域的数据,并且第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,训练后的第一翻译模型是固定第一翻译模型的词向量参数的情况下,基于高资源平行语料对第一翻译模型进行训练后获取的,第一翻译模型的词向量参数是基于第一PLM中的词向量参数获取的。应当理解,上述仅为本申请实施例提供的一个例子,并且,模型训练的装置/翻译装置可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
本申请实施例提供的模型训练的装置/翻译装置可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该模型训练的装置为芯片时,该处理单元可执行存储单元存储的计算机执行指令,以使芯片执行上述图4至图10所示实施例描述的训练模型的方法。在另一个可能的实施方式中,该翻译装置为芯片时,以使芯片执行上述图11所示实施例描述的翻译的方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-onlymemory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
具体地,前述的处理单元或者处理器可以是中央处理器(central processingunit,CPU)、神经网络处理器(neural-network processing unit,NPU)、图形处理器(graphics processing unit,GPU)、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)或现场可编程逻辑门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者也可以是任何常规的处理器等。
具体的,请参阅14,14为本申请实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器NPU180,NPU180作为协处理器挂载到主CPU(Host CPU)上,由HostCPU分配任务。NPU的核心部分为运算电路1803,通过控制器1804控制运算电路1803提取存储器中的矩阵数据并进行乘法运算。
在一些实现中,运算电路1803内部包括多个处理单元(process engine,PE)。在一些实现中,运算电路1803是二维脉动阵列。运算电路1803还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路1803是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器1802中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器1801中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)1808中。
统一存储器1806用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(direct memory access controller,DMAC)1805,DMAC被搬运到权重存储器1802中。输入数据也通过DMAC被搬运到统一存储器1806中。
总线接口单元(bus interface unit,BIU)1810,用于AXI总线与DMAC和取指存储器(Instruction Fetch Buffer,IFB)1809的交互。
总线接口单元1810(bus interface unit,BIU),用于取指存储器1809从外部存储器获取指令,还用于存储单元访问控制器1805从外部存储器获取输入矩阵A或者权重矩阵B的原数据。
DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器1806或将权重数据搬运到权重存储器1802中或将输入数据数据搬运到输入存储器1801中。
向量计算单元1807包括多个运算处理单元,在需要的情况下,对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如批归一化(batch normalization),像素级求和,对特征平面进行上采样等。
在一些实现中,向量计算单元1807能将经处理的输出的向量存储到统一存储器1806。例如,向量计算单元1807可以将线性函数和/或非线性函数应用到运算电路1803的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元1807生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路1803的激活输入,例如用于在神经网络中的后续层中的使用。
控制器1804连接的取指存储器(instruction fetch buffer)1809,用于存储控制器1804使用的指令。
统一存储器1806,输入存储器1801,权重存储器1802以及取指存储器1809均为On-Chip存储器。外部存储器私有于该NPU硬件架构。
其中,循环神经网络中各层的运算可以由运算电路1803或向量计算单元1807执行。
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述图4至图10的方法的程序执行的集成电路,或者在另一个可能的实施方式中,控制上述图11的方法的程序执行的集成电路。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于数据处理的程序,当其在计算机上运行时,使得计算机执行如前述图11所示实施例描述的方法中的步骤。
本申请实施例还提供一种数字处理芯片。该数字处理芯片中集成了用于实现上述处理器,或者处理器的功能的电路和一个或者多个接口。当该数字处理芯片中集成了存储器时,该数字处理芯片可以完成前述实施例中的任一个或多个实施例的方法步骤。当该数字处理芯片中未集成存储器时,可以通过通信接口与外置的存储器连接。该数字处理芯片根据外置的存储器中存储的程序代码来实现上述实施例中模型训练的装置/翻译装置执行的动作。
本申请实施例中还提供一种计算机程序产品,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上对本申请实施例所提供的模型的训练方法、数据处理方法以及相关设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
本申请的说明书和权利要求书及上述附图中的术语“第一”,“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程,方法,系统,产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程,方法,产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。本申请中所出现的模块的划分,是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些端口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本申请方案的目的。
Claims (32)
1.一种模型训练的方法,其特征在于,包括:
获取第一预训练语言模型PLM的词向量参数和第二PLM的词向量参数,所述第一预训练语言模型PLM的词向量参数用于表示第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,所述第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,所述第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,第一PLM的词向量参数所在的向量空间和所述第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内;
固定第一翻译模型的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,所述第一翻译模型的词向量参数是基于所述第一PLM中的词向量参数获取的;
基于所述低资源平行语料,对第二翻译模型进行训练,以获取训练后的所述第二翻译模型,所述第二翻译模型的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除词向量参数之外的其他参数获取的。
2.根据权利要求1所述的方法,其特征在于,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言相同,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言不相同,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的解码器的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除解码器的词向量参数之外的其他参数获取的,所述固定第一翻译模型的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,包括:
固定所述第一翻译模型的解码器的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型。
3.根据权利要求1所述的方法,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言不相同,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除编码器的词向量参数之外的其他参数获取的,所述固定第一翻译模型的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,包括:
固定所述第一翻译模型的编码器的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型。
4.根据权利要求1所述的方法,其特征在于,所述第一PLM包括第一类型的所述第一PLM和第二类型的所述第一PLM,所述第二PLM包括第一类型的所述第二PLM和第二类型的所述第二PLM,所述第一类型的第一PLM的词向量参数用于表示,与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二类型的第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,所述第一类型的第二PLM的词向量参数用于表示,与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二类型的第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数是基于所述第一类型的第二PLM的词向量参数获取的,所述第二翻译模型的解码器的词向量参数是基于所述第二类型的第二PLM的词向量参数获取的,所述固定第一翻译模型的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,包括:
固定所述第一翻译模型的解码器的词向量参数和编码器的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,所述第一翻译模型的编码器的词向量参数是基于所述第一类型的第一PLM中的词向量参数获取的,所述第一翻译模型的解码器的词向量参数是基于所述第二类型的第一PLM中的词向量参数获取的。
5.根据权利要求4所述的方法,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言不相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言不相同。
6.根据权利要求4所述的方法,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言相同。
7.根据权利要求4至6任一项所述的方法,其特征在于,所述第一类型的第一PLM是基于与所述高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一类型的第一PLM进行训练后获取的,所述第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与所述低资源平行语料的源语料采用的语言相同的第二单语语料,对所述初始的第一类型的第二PLM进行训练后获取的,所述初始的第一类型的第二PLM中除词向量参数之外的其他参数,和所述第一类型的第一PLM中除词向量参数之外的其他参数相同。
8.根据权利要求4至6任一项所述的方法,其特征在于,所述第二类型的第一PLM是基于与所述高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第二类型的第一PLM进行训练后获取的,所述第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与所述低资源平行语料的目标语料采用的语言相同的第二单语语料,对所述初始的第二类型的第二PLM进行训练后获取的,所述初始的第二类型的第二PLM中除词向量参数之外的其他参数,和所述第二类型的第一PLM中除词向量参数之外的其他参数相同。
9.根据权利要求1所述的方法,其特征在于,所述高资源平行语料的源语料采用至少两种语言,所述低资源平行语料的源语料采用至少两种语言,所述第一翻译模型和所述第二翻译模型用于对所述两种语言进行互译,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于所述第二PLM的词向量参数获取的,所述固定第一翻译模型的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,包括:
固定所述第一翻译模型的解码器的词向量参数和所述第一翻译模型的编码器的词向量,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型。
10.一种机器翻译的方法,其特征在于,包括:
获取待翻译语句;
通过目标翻译模型对所述待翻译语句进行翻译,以获取翻译结果,所述目标翻译模型是基于低资源平行语料对第二翻译模型进行训练后获取的,所述第二翻译模型的词向量参数是基于第二预训练语言模型PLM的词向量参数获取的,所述第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,所述第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,所述第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,所述训练后的第一翻译模型是固定第一翻译模型的词向量参数的情况下,基于所述高资源平行语料对所述第一翻译模型进行训练后获取的,所述第一翻译模型的词向量参数是基于所述第一PLM中的词向量参数获取的,所述第一PLM的词向量参数所在的向量空间和所述第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内。
11.根据权利要求10所述的方法,其特征在于,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言相同,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言不相同,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的解码器的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除解码器的词向量参数之外的其他参数获取的,所述第一翻译模型是在固定所述第一翻译模型的解码器的词向量参数的情况下,基于所述高资源平行语料对所述第一翻译模型进行训练后获取的。
12.根据权利要求10所述的方法,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言不相同,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除编码器的词向量参数之外的其他参数获取的,所述第一翻译模型是在固定所述第一翻译模型的编码器的词向量参数的情况下,基于所述高资源平行语料对所述第一翻译模型进行训练后获取的。
13.根据权利要求10所述的方法,其特征在于,所述第一PLM包括第一类型的所述第一PLM和第二类型的所述第一PLM,所述第二PLM包括第一类型的所述第二PLM和第二类型的所述第二PLM,所述第一类型的第一PLM的词向量参数用于表示,与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二类型的第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,所述第一类型的第二PLM的词向量参数用于表示,与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二类型的第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数是基于所述第一类型的第二PLM的词向量参数获取的,所述第二翻译模型的解码器的词向量参数是基于所述第二类型的第二PLM的词向量参数获取的,所述第一翻译模型是在固定所述第一翻译模型的解码器的词向量参数和编码器的词向量参数的情况下,基于所述高资源平行语料对所述第一翻译模型进行训练后获取的,所述第一翻译模型的编码器的词向量参数是基于所述第一类型的第一PLM中的词向量参数获取的,所述第一翻译模型的解码器的词向量参数是基于所述第二类型的第一PLM中的词向量参数获取的。
14.根据权利要求13所述的方法,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言不相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言不相同。
15.根据权利要求13所述的方法,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言相同。
16.根据权利要求13至15任一项所述的方法,其特征在于,所述第一类型的第一PLM是基于与所述高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一类型的第一PLM进行训练后获取的,所述第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与所述低资源平行语料的源语料采用的语言相同的第二单语语料,对所述初始的第一类型的第二PLM进行训练后获取的,所述初始的第一类型的第二PLM中除词向量参数之外的其他参数,和所述第一PLM中除词向量参数之外的其他参数相同。
17.根据权利要求13至15任一项所述的方法,其特征在于,所述第二类型的第一PLM是基于与所述高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第二类型的第一PLM进行训练后获取的,所述第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与所述低资源平行语料的目标语料采用的语言相同的第二单语语料,对所述初始的第二类型的第二PLM进行训练后获取的,所述初始的第二类型的第二PLM中除词向量参数之外的其他参数,和所述第一PLM中除词向量参数之外的其他参数相同。
18.根据权利要求10所述的方法,其特征在于,所述高资源平行语料的源语料采用至少两种语言,所述低资源平行语料的源语料采用至少两种语言,所述第一翻译模型和所述第二翻译模型用于对所述两种语言进行互译,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于所述第二PLM的词向量参数获取的,所述第一翻译模型是在固定所述第一翻译模型的解码器的词向量参数和所述第一翻译模型的编码器的词向量的情况下,基于所述高资源平行语料对所述第一翻译模型进行训练后获取的。
19.一种模型训练的装置,其特征在于,包括:
第一训练模块,用于获取第一预训练语言模型PLM的词向量参数和第二PLM的词向量参数,所述第一预训练语言模型PLM的词向量参数用于表示第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,所述第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,所述第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同;
第二训练模块,用于固定第一翻译模型的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,所述第一翻译模型的词向量参数是基于所述第一训练模块获取的第一PLM中的词向量参数获取的;
第三训练模块,用于基于所述低资源平行语料,对第二翻译模型进行训练,以获取训练后的所述第二翻译模型,所述第二翻译模型的词向量参数是基于所述第一训练模块获取的所述第二PLM的词向量参数获取的,所述第二翻译模型中除词向量参数之外的其他参数,是基于所述第二训练模块获取的训练后的所述第一翻译模型中除词向量参数之外的其他参数获取的,所述第一PLM的词向量参数所在的向量空间和所述第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内。
20.根据权利要求19所述的装置,其特征在于,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言相同,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言不相同,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的解码器的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除解码器的词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除解码器的词向量参数之外的其他参数获取的,所述第二训练模块,具体用于:
固定所述第一翻译模型的解码器的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型。
21.根据权利要求19所述的装置,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言不相同,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数是基于所述第二PLM的词向量参数获取的,所述第二翻译模型中除编码器的词向量参数之外的其他参数,是基于训练后的所述第一翻译模型中除编码器的词向量参数之外的其他参数获取的,所述第二训练模块,具体用于:
固定所述第一翻译模型的编码器的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型。
22.根据权利要求19所述的装置,其特征在于,所述第一PLM包括第一类型的所述第一PLM和第二类型的所述第一PLM,所述第二PLM包括第一类型的所述第二PLM和第二类型的所述第二PLM,所述第一类型的第一PLM的词向量参数用于表示,与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二类型的第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量,所述第一类型的第二PLM的词向量参数用于表示,与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二类型的第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数是基于所述第一类型的第二PLM的词向量参数获取的,所述第二翻译模型的解码器的词向量参数是基于所述第二类型的第二PLM的词向量参数获取的,所述第二训练模块,具体用于:
固定所述第一翻译模型的解码器的词向量参数和编码器的词向量参数,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型,所述第一翻译模型的编码器的词向量参数是基于所述第一类型的第一PLM中的词向量参数获取的,所述第一翻译模型的解码器的词向量参数是基于所述第二类型的第一PLM中的词向量参数获取的。
23.根据权利要求22所述的装置,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言不相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言不相同。
24.根据权权利要求22所述的装置,其特征在于,所述高资源平行语料的目标语料采用的语言和所述低资源平行语料的目标语料采用的语言相同,所述高资源平行语料的源语料采用的语言和所述低资源平行语料的源语料采用的语言相同。
25.根据权利要求22至24任一项所述的装置,其特征在于,所述第一类型的第一PLM是基于与所述高资源平行语料的源语料采用的语言相同的第一单语语料,对初始的第一类型的第一PLM进行训练后获取的,所述第一类型的第二PLM是在固定初始的第一类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与所述低资源平行语料的源语料采用的语言相同的第二单语语料,对所述初始的第一类型的第二PLM进行训练后获取的,所述初始的第一类型的第二PLM中除词向量参数之外的其他参数,和所述第一PLM中除词向量参数之外的其他参数相同。
26.根据权利要求22至24任一项所述的装置,其特征在于,所述第二类型的第一PLM是基于与所述高资源平行语料的目标语料采用的语言相同的第一单语语料,对初始的第二类型的第一PLM进行训练后获取的,所述第二类型的第二PLM是在固定初始的第二类型的第二PLM中除词向量参数之外的其他参数的情况下,基于与所述低资源平行语料的目标语料采用的语言相同的第二单语语料,对所述初始的第二类型的第二PLM进行训练后获取的,所述初始的第二类型的第二PLM中除词向量参数之外的其他参数,和所述第一PLM中除词向量参数之外的其他参数相同。
27.根据权利要求19所述的装置,其特征在于,所述高资源平行语料的源语料采用至少两种语言,所述低资源平行语料的源语料采用至少两种语言,所述第一翻译模型和所述第二翻译模型用于对所述两种语言进行互译,所述第一PLM的词向量参数用于表示,与所述高资源平行语料的目标语料采用的语言相同的第一单语语料中各个词的词向量以及与所述高资源平行语料的源语料采用的语言相同的第一单语语料中各个词的词向量,所述第二PLM的词向量参数用于表示,与所述低资源平行语料的目标语料采用的语言相同的第二单语语料中各个词的词向量以及与所述低资源平行语料的源语料采用的语言相同的第二单语语料中各个词的词向量,所述第二翻译模型的编码器的词向量参数和解码器的词向量参数均是基于所述第二PLM的词向量参数获取的,所述第二训练模块,具体用于:
固定所述第一翻译模型的解码器的词向量参数和所述第一翻译模型的编码器的词向量,基于所述高资源平行语料对所述第一翻译模型进行训练,以获取训练后的所述第一翻译模型。
28.一种翻译装置,其特征在于,包括:
获取模块,用于获取待翻译语句;
翻译模块,用于通过目标翻译模型对所述获取模块获取的所述待翻译语句进行翻译,以获取翻译结果,所述目标翻译模型是基于低资源平行语料对第二翻译模型进行训练后获取的,所述第二翻译模型的词向量参数是基于第二预训练语言模型PLM的词向量参数获取的,所述第二翻译模型中除词向量参数之外的其他参数,是基于训练后的第一翻译模型中除词向量参数之外的其他参数获取的,第二PLM的词向量参数用于表示第二单语语料中各个词的词向量,第一PLM的词向量参数用于表示第一单语语料中各个词的词向量,所述第一单语语料采用的语言,和高资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,所述第二单语语料采用的语言,和低资源平行语料的源语料、目标语料中的至少一种语料采用的语言相同,所述训练后的第一翻译模型是固定第一翻译模型的词向量参数的情况下,基于所述高资源平行语料对所述第一翻译模型进行训练后获取的,所述第一翻译模型的词向量参数是基于所述第一PLM中的词向量参数获取的,所述第一PLM的词向量参数所在的向量空间和所述第二PLM的词向量参数所在的向量空间之间的偏差在预设范围内。
29.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机装置上运行时,使得所述计算机装置执行如权利要求1至9任一项所描述的方法。
30.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机装置上运行时,使得所述计算机装置执行如权利要求10至18任一项所描述的方法。
31.一种芯片,其特征在于,所述芯片与存储器耦合,用于执行所述存储器中存储的程序,以执行如权利要求1至9任一项所述的方法。
32.一种芯片,其特征在于,所述芯片与存储器耦合,用于执行所述存储器中存储的程序,以执行如权利要求10至18任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110466719.4A CN113239708B (zh) | 2021-04-28 | 2021-04-28 | 一种模型训练的方法、翻译的方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110466719.4A CN113239708B (zh) | 2021-04-28 | 2021-04-28 | 一种模型训练的方法、翻译的方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113239708A CN113239708A (zh) | 2021-08-10 |
CN113239708B true CN113239708B (zh) | 2023-06-20 |
Family
ID=77129762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110466719.4A Active CN113239708B (zh) | 2021-04-28 | 2021-04-28 | 一种模型训练的方法、翻译的方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113239708B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115114939B (zh) * | 2022-04-28 | 2024-03-22 | 腾讯科技(深圳)有限公司 | 翻译模型的训练方法、语句翻译方法、装置、设备、程序 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111460838A (zh) * | 2020-04-23 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 智能翻译模型的预训练方法、装置和存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7170984B2 (ja) * | 2018-03-02 | 2022-11-15 | 国立研究開発法人情報通信研究機構 | 疑似対訳データ生成装置、機械翻訳処理装置、および疑似対訳データ生成方法 |
CN108829684A (zh) * | 2018-05-07 | 2018-11-16 | 内蒙古工业大学 | 一种基于迁移学习策略的蒙汉神经机器翻译方法 |
CN109117483B (zh) * | 2018-07-27 | 2020-05-19 | 清华大学 | 神经网络机器翻译模型的训练方法及装置 |
US11037028B2 (en) * | 2018-12-31 | 2021-06-15 | Charles University Faculty of Mathematics and Physics | Computer-implemented method of creating a translation model for low resource language pairs and a machine translation system using this translation model |
CN110334361B (zh) * | 2019-07-12 | 2022-11-22 | 电子科技大学 | 一种面向小语种语言的神经机器翻译方法 |
CN110472252B (zh) * | 2019-08-15 | 2022-12-13 | 昆明理工大学 | 基于迁移学习的汉越神经机器翻译的方法 |
CN111178094B (zh) * | 2019-12-20 | 2023-04-07 | 沈阳雅译网络技术有限公司 | 一种基于预训练的稀缺资源神经机器翻译训练方法 |
CN111178097B (zh) * | 2019-12-24 | 2023-07-04 | 语联网(武汉)信息技术有限公司 | 基于多级翻译模型生成中泰双语语料的方法及装置 |
-
2021
- 2021-04-28 CN CN202110466719.4A patent/CN113239708B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111460838A (zh) * | 2020-04-23 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 智能翻译模型的预训练方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113239708A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112487182B (zh) | 文本处理模型的训练方法、文本处理方法及装置 | |
Tan et al. | Neural machine translation: A review of methods, resources, and tools | |
JP6845486B2 (ja) | 神経網基盤機械翻訳およびマスコーパス(Math Corpus)を利用した数学問題概念類型予測サービス提供方法 | |
EP4206994A1 (en) | Model compression method and apparatus | |
WO2023160472A1 (zh) | 一种模型训练方法及相关设备 | |
CN111951805A (zh) | 一种文本数据处理方法及装置 | |
CN112883149B (zh) | 一种自然语言处理方法以及装置 | |
WO2021238333A1 (zh) | 一种文本处理网络、神经网络训练的方法以及相关设备 | |
CN112597778B (zh) | 一种翻译模型的训练方法、翻译方法以及设备 | |
CN112288075A (zh) | 一种数据处理方法及相关设备 | |
Pramanik et al. | Text normalization using memory augmented neural networks | |
WO2021082086A1 (zh) | 机器阅读方法、系统、装置及存储介质 | |
CN116432019A (zh) | 一种数据处理方法及相关设备 | |
CN115512005A (zh) | 一种数据处理方法及其装置 | |
CN115688937A (zh) | 一种模型训练方法及其装置 | |
CN113239708B (zh) | 一种模型训练的方法、翻译的方法以及装置 | |
CN114757210A (zh) | 翻译模型的训练方法、语句翻译方法、装置、设备、程序 | |
CN116680575B (zh) | 模型处理方法、装置、设备及存储介质 | |
CN113656563A (zh) | 一种神经网络搜索方法及相关设备 | |
CN110083842B (zh) | 译文质量检测方法、装置、机器翻译系统和存储介质 | |
Desai et al. | Lightweight convolutional representations for on-device natural language processing | |
Iskra et al. | Temporal convolutional and recurrent networks for image captioning | |
CN112765998A (zh) | 机器翻译方法、机器翻译模型训练方法、装置及存储介质 | |
Li | Research on Feature Extraction and Chinese Translation Method of Internet-of-Things English Terminology | |
Ou et al. | ADA: An Acronym-Based Data Augmentation Method for Low-Resource Text Classification |
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 |