随着Transformer(Vaswani et al, 2017)及其变种(Shaw et al., 2018; Wu et al., 2019)的提出,宽而浅的模型结构在神经机器翻译模型受到偏好,如Transformer big模型使用了6层的编码器和解码器结构以及1024维的隐含层维度信息。但是,深层神经网络模型在基于RNN的GNMT模型以及BERT上得到了有效性验证,那么这种深层结构对于Transformer在机器翻译任务上是否有帮助呢?本文提出了一种通过增加编码器深度的方式来训练Transformer模型,在几乎不损耗推理速度的情况下在测试集上达到了新的state-of-the-art。

论文地址:
https://arxiv.org/pdf/1906.01787.pdf

引言

神经机器翻译(Neural Machine Translation, NMT)模型通过学习序列映射和使用注意力机制在机器翻译任务上达到了十分优秀的效果。最早的NMT模型基于循环神经网络RNN实现了4-8层的网络结构。随着Transformer模型的提出,宽而浅的网络模型结构被证明在机器翻译任务中是有效的,如Transformer Big模型,使用了6层的编码器和解码器,同时使用了1024维的隐含层维度表示。与此同时,深层网络结构又因为在Transformer上容易出现梯度消失或爆炸问题难以训练。因此,如何有效地将深层结构应用在Transformer上成为了一个研究的难点。

数据集

文章使用的语料来自于1):WMT16英-德语料,一共包含4.5M的句子;2):NIST12 中英语料,一共包含1.9M的句子。
本文采用的baseline模型分别为前正则(pre-norm)的Transformer base/big 模型以及后正则(post-norm)的Transformer base/big 模型。

模型训练

原生Transformer模型在其结构中使用了后正则(post-norm)的形式,如图1所示。

而在其他Transformer模型的变种中,也有使用前正则(pre-norm)的结构形式,如Transformer在Tensor2tensor的具体实现便是使用了前正则。在浅层网络结构(如模型只有6层)中,前正则与后正则的表现几乎是一样的。但当模型加深时,由于前后正则的不同表现形式(如图2),后正则容易陷入梯度消失的问题,难以训练。因此,前正则是解决深度网络结构在Transformer的应用的关键。

受到线性多跳机制(Linear Multi-step Method, LMM)的启发,论文提出了使用动态多层线性组合(Dynamic Linear Combination of Layers,DLCL)的方式解决深层结构导致的梯度消失/爆炸问题。
对于第i层的状态yiy_iyi​,它由之前层的状态与其对应的权重WjiW_j^iWji​控制,其中权重W是可以训练的。对于前正则结构而言,其第l+1层的状态计算公式如下:

对于后正则而言,其第l+1层的状态计算公式如下:

其中,LN表示层正则(layer normalization)。
这种结构的好处是,1)对于前后正则来说都可以使用;2)只有非常轻量的计算开销,对于一个深层网络结构来说是可以接受的。

从图3可以看出,与之前的工作相比,使用了DLCL结构的网络模型,其动态权重作用于每一层而不是最顶层,证明了DLCL结构是一种更加通用的结构形式。
与LMM相比,首先,DLCL结构以端到端的方式学习权重表示;其次,DLCL结构能够不受限制地处理每一层的信息。

实验细节

论文使用Transformer作为baseline模型。模型采用BPE分词方式。
对于wmt16英德任务,论文使用了一个32k大小的共享词表,newstest2013作为验证集,newstest2014作为测试集。
对于NIST12中英任务,论文使用了一个44k大小的中文词表和一个33k大小的英文词表,使用NIST MT06作为验证集,NIST MT04、MT05、MT08作为测试集。
所有实验均使用8块Nvidia Titan V GPU。模型使用Adam作为优化函数,β1=0.9,β2=0.98,ϵ=1e−8\beta_1=0.9,\beta_2=0.98,\epsilon=1e^{-8}β1​=0.9,β2​=0.98,ϵ=1e−8,学习率采用先递增后按照逆平方根递减的方式变化,warmup_step=4000,初始学习率设为1e-7。使用Label Smoothing=0.1作为正则项,
论文采用checkpoint平均的方式进行最后的测试,使用最后5个epoch的checkpoint作为平均的权重文件。在解码参数设置方面,采用beam search的方式进行解码。分别对英德和中英设置beam size为4和6,长度惩罚项为0.6和1.0。

实验结果

论文报道了在WMT’16 En-De和NIST’12 Zh-En测试集上的表现。



从图4中可以看出,采用后正则的模型在模型深度达到20层时已经难以训练了,但是前正则依旧可以完成训练。在使用DLCL结构的情况下,即使不依赖于前正则结构,依旧有能力训练足够深层(20层)的网络模型,在结合前正则的情况下,DLCL能够训练更加深层的网络模型(30层)。
从图6来看,随着模型增加到一定深度(20层),传统的Transformer模型性能开始下降,而是使用了DLCL结构的模型性能依旧能够上升,直到30层左右才开始出现性能下降。

结论

神经网络的模型的拓展通常指向两个维度,一个是宽而浅的宽度模型,另一个则是深而窄的深度模型。通过加宽网络宽度,如增加隐含层维度,已经在大量的实验中被证明是有效的;而对于深度模型,由于其不可避免的梯度消失/爆炸导致的模型难以训练的问题,使得很少有实验能够将一个网络模型增加到足够的深度。本文提出的DLCL结构和前正则的巧妙使用虽然在浅层模型中看上去差别不大,但在深层模型中却使得模型训练成为了可能。在今后,随着网络结构的拓展和优化,或许会有更多更深层的模型得到应用。


