一种基于混合粒度的句子级机器翻译质量估计模型训练方法与流程

文档序号:19189210发布日期:2019-11-20 01:53阅读:224来源:国知局
一种基于混合粒度的句子级机器翻译质量估计模型训练方法与流程

本发明属于机器翻译质量估计领域,提出了一种基于混合粒度的句子级机器翻译质量估计模型训练方法。



背景技术:

在机器翻译研究领域,质量估计(qualityestimation,简称qe)是指在不依赖于参考译文的情况下对机器翻译系统的输出进行质量预测,其结果可以快速的判断出机器翻译质量的好坏。这一功能对于机器翻译的研究人员和最终用户来说,都具有显而易见的应用价值,引起广泛关注。

在机器翻译质量估计任务中,存在不同语言粒度的质量估计任务,即需要在不同的语言粒度(如句子级、词级)下给出译文的质量。

随着深度学习的出现,通过对数据的分布式表示,缓解了传统机器学习方法数据稀疏的问题。因此,在机器翻译质量估计研究中,基于深度学习的机器翻译质量估计模型也成为了主流的研究方法。kimh等人提出了一种基于循环神经网络的预测器-评估器的深度模型,kaif等人提出基于双向transformer作为特征抽取模型,且将抽取的质量向量通过双向循环神经网络进行质量预测。这些基于深度学习的方法与传统方法相比均取得了更好的效果。

对于已有的基于深度学习的翻译质量估计模型的训练而言,其在各个语言粒度任务上的训练大都是相互独立的。但实际上,在各个粒度上的译文质量估计任务间存在明显的关联。例如,译文中的每个词的翻译质量都影响着句子整体的翻译质量,若机器译文中存在大量翻译错误的词,则译文的句子级得分将较差。相反的,若机器译文大部分词的质量标签是正面的,则该译文句子级得分将较好。

在机器翻译质量估计的研究中,句子级的翻译质量估计任务是应用最为广泛的子任务。对于已有的句子级翻译质量估计模型的训练方法,大都是在给定的句子级训练数据下训练得到,只有较少在句子级qe模型的训练时显式地引入来自其他语言粒度信息的方法。已有的使用来自其他语言粒度的信息的方法是从数据扩展的角度出发,即对于句子级的qe任务加入从其他语言粒度上转换得到的标注数据,从而增加了句子级的qe训练数据规模。这样的方法只是简单的扩充了训练数据的规模,并未在模型的学习与训练过程中引入额外语言粒度的信息。

鉴于已有句子级qe模型训练方法未考虑到各粒度任务之间存在联系的缺陷,本发明提出一种基于混合粒度的句子级机器翻译质量估计模型训练方法。通过显式地利用来自词语级翻译质量的信息,在句子级的翻译质量估计模型的训练过程中引入词语级翻译质量的约束,进而提升句子级翻译质量估计模型的性能。

在机器翻译质量估计任务中,若将源语言句子表示为s,机器译文表示为m,在机器译文上进行人工编辑所形成的可接受译文(称之为后编辑译文)表示为t,t将用于各个语言粒度的标注的生成。

具体地,对于句子级的质量估计而言,其输入为(s,m),输出为句子级翻译得分h。句子级的质量估计模型可表示为p(h|s,m),即在源语言句子s和机器译文m已知的条件下,对译文的质量分数h进行预测,其模型训练目标为:

其中,n为样本个数,为模型预测结果,hi为数据真实标签。

参照图1所示,图1为已有的不同粒度下主流翻译质量估计方法框架图。

对于词语级的质量估计而言,其输入为(s,m),输出为由ok或bad组成的质量标记序列y。词语级的质量估计模型可表示为p(y|s,m),即在源语言句子s和机器译文m已知的条件下,对译文中的每个词的质量标签y进行预测。目标函数为交叉熵函数:

其中,p(x)表示真实质量标签分布,q(x)表示预测的质量标签分布。

参照图1所示,已有的翻译质量估计模型的训练方法在训练p(h|s,m)与p(y|s,m)时模型各个模块的训练是相互独立的,并未利用各语言粒度间翻译质量存在的内在联系。



技术实现要素:

