• 工作总结
  • 工作计划
  • 心得体会
  • 领导讲话
  • 发言稿
  • 演讲稿
  • 述职报告
  • 入党申请
  • 党建材料
  • 党课下载
  • 脱贫攻坚
  • 对照材料
  • 主题教育
  • 事迹材料
  • 谈话记录
  • 扫黑除恶
  • 实施方案
  • 自查整改
  • 调查报告
  • 公文范文
  • 思想汇报
  • 当前位置: 雅意学习网 > 文档大全 > 公文范文 > 正文

    面向低资源俄汉机器翻译的领域适应方法

    时间:2022-12-08 12:15:02 来源:雅意学习网 本文已影响 雅意学习网手机站

    刘 欢,刘俊鹏,黄锴宇,黄德根

    (大连理工大学计算机科学与技术学院,辽宁 大连 116024)

    近年来,随着神经机器翻译(NMT)模型结构的改进[1-3]以及模型容量和数据规模的增加,通用领域高资源语言对之间的翻译效果已经接近人工水平.然而,NMT模型对于双语平行训练数据需求量大,翻译质量很大程度上取决于训练数据与输入文本的相关性.通用领域数据上训练的翻译模型,面对差异性较大的特定领域输入文本时表现不尽人意,而特定领域上往往难以获取足够规模的高质量平行语料来支撑NMT模型训练.

    利用丰富的域外语料来提升特定领域的模型性能的方法被称为领域适应[4].从数据角度,有数据增强[5]和领域微调[6]等领域适应方法.从模型角度,Bapna等[7]和Zhu等[8]在预训练好的模型上,冻结模型参数,插入多领域的适应性模块,只对适应模块进行微调,使得模型能适应多个领域的输入.同时,随着预训练模式的发展,mBART[9]、mRASP[10]等大规模预训练翻译模型凭借其庞大的训练数据优势,使得模型鲁棒性更好,能较好地迁移到特定翻译任务,改善翻译效果.

    本文针对旅游口语领域的俄汉低资源机器翻译,主要利用通用领域的大规模俄汉平行语料(http:∥statmt.org/wmt21/triangular-mt-task.html)进行数据增强,并使用多种微调方法进行领域适应,以改善旅游口语领域俄汉机器翻译性能.在数据预处理方面:针对小规模的俄汉口语领域数据,采用长度比过滤;
    针对大规模的俄汉通用领域数据,采用长度比和对齐模型过滤出质量较高的平行句对;
    然后使用词占比和语言模型进一步来筛选出接近领域内的数据.在模型参数方面,对小规模的旅游口语训练集和大规模通用领域语料筛选出来的训练集,用不同参数配置的Transformer模型训练NMT模型.然后对双语NMT模型、加入适应性模块的双语NMT模型和mRASP多语言预训练模型分别进行微调,根据验证集上的表现选择最优模型.在译文输出过程中,对长度惩罚因子等参数进行调优,最后进行了模型平均和后处理.

    本文使用第十七届全国机器翻译大会(CCMT2021)提供的旅游口语领域俄汉平行语料作为领域内训练集和验证集,同时使用WMT2021提供的通用领域俄汉数据作为额外数据.

    1.1 数据增强

    由于任务提供的旅游口语领域数据匮乏(约4.5万句对),直接训练NMT模型的翻译效果十分有限,因此首先用数据增强方法对数据进行扩充.回译是一种常见的数据增强技术,它通过训练一个目标语言到源语言的反向翻译模型,然后利用目标端单语数据生成伪平行语料.但由于没有足够规模的旅游口语单语数据,因此无法使用回译方法进行数据增强.从通用平行语料中筛选出与目标领域高度相似的数据是数据扩充的另一种方法.本文以WMT2021提供的俄汉翻译数据集作为通用领域数据,从中选择靠近旅游口语领域的平行语料.

    为此,对通用平行语料采用以下数据筛选方法:(a) Fast-align[11](https:∥github.com/clab/fast_align),对齐分数能一定程度上反映平行句对之间的对齐质量,按照对齐分数的大小排序,去掉得分最低的20%句对;
    (b) 词占比[12],过滤出与目标领域词级重合度较高的平行句对,具体地,对目标领域的汉语句子进行分词,取字长大于1、词频大于2的词构建目标词典,对通用领域的汉语句子进行分词,选取所有词均在目标词典中,即目标词占比为100%的句子;
    (c) 使用KenLM[13](https:∥github.com/kpu/kenlm)语言模型过滤出接近目标领域的平行句对,去掉语言模型分数最低的20%句对.

    1.2 数据预处理

    对旅游领域口语俄汉语料和通用领域俄汉语料进行统一预处理,处理过程如下:1) 过滤平行语料中重复的句对;
    2) 去除多余空格及非打印字符;
    3) 汉语全角字符转换为半角字符;
    4) 对俄语使用Moses脚本(https:∥github.com/moses-smt/mosesdecoder)分词,对汉语使用Jieba(https:∥github.com/fxsjy/jieba)分词;
    5) 对所有数据进行子词长度及长度比过滤:最大子词长度设置为250,最大子词长度比设置为2.6) 合并口语语料和通用语料,采用BPE算法[14]分别生成3.2×104大小的俄语和汉语词表.过滤及预处理后的语料数量和平均句子长度如表1所示.

    表1 过滤及预处理后的训练集语料数量统计

    由于大规模高质量的训练数据往往难以获取,而应用领域又广泛,因此通用模型不能很好地覆盖和适应所有领域.从领域外的训练数据迁移知识,通过微调来改进特定领域内的翻译,是一种高效的做法,并且在许多自然语言处理任务上都取得了良好的效果.

    根据预训练模型所含语言翻译方向的数量,可以分为传统的双语预训练模型微调和近期获得广泛关注的多语言预训练模型微调.对于NMT而言,由于双语模型中不存在模型容量竞争和语言学知识冲突,双语模型的性能通常会优于同等数据规模下的多语言模型.因此,本文通过引入通用俄汉数据,训练通用俄汉双语模型,然后利用旅游口语俄汉数据对预训练双语模型微调,以缓解域内数据稀缺问题.此外,随着数据规模和模型容量的增加,一些多语言预训练模型也取得了较好的性能,因此,本文也使用mRASP多语言预训练翻译模型进行微调.

    2.1 双语预训练模型微调

    首先,在通用训练集上训练通用领域的双语基线模型,在通用模型上使用口语训练集进行微调.然后,将通用训练集与旅游口语训练集混合,训练混合模型,在混合模型上再使用口语训练集进一步微调.

    除了数据使用角度,在模型结构上探索领域之间的共性与差异性也是领域适应的一种方法.本文使用Bapna等[7]提出的adapter模块来扩展预训练的NMT模型.如图1所示,适应模块是添加在编码器和解码器的每一层最后的微小前馈组件,这些模块化的适应层可以视为专门针对特定领域(或特定语言对)的专家,并可以逐步添加多个模块.这种解决方案避免了对整个NMT系统进行微调,而是使用适合目标任务的具有相对较少参数的适应模块,更具灵活性.本文对通用俄汉NMT模型,冻结模型参数后在每层前馈网络后插入适应模块,再使用口语训练集进行微调.图1中适应模块的输入矩阵和输出矩阵,其外部维度与Transformer隐层维度一致,对于内部维度,尝试了128,256,512三个具体维度,实验表明在本任务上内部维度设置为256较为合理,考虑到篇幅有限,后续实验只报告基于256内部维度的结果.

    图1 加入adapter模块的模型结构Fig.1 Model structure of adding the adapter modules

    2.2 多语言预训练模型微调

    近年来,各大企业发布的大规模预训练模型,因其庞大训练数据和自身结构优势,模型鲁棒性较好,在各项自然语言处理的下游任务上微调取得了较好的效果.在NMT模型中,多语言模型因其容纳翻译方向众多、部署高效而备受关注,多语言预训练翻译模型的效果也不断提升,甚至在部分语言对上超越了双语翻译模型.由于mRASP是面向机器翻译任务的多语言预训练模型,其翻译效果已经超过mBART,因此选择mRASP作为预训练模型进行微调.本文在mRASP多语言预训练模型上,使用俄汉口语训练集进行微调.

    3.1 模型平均

    模型平均[15-16]可以提升模型鲁棒性,有助于提高翻译质量.模型平均是将同一个模型在训练的不同时刻保存的模型进行参数平均,通常选择模型基本收敛时对应的最后N个时刻或是训练过程中得分最高的N个时刻的参数,以同等权重对参数进行平均,得到鲁棒性更强的模型.

    3.2 长度惩罚

    由于BLEU 指标偏向于较短的翻译结果,因此通常在解码搜索时使用长度惩罚因子进行约束.长度惩罚因子越大,解码生成的译文越长.对于不同语言和领域的翻译任务,默认的长度惩罚因子不一定是最佳选择.如表1所示,旅游口语语料的平均句长小于通用语料的平均句长,在预训练阶段,通用领域数据训练出来的模型更倾向生成长句子,为了更好地适应口语领域的短句风格,在译码时对长度惩罚因子进行了分析和调优.

    3.3 后处理

    由于数据预处理阶段,验证集和训练集经过了相同的全半角转换处理后,除了常见的中文标点符号,如“(”“:”“?”等,其余标点被转换成了半角.因此,后处理主要对生成译文的半角标点符号进行了还原,与验证集参考译文保持一致.

    4.1 实验参数设置

    所有实验基于开源框架Fairseq,并使用单张48 GB的Nvidia RTX A6000显卡进行训练和测试.对于Transformer模型,在训练数据充足的情况下,增加模型容量能有效地提高翻译性能,而训练数据稀缺时,适当减少隐层表示维度、编码器解码器堆叠层数反而更有益[17].基线1采用2层编码器2层解码器的浅层Transformer结构,注意力头数为2,词向量和隐层维度均为512,前馈神经网络的隐层维度为2 048;
    基线2和基线3使用Transformer-big参数设置.在不同的模型架构上测试dropout以获得合适的参数值,对于浅层模型,dropout设置为0.3,activation-dropout和attention-dropout设置为0.2;
    对于big模型,dropout设置为0.3,activation-dropout和attention-dropout均设置为0.

    使用Adam优化器,β1=0.9,β2=0.98,warm-up步数为4 000,每个批次的最大子词数量为16 384(训练和微调数据在5万以下时调整为8 192).预训练阶段,设置学习率为5×10-4,每2 000步保存一次模型,patience设置为10.微调阶段,由于不同微调方法的收敛速度不同,训练步数也有所不同,整体微调和adapter微调的最大步数分别设置为1×104和2×104步.每个微调模型都尝试5×10-4和4×10-5两种学习率,每200步设置检查点并计算BLEU分数.所有微调方法使用的数据均为口语训练集.

    4.2 实验结果

    1) 主要实验结果

    表2展示了不同系统在验证集上的BLEU分数,及使用微调技术后相对各基线模型的提升,所有分数均使用sacrebleu(https:∥github.com/mjpost/sacrebleu)计算基于字的BLEU4[18]值.由于mRASP生成译文的标点符号为全角,与验证集参考答案一致,而基线1~3及其微调模型生成译文的标点符号为全角,因标点符号的全半角不统一会造成BLEU略低,为了公平比较,将各模型译文与参考答案全半角统一后计算BLEU.表2报告的数值均为各模型在合适的学习率下,经过全半角处理的单个模型最高结果.

    表2展示了不同规模和领域的训练数据下,各基

    表2 不同系统在验证集的测试结果

    线模型及其微调的结果.#1、#2、#3为双语模型,训练数据分别为旅游口语训练集、通用领域训练集、旅游口语和通用领域训练集,数据规模逐渐增大.可以看到,随着训练数据和模型容量的增加,#1、#2、#3双语基线模型的BLEU分数明显提升,尤其是#3混合模型,混合了目标领域数据从头训练,相较#2通用模型的BLEU值提升了1.30个百分点.#4为mRASP语言预训练模型,训练数据为32个语言对上的1.97亿平行句对,对于未见的俄汉验证集BLEU值只有0.32%,mRASP 预训练模型通常需要在特定下游任务上微调.

    在各个双语和多语言预训练模型上分别使用传统的整体微调、插入Adapter适应模块两种微调方法.两种微调过程的BLEU变化曲线如图2所示.整体微调会改变模型整体参数状态,收敛速度快、无需增加额外模型容量,但是对学习率十分敏感,容易过拟合.Adapter微调方法会额外增加模型容量,并且只对增加部分的参数进行更新,但是微调过程更具鲁棒性,不易过拟合.另外,Adapter微调在通用双语模型和mRASP模型的表现有较大差异,这是由于双语模型的训练数据和微调数据较相似,而多语言模型需要较长训练时间去拟合单个语言方向的微调数据.

    图2 双语模型和多语言模型的微调变化趋势Fig.2 Fine-tuning trends of bilingual model and multilingual model

    如表2所示,在通用双语模型和混合双语模型上,整体微调方法的BLEU值分别提升了2.45和1.57个百分点,Adapter微调方法的BLEU值分别提升了2.76和1.99个百分点;
    而在mRASP多语言模型上,由于额外加入的模块收敛较慢,拟合难度较大,Adapter微调不如整体微调方法.mRASP模型直接微调获得了最好的效果,相比其它模型结果,微调效果提升明显.

    2) 模型平均和后处理

    以#3混合双语模型为例,选择微调阶段BLEU值最高的4个模型进行参数平均,实验结果如表3所示.由于微调阶段模型检查点设置得较为紧密(200步),因此单个模型的BLEU分数较为突出,模型平均在BLEU分数上的影响并不明显.对译文进行标点符号的后处理能进一步提高BLEU分数.

    表3 模型平均和后处理的BLEU分数

    3) 长度惩罚因子

    以#2通用双语模型为例,当模型基本收敛时,将束搜索大小固定为5,用验证集BLEU值进行评估,选择最合适的长度惩罚因子.实验结果如表4所示.将长度惩罚因子α调整到合适范围会对BLEU值产生正面影响,对于句子长度偏短的口语领域验证集,过大的长度惩罚因子可能会导致束搜索无法选择正确的翻译结果.

    表4 长度惩罚因子对BLEU分数的影响

    4.3 译文分析

    表5展示了测试集源句及本系统生成译文的例子,其中参考译文来自谷歌翻译.相比于仅使用域内数据训练的#1口语双语模型的译文,#3+adapter微调模型和mRASP+直接微调模型在BLEU值提高的同时,译文质量均有所改善.

    低资源神经机器翻译往往具有集外词影响翻译性能的问题,使用BPE算法进行较小粒度的翻译在一定程度上能缓解集外词影响.然而对于俄汉机器翻译,仅使用子词切分并不能有效解决具有组合词义的集外词现象,如表5源句中的“урок”单独出现时翻译为“教训”,是训练集中的高频词,“на урок”组合出现时翻译为“上课”,该组合在训练集中并未出现过,#3+adapter微调模型模型产生了错译.mRASP直接微调模型也未能很好地翻译这个组合,但由于mRASP多语言预训练模型所使用的训练数据规模庞大,包含丰富的语义知识,经过人工检查,相比双语微调模型,mRASP微调模型在测试集上的译文更流畅,此类词组错译情况更少.

    表5 源句及系统生成译文示例

    本文面向CCMT2021低资源语言评测项目俄汉语言对,介绍了通用语言模型对特定领域数据的领域适应方法.主要借助通用领域的大规模俄汉平行语料来提升旅游口语领域俄汉机器翻译性能.融合了词占比、Fast-align、语言模型等数据筛选方法,筛选出与域内数据相似的域外数据进行预训练,采用直接微调、加入领域适应模块微调以及在mRASP预训练模型微调,译码阶段使用合适的长度惩罚因子,模型平均和后处理,实验结果显示,这些方法能够明显提高低资源情况下旅游口语俄汉翻译的质量.

    猜你喜欢 微调语料双语 海量标注语料库智能构建系统的设计与实现现代计算机(2021年33期)2022-01-21乐海乐器“微调轴”研发成功乐器(2021年1期)2021-09-10浅谈视频语料在对外汉语教学中的运用长江丛刊(2019年25期)2019-11-15可比语料库构建与可比度计算研究综述电脑知识与技术(2019年23期)2019-11-03我国的民族优惠政策应往何处去?广西民族研究(2014年6期)2015-05-05快乐双语新晨(2013年7期)2014-09-29快乐双语新晨(2013年5期)2014-09-29快乐双语新晨(2013年10期)2014-09-29英语教学中真实语料的运用教学与管理(理论版)(2009年9期)2009-11-04双语秀小学生·多元智能大王(2006年1期)2006-01-18

    推荐访问:机器翻译 面向 领域

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章