扫码识别关注,获取更多论文解读

ACL 2019 | 机器翻译深层模型相关推荐

  1. 每周一起读 × 招募 | ACL 2019:基于知识增强的语言表示模型

    "每周一起读"是由 PaperWeekly 发起的论文共读活动,我们结合自然语言处理.计算机视觉和机器学习等领域的顶会论文和前沿成果来指定每期论文,并且邀请论文作者来到现场,和大家 ...

  2. 读完ACL 2019录取的30篇知识图谱论文,我发现了这5点趋势

    作者 | Michael Galkin 译者 | Freesia 编辑 | 夕颜 出品 | AI科技大本营(ID: rgznai100) [导读]近年来,自然语言处理领域中广泛应用的知识图谱(KGs) ...

  3. 中文NLP的分词真有必要吗?李纪为团队四项任务评测一探究竟 | ACL 2019

    作者| Yuxian Meng.Xiaoya Li.Xiaofei Sun.Qinghong Han.Arianna Yuan. Jiwei Li 译者 | Rachel 责编 | Jane 出品 | ...

  4. 在刚刚结束的ACL 2019上,知识图谱领域都发生了哪些大事?

    来源:机器之心 本文约6500字,建议阅读10分钟. 本文将介绍本届 ACL 收录的一些知识图谱方向的优秀成果,希望对读者们有所启发. [ 导读 ]对知识工程的研究贯穿于整个人工智能的发展史.作为目前 ...

  5. 科学家王海峰:从百度十篇论文入选ACL 2019说起

    http://hz.m.chinanews.com/wapapp/toutiao/business/2019/05-29/8850698.shtml 2019-05-29 17:13:09 中新网5月 ...

  6. ACL 2019年度回顾:自然语言处理发展趋势

    大数据文摘出品 来源:mihaileric 编译:赵伟.邢畅.张秋玥 今年7月底,计算语言学协会年会(ACL)在风景优美的佛罗伦萨召开.会场设在了一座古老的Medici家族的城堡中. 作为NLP研究最 ...

  7. ACL 2019 知识图谱的全方位总结

    来源:AI科技评论 翻译 | 栗峰 审校 | Camel 编辑 | Pita ACL 2019已经结束,但其空前的规模仍然震撼人心:2900多篇提交论文,660篇被接收,3000多名会议注册人员,以及 ...

  8. ACL 2019最佳论文出炉:华人团队包揽最佳长短论文一作,中科院、华为等榜上有名...

    郭一璞 安妮 边策 发自 凹非寺 量子位 出品 | 公众号 QbitAI ACL 2019最佳论文新鲜出炉了. 刚刚,自然语言处理领域的顶会ACL 2019公布最佳论文,本次共颁布了4个奖项,共有8个 ...

  9. 李彦宏的文字游戏:百度10篇论文被自然语言处理顶级会议ACL 2019录用

    百度10篇论文被自然语言处理顶级会议ACL 2019录用 近日,自然语言处理(NLP)领域的国际顶级学术会议"国际计算语言学协会年会"(ACL 2019)公布了今年大会论文录用结果 ...

最新文章

  1. 切割图形_模型教程丨切割机使用——结合实例
  2. c语言程序设计歌手大奖赛,C语言二维数组怎么做:设计青年歌手参加歌曲大奖赛计分系统: 共...,怎样用c语言程序设计? 青年歌手参加歌曲大奖赛,有10个评委...
  3. esp32摄像显示时间_TinyPICO-比拇指还小的ESP32开发板- 国外创客众筹发现第二期
  4. jS四种函数的调用方式
  5. c++ array方法
  6. 分享到系统面板_win7电脑没有nvidia控制面板怎么办【解决方法】
  7. springboot使用jxls导出excel___(万能通用模板)--- SpringBoot导入、导出Excel文件___SpringBoot整合EasyExcel模板导出Excel
  8. red hat linux综合实验报告,实验一 Red Hat Linux 9.doc
  9. HTTP 错误 404.2 - Not Found 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面。...
  10. 为什么Spark比MapReduce快
  11. 软件设计师中级考试经验总结
  12. Mac快速录制音频工具:Recordia
  13. 证件照换背景-----ps
  14. OpenEuler树莓派基础实验 20212802范辰宇
  15. 二级考试c语言中 星号与字母 题型总结,计算机等级C语言上机考试编程题分类总结.doc...
  16. NBA表格_巅峰乔丹的进攻水平,是NBA常规赛历史最佳么?
  17. DC/DC转换器四大设计要点,这些技巧你掌握了吗?
  18. 千万不要和男生说:世界上没有奥特曼,否则你会见识到真正的奥特曼。
  19. 小米路由器 3G 开启SSH 安装 MT 工具箱 【环境搭建,小米路由器】
  20. 二进制、十进制、八进制、十六进制转换

热门文章

  1. mp4视频测试地址url
  2. vue组件测试-Vue Test Utils 应用入门
  3. linux 扫描wifi
  4. matlab 双均线,我的双级别双重均线系统的建立初探
  5. 计算机专业-找工作相关经验
  6. PowerPC下PCI、PCI-E设备的配置空间
  7. SpringCloud - 服务注册中心
  8. redis数据类型总结
  9. 为C盘爆满提供的一些解决方式
  10. 02 Java基础语法(变量+数据类型+运算符)