本发明的目的是提出一种基于混合粒度的句子级机器翻译质量估计模型训练方法,可以在训练句子级的翻译质量估计模型时,引入来自词语级的翻译质量信息,从而可以显式地利用不同语言粒度的翻译质量估计任务之间的内在关联,进而提升句子级粒度下翻译质量估计模型的性能。

本发明通过以下技术方案实现:一种基于混合粒度的句子级机器翻译质量估计模型训练方法,所述训练方法包括以下步骤:

步骤一:对机器译文进行词语级翻译质量标注;

步骤二:对源文和机器译文进行基于深度学习方法的翻译质量特征抽取;

步骤三:进行混合粒度的句子级翻译质量估计模型的训练,基于混合粒度的句子级机器翻译质量估计的训练目标为:

jmulti=λ*jsent+(1-λ)*jword

其中,jmulti为整体误差,jsent为句子级误差;jword为词语级误差;λ作为引入额外语言粒度信息的权重因子,是模型训练过程中的一个超参数,表示引入额外语言粒度信息所占的比重,

通过上述训练目标计算误差,再通过梯度反向传播更新模型的参数。

进一步的,步骤一包括以下步骤:

步骤一一:引入句子级翻译质量估计任务的标注数据(s,m,h,t),其中,s为源文,m为译文,h为句子级分数,t为后编辑译文;

步骤一二:通过机器译文m与人工后编辑译文t之间的编辑距离过程获得词语级翻译质量标签y;

步骤一三:用于混合粒度的句子级翻译质量估计的训练数据变为(s,m,h,y)。

进一步的,步骤二包括以下步骤:

步骤二一:在双语平行语料下训练得到特征抽取器;

步骤二二:使用特征抽取器对源文s和译文m进行编码,得到特征向量。

进一步的,步骤三包括以下步骤:

步骤三一:将特征向量作为将特征向量作为混合粒度的机器翻译质量估计器的输入,得到预测的句子级分数和词语级标签

步骤三二:对计算误差得到jsent和jword;

步骤三三:计算整体误差:

jmulti=λ*jsent+(1-λ)*jword

步骤三四:反向传播误差jmulti更新模型参数。

本发明的有益效果在于:本发明提出了一种基于混合粒度的句子级机器翻译质量估计模型训练方法,该方法相对于传统方法的优势主要在于:经过基于混合粒度的模型训练之后,与单一粒度下的训练相比,引入词语级上的翻译质量信息能取得较好的提升。

附图说明

图1为已有的不同粒度下主流翻译质量估计方法框架;

图2为本发明的一种基于混合粒度的句子级机器翻译质量估计模型训练方法的流程图;

图3为本发明的一种基于混合粒度的句子级机器翻译质量估计模型训练方法的模型架构图。

具体实施方式

下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图2-图3所示,本发明通过以下技术方案实现:一种基于混合粒度的句子级机器翻译质量估计模型训练方法,所述训练方法包括以下步骤:

步骤一:对机器译文进行词语级翻译质量标注;

步骤二:对源文和机器译文进行基于深度学习方法的翻译质量特征抽取;

步骤三:进行混合粒度的句子级翻译质量估计模型的训练,基于混合粒度的句子级机器翻译质量估计的训练目标为:

jmulti=λ*jsent+(1-λ)*jword

其中,jmulti为整体误差,jsent为句子级误差;jword为词语级误差;λ作为引入额外语言粒度信息的权重因子,是模型训练过程中的一个超参数,表示引入额外语言粒度信息所占的比重,

通过上述训练目标计算误差,再通过梯度反向传播更新模型的参数。

具体的,本发明为解决已有句子级翻译质量估计方法中未考虑到来自其他语言粒度翻译质量信息的问题,提出了一种基于混合粒度的句子级翻译质量估计训练框架。该框架是在句子级的翻译质量估计模型训练过程中,引入来自词语级语言粒度的翻译质量约束。

参照图2所示,在本部分优选实施例中,步骤一包括以下步骤:

步骤一一:引入句子级翻译质量估计任务的标注数据(s,m,h,t),其中,s为源文,m为译文,h为句子级分数,t为后编辑译文;

步骤一二:通过机器译文m与人工后编辑译文t之间的编辑距离过程获得词语级翻译质量标签y;

