摘 要:针对目前机器翻译模型存在的曝光偏差和译文多样性差的问题,提出一种基于强化学习和机器翻译质量评估的中朝神经机器翻译模型 QR-Transformer。首先,在句子级别引入评价机制来指导模型预测不完全收敛于参考译文;其次,采用强化学习方法作为指导策略,实现模型在句子级别优化目标序列;最后,在训练过程中融入单语语料并进行多粒度数据预处理以缓解数据稀疏问题。实验表明,QR-Transformer 有效提升了中朝神经机器翻译性能,与 Transformer 相比,中-朝语向 BLEU 值提升了 5.39,QE 分数降低了 5.16,朝-中语向 BLEU 值提升了 2.73,QE 分数下降了 2.82。
本文源自计算机应用研究 发表时间:2021-02-25《计算机应用研究》系中国计算机学会会刊之一,创刊于1984年,由国家科技部所属四川省计算机研究院主办,北京、天津、山东、吉林、云南、贵州、安徽、河南、广西、甘肃、内蒙古等十余省市计算中心协办的计算技术类学术刊物[1]。
关键词:机器翻译;中朝机器翻译;强化学习;机器翻译质量评估
神经机器翻译(Neural Machine Translation, NMT)首次由 Kalchbrenner 和 Blunsom 在 2013 年提出[1],之后几年间,大量基于编码器-解码器结构的神经机器翻译模型涌现[2~4],翻译性能和速度也不断被刷新。随着深度学习迅速发展,神经机器翻译由于其优越的性能和无须过多人工干预等特点,近年来备受关注[5,6]。朝鲜语是我国朝鲜族的官方语言[7],同时通行于朝鲜半岛、美国、俄罗斯远东地区等朝鲜族聚居地区,具有跨国跨地区的特点。朝鲜族是我国 24 个拥有自己语言的少数民族之一[8],因此中朝机器翻译的研究,对促进少数民族语言文字工作的发展、推动中朝、中韩跨语言信息交流具有重要的现实意义和迫切的时代需求。
目前,多数 NMT 模型在训练时采用教师强制策略,即最小化生成句子及参考译文之间的差异,迫使生成译文与参考译文无限接近。首先,由于在句子预测过程中通常没有参考译文可用,会带来曝光偏差问题,这可能会影响模型的性能与鲁棒性[9]。其次,语言中大量存在着同义词与相似表达现象,因此即使使用教师强制策略,也无法保证模型每次生成译文与参考译文一致,且会极大遏止翻译的多样性,使得大部分合理译文均为不可达状态[10]。另外,对于中朝机器翻译而言,国内对于该任务的研究起步晚、基础差,缺少大规模平行语料。在低资源环境下提升中朝机器翻译质量面临诸多问题。
获取优质的译文是机器翻译模型的基本要求和最终目标 [11],模型输出的译文应当达到预期的翻译质量。从实用角度考虑,机器翻译的评测指标应该是可调整的,即可以直接应用于机器翻译系统的优化[12]。因此本文尝试在句子级别引入一种评价机制来指导模型预测不完全收敛于参考译文,以此缓解曝光偏差问题和翻译多样性差问题。评价机制采用无参考译文的机器翻译质量评测 (Quality Estimation, QE),指导策略采用策略优化的强化学习方法,能够实现模型在句子级别上优化目标序列。为缓解强化学习本身存在公认的训练不稳定和方差大等问题,本文将传统神经机器翻译的交叉熵损失函数与强化学习奖励函数进行线性组合,并借鉴了 Weaver 等提出的基线反馈方法[9]。另外由于先前工作均采用 BLEU值[13]作为奖励函数[14,15],直接使用评价指标优化模型参数会导致模型产生严重偏向性,加剧了翻译多样性差的问题,因此本文提出了一种基于 QE 评价的奖励函数。同时在训练过程中使用单语语料和不同粒度的朝鲜语预处理,能够克服数据稀疏性并提升低资源语言机器翻译质量。
1 相关工作
1.1 Bilingual Expert 机器翻译质量评估模型
机器翻译质量评估不同于机器翻译的评价指标如 BLEU, TER[16],METEOR[17]等,它能够在不依赖任何参考译文的情况下,自动给出机器生成译文的质量预测。目前最常用的质量得分为人工编辑距离 HTER。HTER 需要语言学专家对机器生成译文进行后编辑,直至译文通顺且符合源句语义为止,这样计算得到的编辑距离即 HTER 分数。由于计算过程中采用非定向参考译文,因此机器翻译质量评估对于多样化的机器翻译更加友好。
为解决机器翻译质量评估问题,Kai 等在 2019 年提出了 Bilingual Expert 模型[18]。该模型由词预测模块和质量评估模块两部分组成。首先通过平行语料对词预测模块进行训练,训练过的词预测模块可提取到翻译特征,其次将获取特征和质量得分标注输入至质量评估模块训练,最终可实现对待评估句子质量的自动评估。词预测模块通过双向自注意网络模型获取当前被预测词的上下文信息,从而对目标端单词进行预测。质量评估模块将词预测模块抽取出的特征通过 BiLSTM 回归预测模型得到反映译文质量的得分。
1.2 基于自注意力的神经机器翻译
Vaswani 等提出的机器翻译架构 Transformer[19]模型基于编码器-解码器结构,该模型完全摈弃了循环[5]和卷积[20]操作,开创性地使用自注意力机制来实现序列解码问题,解决了传统网络结构并行力差和长距离依赖问题。
如图 1 所示,Transformer 模型的编码器由 n 层堆叠形成,每层又包含多头注意力和全连接前馈神经网络两个子层,并均在其后添加残差连接[21]和层归一化[22]操作。模型使用多头缩放点积注意力,当输入维度为 dk 的请求 Q 、键 K 和维度为 dv 的值 V 时,注意力机制可表示为
Attention ( ) softmax T dk = QK Q,K,V V (1) 多头注意力机制可表示为 ( ) ( ) 1 h i MultiHead ( ) =Concat head ,..., e & head head =Att nt n io Q K V i i i Q,K,V Q K W W , W ,V (2)
解码器部分与编码器基本相同,不同之处在于在每层添加了交叉注意子层用来对源隐藏状态进行多头关注。另外为了在解码器预测目标序列时保持下文单词不可见状态,加入了掩码操作。
1.3 基于强化学习的机器翻译模型
强化学习通过从环境状态映射到动作过程中获取最大累计奖赏,解决了复杂状态空间下的决策问题,为自然语言处理任务提供了新思路[23]。在序列级任务中引入强化学习,使得训练过程中直接优化奖励,解决了训练和预测过程中依赖分布不同导致的曝光偏差问题。大量工作表示出强化学习在序列生成任务中的优势[24,25]。
强化学习的基本思想是智能体根据当前交互环境选取一个执行动作,之后环境以某概率发生转移并反馈给智能体一个奖惩,智能体以最大化奖励为目的重复上述过程[26]。具体到翻译任务中,NMT 模型视为作出决策的智能体,采用随机策略 从词表中选取候选词看做一个动作,智能体训练期间的目标是追求期望奖励最大化,即: ( ) * a a t a = argmax | ; t s (3)
2 翻译模型框架结构
为缓解曝光偏差问题和翻译多样性差问题,本文提出了一种基于强化学习和机器翻译质量评估的中朝机器翻译模型 (Quality Estimation Reinforced Transformer, QR-Transformer)。 QR-Transformer 在句子级别引入评价机制指导模型预测不完全收敛于参考译文。模型具体框架结构如图 2 所示,主要包含机器翻译和机器翻译质量评估两个模块。模型翻译模块采用编码器-解码器架构与 Transformer 保持一致,评估模块采用句子级别的机器翻译质量评估模型 Bilingual Expert,采用强化学习方法进行训练。训练算法如下:
算法 1 模型训练算法输入: (a s t t | ;) 。输出: (a s t t + + 1 1 | ;) 。初始化参数 ; 初始化状态 t s ; while 未收敛: if t s 不是终止状态: 根据策略 (a s t t | ;) 选择出动作 t a ; 选取下一单词 t 1 y + ; 通过质量评估模块计算奖励 tr 并进入新状态 t 1 s + ; for 状态-动作集合的每一步: 更新参数 + − (r b a s t t t ) log | ( ) ; end for return
机器翻译过程中 NMT 系统作为强化学习的智能体,通过不断与环境进行交互获取当前时刻环境状态信息,即时间步 下源句 及生成目标句的上文 。其中 表示时间步 之前模型预测的目标句。智能体根据当前环境的状态决策出下一步所选单词,同时获得当前状态执行选词操作后的奖励值并进入下一状态,通过强化学习最终找到翻译的最优策略。
根据模型结构将机器翻译任务描述为:给定中朝平行语料,训练一个参数为的机器翻译模型 M;机器翻译模型 M将 给定源句序列 x= , ,..., ( x x x 1 2 n ) 翻译为目标句序列 y= , ,..., ( y y y 1 2 n ) ,其中 nm, 分别为源句及目标句的序列长度;在时间步 t 时,状态 yt 定义当前时间步翻译模型 M生成的目标句 yt t = , ,..., ( y y y 1 2 ) ,动作 定义为在当前环境下选取下一个单词 yt+1 ;给定译文数据及其 HTER 得分,训练参数为的机器翻译质量评估模型 Q,进行有监督训练之后的质量评估模型 作为奖励函数的生成器对未见译文给出质量打分 ( ) ˆ Score y QE t ,机器翻译模型 M在 ( ) ˆ Score y QE t 的指导下与环境交互从而产生下一个单词 。
2.1 基于机器翻译质量评估模型的反馈信号生成
优秀的译文通常包括忠实度、流利度等多方位评价,因此机器翻译任务难以抽象成简单的优化问题。所以本文不直接采用人工设定单一规则作为奖励函数来源,而使用机器翻译质量评估模型 Q的输出作为奖励的一部分,模型 Q可以通过相对复杂的网络结构对生成译文进行更为全面的评分,评分结果与人类评价更具有相关性,且对译文多样性的包容度更高。
本文中模型 Q使用与 Bilingual Expert 相同的网络结构,模型包括一个基于双向 Transformer 的词预测模块和基于 BiLSTM 回归预测模型。双向 Transformer 架构包括源句的自注意力编码器、目标句的双向自注意力编码器和目标句的重构器三个部分。通过在大规模平行语料上进行预训练获取隐藏状态特征 h 。编码器部分对应 q h x y ( | , ) ,解码器部分对应 P y h ( | ) ,计算公式如下:
q h x y q h x y q h x y = (4) ( | ) ( | , ) t t t t p y h p y h h = (5) 隐藏状态 h h h = ,..., ( 1 m ) 为前向后向隐藏状态的拼接,获取了句子深层次的翻译特征。最后提取特征如下: Concat , , , , ( 1 1 ) mm t t t t f h h e e f = − + (6) 其中, 1 1 , e e t t − + 为目标位置前后词项词嵌入表示, mm f 为错误匹配特征。最后将特征 输入至 Bi-LSTM 进行训练得到预测 HTER 得分: HTER =sigmoid Bi-LSTM ( ( )) w f T (7) 训练过程目标函数为 2 arg min||HTER-HTER ||2 (8)
式(7)中得到的标量值即为机器翻译质量评估模块对生成译文的评价,与 BLEU 值相比更具有深层次翻译特征,因此 QR-Transformer 使用该值对机器翻译模块进行指导,达到预测译文不完全收敛于参考译文的效果。
2.2 基于强化学习的训练方法
基于强化学习的翻译任务中,采用随机策略 (at | ; st ) 从词表中选取候选词看做一个动作,智能体在训练过程中,通过解码器生成目标句后环境给出的奖励来学习得到更优译文。 (at t | ; * s W s b t = + ) ( ) (9) 其中: (at | ; st ) 表示选择动作的概率, 代表 sigmoid 函数;代表策略网络的参数。训练期间,动作采样表示为给定源句和上文下选取该词的条件概率 ,目标为追求期望奖励最大化,如式(4)所示。当生成完整目标句后,将句子的质量评估得分作为标签信息计算反馈值,结合强化学习算法中的 Policy Gradient 方法[27]最大化预期收益,如公式(10)所示。 ( ) ( ) ( ) ( ) ˆ ˆ 1 ˆ 1 ( ) i ˆ ˆ ˆ N N i y p y x i i y Y J E R y p y x R y = = = = ∣ ∣ (10)
其中 Y 是候选翻译句子组成的空间,R y( ˆ) 表示译文的句子级反馈,因为在时间步 t+1的状态完全由时间步 t 的状态决定,因此概率 与 p(S S t+1 t | ,at ) 为 1。最终使用梯度更新策略,如式(11)所示。 ( ) 1 1 1 ( ) ( - ) log | N L L t n t J R b a N = = = − t s (11)
其中, N 代表回合数, ,REINFORCE 算法的梯度估计存在较大差异,这主要是由于使用单个样本来估计期望值所致。为了减少差异,在每个时间步 t 从返回的奖励中减去平均奖励,作为更新策略的实际奖励,从而避免迭代方向一直朝着错误方向进行,加快收敛速度。
3 强化学习模型的训练
3.1 基于波束搜索的动作采样策略
基于强化学习的机器翻译任务动作空间巨大且离散,其大小为整个单词表容量。在对动作空间进行采样时,使用穷举搜索可以保证获取到最佳动作,但其计算成本过高,贪心策略计算成本小但无法保证获取最优序列。因此需要一个合理策略权衡性能与计算成本的关系。
波束搜索(beam search)[28]是贪心搜索的改进版本,它设置一个超参数波束大小 k 。在时间步 t 选择具有最高条件概率的样本作为候选输出序列。在随后时间步中,对上一时间步选出的候选序列重复上述操作。波束搜索的计算成本介于贪心搜索和穷举搜索之间。特别地,当波束大小为 1 时,波束搜索退化为贪心搜索。通过灵活选择波束大小,能够在性能与计算成本之间进行权衡。波束搜索原理示意如图 3 所示。
具体到机器翻译任务中,波束搜索使得模型在解码阶段保留概率最高 k 个候选词项,并留至下一时间步继续计算产生 k 个隐层状态,维持波束大小不变会产生 k k 个预测结果,根据预测结果不断生成序列直至产生句子结束符时终止。由于在每一时间步考虑了多种可能性,使得解码阶段产生高质量翻译结果的概率增大。
3.2 融合 BLEU 值和 QE 分值的反馈函数设计
建立恰当的奖励机制对获取高质量翻译至关重要,因此设计高泛化能力的反馈函数是研究的重点。在以往的神经机器翻译任务中,均假设生成目标句每个词项的有效预测值唯一,即针对每个句子具有固定的参考译文,因此最小风险培训方法[29]或基于强化学习的神经机器翻译模型[14,15]均使用生成句子与参考译文之间的相似得分 BLEU 值作为训练目标。然而在自然语言中,同一源句片段可对应多个合理翻译,基于 BLEU 值的反馈函数无法对参考译文以外的词汇给出合理的奖惩力度,使得大部分合理译文被否定,极大限制了强化学习对翻译效果的提升,加剧了机器译文多样性差问题。因此本文将反馈函数设置为 ( ) ( ) ( ) 1 ˆ ˆ ˆ 1 t BLEU t QE t R y Score y Score y − = + + (12)
其中, Score y BLEU t ( ˆ ) 为生成译文与参考译文之间的归一化 BLEU 值, 为生成译文的归一化 QE 评估得分;超参数 用于平衡 BLEU 值和 QE 得分之间的权重,避免引入QE 得分后有可能加重训练不稳定的问题,从而使得训练能在较快速度收敛的同时充分考虑到翻译的多样性。
在机器翻译任务中,智能体需要采取数十个动作来生成一个完整目标句,但生成完整序列后仅可获得一个终端反馈,且序列级的奖励无法区分每一词项对总奖励的贡献程度,因此存在奖励稀疏问题,这会导致模型收敛速度缓慢甚至无法学习。奖励塑造(Reward shaping)可缓解这一问题。该方法为解码的每个时间步都分配一个即时奖励,需要将奖励对应至词语级别,设置为 r y R y R y t t t t ( ˆ ) = − ( ˆ ) ( ˆ −1 ) (13)
在训练期间,每完成一次采样动作均计算一个累计奖励作为当前序列反馈值,两个连续时间步之间的反馈差值为词项级别奖励。这样模型在每次动作结束后都可获取当前时间步的即时奖励,从而缓解了奖励稀疏问题。实验证明,使用奖励塑造不会改变最优策略,同时由于整个序列的奖励值为每个词项级奖励之和,与序列级奖励值保持一致,因此不会影响序列总奖励。 ( ) 1 ( ) ˆ ˆ T t t t t R y r y = = (14)
3.3 损失函数设计
为稳定强化训练过程,缓解强化学习可能带来的较大方差,本文将 MLE 训练目标与 RL 目标相结合。具体步骤是在损失函数中保留传统机器翻译的交叉熵损失函数,然后与强化学习训练目标进行线性组合。混合后的损失函数为 L L L combine mle rl = + 1 − ( ) (15) 其中, 表示结合损失函数, Lmle 表示交叉熵损失函数,表示强化学习奖励函数,是控制 Lmle 和 Lrl 的之间权重的超参数。由于模型在训练初期得到的译文比较粗糙,难以达到理想翻译效果,因此完全使用强化学习目标进行训练(即 =0 )时,会使得模型收敛困难,从而直接影响到模型翻译性能;而一昧地增大交叉熵损失函数的比例则会削弱强化学习对模型带来的性能提升。所以通过值对交叉熵损失和强化学习目标进行权衡,能有效实现模型效益最大化。
4 实验结果及分析
4.1 实验语料
实验用于训练翻译模型和译文质量评估模型的数据资源来自于本实验室承担“中韩科技信息加工综合平台”项目构建的中-英-朝平行语料[30]。原始语料包含 3 万余句,涉及生物技术、海洋环境、航天 3 个领域。为缓解数据稀疏问题,实验还使用了额外单语语料。按照本文任务进行预处理后得到的详细数据信息如表 1 所示。QE 任务的 HTER 得分由 TERCOM 工具自动计算得到。
4.2 多粒度数据预处理
大规模的语料词嵌入可以为模型提供充分的先验信息,加快模型的收敛速度,有效提升下游任务效果。然而朝鲜语属于低资源语言,缺乏大规模语料,因此语料中会存在大量低频词,进而导致词向量质量较低。针对这一问题,本文使用更加灵活的朝鲜语语言粒度进行词嵌入,以此缓解数据稀疏问题。朝鲜语属于表音音素文字,从语音角度而言,朝鲜语由音素按照规则构成音节,音节再构成语句。由于音素和音节数量相对固定(音素 67 个,音节 11172 个),使用这样的粒度构建词典的规模非常小,与其他粒度相比能够明显减少低频词的存在。另外从语义角度看,分词具有更清晰的形态以及语言特征。因此考虑使用音素、音节、词三个粒度对朝鲜语文本进行语料预处理。音素使用开源音素分解工具 hgtk 获取,音节直接通过读取字符获得,分词采用分词工具 Kkma。
4.3 实验设置
翻译模块在基于自注意力的编码器-解码器框架上实现, Transformer 系统采用与 Vaswani 等[14]描述相同的模型配置,具体实现采用谷歌大脑构建的 Tensor2Tensor 开源工具, dropout 设置为 0.1,词向量维数为 512,MLE 训练梯度优化算法使用 Adam 算法[31]并使用学习率衰减调度;机器翻译质量评估模块,特征提取部分编码器和解码器层数为 2,前馈子层隐藏单元数为 1024,注意力机制 head 数为 4;质量评估部分使用单层 Bi-LSTM,隐层单元设置为 512,梯度优化算法使用 Adam,学习率设置为 0.001;强化学习训练过程中使用 MLE 模型进行参数初始化,学习率设置为 0.0001,波束搜索宽度设置为 6。
4.4 实验结果
4.4.1 翻译性能
为验证模型的翻译性能,本文在相同硬件条件和语料规模下,与几个常见的代表性神经机器翻译模型进行中朝翻译对比实验。其中 LSTM+attention 模型使用 Bahdanau 等人[5] 提出的网络结构,并将循环单元替换为对长距离依赖更友好的 LSTM;Transformer 模型使用 Vaswani 等人[19]提出的基于自注意力的网络结构。分别计算各模型在测试集上的 BLEU 值和 QE 值,所得结果如表 2 所示。
从表 2 可以看出,QR-Transformer 在中-朝和朝-中两个方向的翻译任务上均可以超过基线模型,与 LSTM+attention 相比,中-朝语向 BLEU值提升了 9.87,QE分数降低了 59.68,朝-中语向 BLEU 值提升了 10.99,QE 分数下降了 57.76;与 Transformer 相比,中-朝语向 BLEU 值提升了 5.39,QE 分数降低了 5.16,朝-中语向 BLEU 值提升了 2.73,QE 分数下降了 2.82,引入评价模块有效提高了中朝机器翻译性能。
由于模型引入了机器翻译质量模块对翻译模块进行强化训练,因此为保证该策略的合理性和有效性,本文对机器翻译质量评估模块性能进行验证。验证指标采用 WMT 比赛使用的皮尔逊相关系数(Pearson’s Correlation Coefficient)、平均绝对误差(Mean Average Error, MAE)和平方根均方误差(Root Mean Squared Error, RMSE)。皮尔逊相关系数用于衡量预测值和真实值之间的相关性,正相关性越高则 QE 模块性能越好。平均绝对误差和平方根均方误差分别代表预测值和真实值之间绝对误差的平均值和均方误差的平方根,值越小越好。同 时 实 验 与 开 源 系 统 QuEst++[32]进 行 对 比 , 该系统为 WMT2013-2019 官方基线系统。具体实验结果如表 3 所示。
从表3实验结果可以看出,实验中采用的Bilingual Expert 相较于 QE 任务的基线系统 QuEst++有较好的性能提升,皮尔逊相关系数提高了 0.079,MAE 降低了 0.018,RMSE 降低了 0.007,与人工评价具有较高的相关性,证明了本实验采用的机器翻译质量评估模型的有效性。因此利用机器翻译质量评估模块来优化翻译模块是合理的。
在表 4 的翻译示例中,QR-Transformer 在中-朝、朝-中两个语向上得到的翻译较为准确,译文的流畅度和忠实度都符合目标语言规范,且译文质量明显优于其余基线模型,证明 QR-Transformer 可以有效提升中朝神经机器翻译模型的性能。
5 结束语
为缓解机器翻译任务中教师强制策略带来的曝光偏差和翻译多样性差的问题,本文提出了一种基于强化学习和机器翻译质量评估的中朝机器翻译模型 QR-Transformer。该模型在句子级别引入了一种评价机制,以此指导模型预测不完全收敛于参考译文。评价机制采用无参考译文的机器翻译质量评估,指导策略采用强化学习方法。实验结果表明,该方法能够有效提升中朝机器翻译的性能。在下一步工作中,本文将结合中文和朝鲜语的语言特点,探索更适配于中朝机器翻译评估的模型,从而进一步提升中朝机器翻译系统的性能。