【技术实现步骤摘要】
一种基于任务层面课程式学习的非自回归机器翻译模型的训练方法和训练系统
本专利技术涉及非自回归机器翻译领域,尤其涉及一种基于任务层面课程式学习的非自回归机器翻译模型的训练方法和训练系统。
技术介绍
近年来,神经机器翻译(NMT)快速发展。通常,NMT采取编码器-解码器框架,目前解码器生成目标语句的主流方法为自回归方法,自回归方法的特点是当前单词的生成依赖于于之前单词的预测结果和来自编码器的源上下文。虽然采用自回归方式的NMT的精确性达到了人类的水平,但由于自回归方式必须逐词翻译,即在推理过程中,后面的单词一定要等前面所有单词都推理出来才能进行推理,在句子较长时,这种方法也伴随有较高的推理延迟。因此,非自回归翻译(NAT)提出了并行生成目标单词的方法,可以大大加快推理过程。对于非自回归方法,每个单词的预测不再参照于前面的单词,因此NAT的准确性低于自回归翻译(AT),采用传统的NAT训练方法较难训练,且最终得到的NAT模型翻译准确率较低。目前已有研究表明,并行度较小的任务(即并行生成单词数量较少的任务)训练得到的 ...
【技术保护点】
1.一种基于任务层面课程式学习的非自回归机器翻译模型的训练方法,其特征在于,所述方法包括:/n步骤1:建立机器翻译模型,包括编码器和解码器,所述的编码器采用Transformer模型中的编码器,所述的解码器通过将Transformer模型中的解码器中多头自注意力机制替换为causal-k自注意力机制得到,所述的causal-k自注意力机制通过参数k来调整每次迭代并行产生的单词数量;/n步骤2:获取源语句训练集,所述的源语句训练集标注有参考翻译结果语句;/n步骤3:将训练过程预先划分为三个阶段:当k=1时,为AT训练阶段;当1<k<N时,为SAT训练阶段,N用于表 ...
【技术特征摘要】
1.一种基于任务层面课程式学习的非自回归机器翻译模型的训练方法,其特征在于,所述方法包括:
步骤1:建立机器翻译模型,包括编码器和解码器,所述的编码器采用Transformer模型中的编码器,所述的解码器通过将Transformer模型中的解码器中多头自注意力机制替换为causal-k自注意力机制得到,所述的causal-k自注意力机制通过参数k来调整每次迭代并行产生的单词数量;
步骤2:获取源语句训练集,所述的源语句训练集标注有参考翻译结果语句;
步骤3:将训练过程预先划分为三个阶段:当k=1时,为AT训练阶段;当1<k<N时,为SAT训练阶段,N用于表示源语句中参考翻译结果语句的长度;当k=N时,为NAT训练阶段;并设定每一个训练阶段停止训练的条件;
步骤4:设计pacing函数,使得k=f(i)∈{2,4,8,16},其中f(i)表示pacing函数,i表示SAT训练阶段的第i次迭代;
步骤5:依次将causal-k自注意力机制中的参数k设置为k=1、k=f(i)、k=N,采用步骤2中的源语句训练集对步骤1建立的机器翻译模型分别进行AT训练阶段、SAT训练阶段和NAT训练阶段的训练,最终得到训练好的非自回归机器翻译模型。
2.根据权利要求1所述的基于任务层面课程式学习的非自回归机器翻译模型的训练方法,其特征在于,步骤5采用步骤2中的源语句训练集对步骤1建立的机器翻译模型分别进行AT训练阶段、SAT训练阶段和NAT训练阶段的训练,具体为:
步骤5.1:设定k=1,进入AT训练阶段,所述的AT训练阶段训练一个样本的过程为:
从源语句训练集中获取一个源语句(x1,…,xM),源语句的参考翻译结果语句为(y1,…,yN),其中xi表示源语句中的第i个单词,M表示源语句中单词的数量,yi表示源语句标注的参考翻译结果语句中第i个单词,N表示参考翻译结果语句的长度;将源语句(x1,…,xM)作为编码器的输入,将编码器输出和(x1,y1,…,yN-1)作为解码器的输入,得到源语句(x1,…,xM)的样本翻译结果;
每次完成一个训练batch后,根据参考翻译结果对模型参数进行调整,完成AT训练阶段的单次迭代训练;重复所述AT训练阶段的单次迭代训练过程,直至得到训练好的AT模型作为初始模型;
步骤5.2:进入SAT训练阶段,首先设计pacing函数用于调整causal-k自注意力机制中的参数k,公式为:
其中,i表示SAT训练阶段的迭代次数,fexp(i)表示pacing函数,SSAT表示SAT训练阶段的预设迭代次数,表示向下取整;
SAT训练阶段训练一个样本的过程为:
从源语句训练集中获取一个源语句(x1,…,xM),源语句的参考翻译结果语句为(y1,…,yN),其中xi表示源语句中的第i个单词,M表示源语句中单词的数量,yi表示源语句标注的参考翻译结果语句中第i个单词,N表示参考翻译结果语句的长度;在SAT训练阶段的第i次迭代时,计算k=fexp(i),将源语句(x1,…,xM)作为编码器的输入,将编码器输出和(x1,…,xk,y1,…,yN-k)作为解码器的输入,得到源语句(x1,…,xM)的样本翻译结果;
每次完成一个训练batch后,根据参考翻译结果对模型参数进行调整,完成SAT训练阶段的第i次迭代训练;重复SAT训练阶段的单次迭代过程,直至i=SSAT;
步骤5.3:设定k=N,进入NAT训练阶段,所述的NAT训练阶段训练一个样本的过程为:
从源语句训练集中获取一个源语句(x1,…,xM),其中xi表示源语句中的第i个单词,M表示源语句中单词的数量;将所述的源语句(x1,…,xM)作为编码器的输入,将编码器输出和源语句(x1,…,xM)作为解码器的输入,得到源语句(x1,…,xM)的样本翻译结果;
每次完成一个训练batch后,根据参考翻译结果对模型参数进行调整,完成NAT训练阶段的单次迭代训练;重复所述NAT训练阶段的单次迭代训练过程,直至得到训练好的NAT模型作为最终的非自回归机器翻译模型。
3.根据权利要求2所述的一种基于任务层面课程式学习的非自回归机器翻译模型的训练方法,其特征在于,所述的步骤5.2还包括:设定窗口w,用于表示在SAT训练阶段的每次迭代训练中同时训练的任务数量;
当w=1时,每个阶段只训练一个任务;
当w≥2时,每个阶段同时训练共w个任务。
4.根据权利要求3所述的一种基于任务层面课程式学习的非自回归机器翻译模型的训练方法,其特征在于,所述的w=2。
5.根据权利要求1所述的一种基于任务层面...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。