步骤一二:用于混合粒度的句子级翻译质量估计的训练数据变为(s,m,h,y)。

具体的,已有的句子级翻译质量估计任务的标注数据为(s,m,h),为引入来自词语级的翻译质量信息,需要额外对机器译文进行词语级标签的标注。本发明通过机器译文m与人工后编辑译文t之间的编辑距离计算过程获得词语级翻译质量标签,即对从m到t过程中需要被编辑的词标记上bad,否则被标记成ok。至此,用于句子级翻译质量估计的训练数据变成(s,m,h,y),其中(s,m)作为模型的输入。

参照图2所示,在本部分优选实施例中,步骤二包括以下步骤:

步骤二一:在双语平行语料下训练得到特征抽取器;

步骤二二:使用特征抽取器对源文s和译文m进行编码,得到特征向量。

具体的,从原理上,本方法适用于现有公开发表各种基于深度学习方法的句子级翻译质量估计模型。所以,本环节在实践中可以根据需要,灵活选择。

在本案中,特别是在后文提及的实验中,我们采用的是目前发表的论文中性能最好的基于transformer的翻译质量估计方法。这一方法型包含特征抽取与质量估计两个模块,具体的技术细节参见文献:fan,kai&li,bo&zhou,fengming&wang,jiayi.(2018)."bilingualexpert"canfindtranslationerrors。

参照图2所示,在本部分优选实施例中,步骤三包括以下步骤:

步骤三一:将特征向量作为将特征向量作为混合粒度的机器翻译质量估计器的输入,得到预测的句子级分数和词语级标签

步骤三二:对计算误差得到jsent和jword;

步骤三三:计算整体误差:

jmulti=λ*jsent+(1-λ)*jword

步骤三四:反向传播误差jmulti更新模型参数。

具体的,该方法通过在句子级翻译质量估计任务的已有优化目标上加入来自其他语言粒度的翻译质量估计优化目标,使得在模型的训练过程中可以显式地利用来自其他语言粒度的翻译质量信息。此外,由于不同的语言粒度上的翻译质量估计任务的优化目标仍存在差异,因此在引入其他语言粒度的翻译质量估计优化目标时,为其设定了权重因子以减少不同语言粒度间优化目标的差异对目标粒度翻译质量估计任务性能的影响。

为其引入来自词级别的翻译质量信息,基于混合粒度的句子级机器翻译质量估计的训练目标为:

mutiljs=λ*js+(1-λ)*jw

其中λ作为引入额外语言粒度信息的权重因子,是模型训练过程中的一个超参数,表示引入额外语言粒度信息所占的比重。

具体地,在训练数据(s,m,h,y)下,首先通过特征抽取模型及翻译质量估计模型计算得到预测的句子级得分与词级质量标签。在此基础上,通过上述训练目标计算误差,通过梯度反向传播更新模型的参数。

下面给出一个实验设计:

此外,本文分别在ccmt2019汉语-英语的句子级翻译质量估计任务的数据集上验证了本发明的性能。具体而言,在训练句子级翻译质量估计任务时,将词级的翻译质量估计标注作为外部信息引入已有句子级翻译质量估计任务的训练中。

本文使用句子级翻译质量估计研究中最常用的评价指标对本发明提出的方法进行评价。

·回归评价指标:pearson系数,mae,rmse。其中pearson相关系数越高代表效果越好,mae和rmse越低代表性能越好。

·排序评价指标:spearman系数。spearman相关系数越高代表效果越好;

实验结果:

表1给出了本文提出的方法在ccmt2019汉语-英语句子级质量估计任务的开发集上的表现。在表1中,基线方法代表已有的独立训练句子级翻译质量估计模型的方法。从表1中可以看到本发明提出的基于混合粒度的句子级翻译质量估计模型的训练在各个评价指标上均取得较好的提升。

表1:基于混合粒度的模型训练方法与基线方法性能对比

其中,↓表示该指标越低性能越好,↑表示该指标越高性能越好

可以看到,经过基于混合粒度的模型训练之后,与单一粒度下的训练相比,引入词语级上的翻译质量信息能取得较好的提升。

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