Effective Approaches to Attention-based Neural Machine Translation【论文笔记】

一、摘要

  attention机制通过在翻译过程中选择性地专注于部分原句来提高神经机器翻译(Neural Machine Translation,NMT)的性能。然而,目前很少有用的基于attention的NMT架构。本篇论文介绍了两种简单有效的attention机制。全局attention关注原句的所有单词,局部attention关注原句的一部分单词。

二、介绍

  NMT通常是一个大型的神经网络,以端到端的方式进行训练,并且能够很好地推广到很长的单词序列。这意味着模型不用像标准的MT一样存储巨大的短语表和语言模型。NMT占用内存很少。实现NMT解码器比标准的MT更容易。
  在这篇论文中,作者提出了两种attention:global attention和local attention。前一种方法类似于(Bahdanau et al.,2015)的模型,但在结构上更简单。后者可被视为(Xu et al.,2015)中提出的soft attention 和 hard attention的混合:它比global attention或soft attention消耗更少的计算资源,同时,与hard attention不同,容易实现与训练。并且,作者也对基于attention的模型的各种对齐函数做了实验。

三、NMT

  神经机器翻译系统是直接建模条件概率 p ( y ∣ x ) p(y|x) p(yx)的神经网络,将原句 x 1 , . . . , x n x_1,...,x_n x1,...,xn翻译为目标句 y 1 , . . . , y m y_1,...,y_m y1,...,ym。NMT的基本形式由两个组件构成:一个编码器,用于计算每个原句的表示 s s s;一个解码器,一次生成一个目标词,因此将条件概率分解为:
在这里插入图片描述

  在解码器中对这种分解进行建模的自然选择是使用递归神经网络(RNN)架构。可以用公式来表示解码每一个单词 y j y_j yj的概率:
在这里插入图片描述
  其中 g g g 是转换函数,输出一个词表大小的向量。 h j h_j hj是RNN隐藏单元的输出,可以用以下公式计算:
在这里插入图片描述
  给定之前的隐藏层状态, f f f 函数计算当前的隐藏层状态。本篇论文中,作者使用了堆叠的LSTM结构,训练目标函数如下:
在这里插入图片描述

四、Attention-based Models

  两种attention:global attention 和 local attention。两种的不同在于是用到了全部单词还是部分单词。共同之处在于,在解码阶段的每个时间步 t t t,两种方法首先将堆叠LSTM的顶层处的隐藏层状态 h t h_t ht 作为输入。然后目标是推导出一个上下文向量 c t c_t ct,其捕获了相关的原测信息以帮助预测当前的目标词 y t y_t yt。虽然这两种attention在推导上下文向量是不同的,但它们的后序步骤是相同的。
  给定目标隐藏层状态 h t h_t ht,和原侧的上下文向量 c t c_t ct,将两个向量拼接在一起生成注意力的隐藏层状态:
在这里插入图片描述
  然后将其喂给softmax层,生成概率形式的向量。
在这里插入图片描述

1.global attention

  global attention 的主旨就是在推导上下文向量 c t c_t ct时,考虑编码器的所有隐藏层状态。在这种模型中,一个变长的对齐向量 a t a_t at,大小等于原侧的时间步数,通过比较目前的target隐藏层状态 h t h_t ht与每一个原测的隐藏层状态 _ h s ^\_h_s _hs
在这里插入图片描述
在这里插入图片描述
然后根据所有原状态和 a t a_t at 计算全局上下文向量ct作为加权平均值。最后通过Eq.(5)和Eq.(6)进行预测。
在这里插入图片描述

2.local attention

  global attention有个缺点就是它为每个目标词必须要关注原侧的所有单词,代价昂贵,并且可能使得翻译更长的序列变得不切实际,不如段落、文档。为了解决这个不足,作者提出了local attention机制,对每一个目标词,选择性地关注原句的一小部分单词。该方法具有避免在soft attention中引起的昂贵计算的优点,同时比hard attention更容易训练。具体细节来说,模型首先在时间t为每个目标词生成一个对齐位置 p t p_t pt。然后,上下文向量 c t c_t ct 通过窗口内 [ p t − D , p t + D ] [p_t-D,p_t+D] [ptD,pt+D] 的源隐藏状态集合的加权平均值推导得出。D的大小是凭经验选择的。与global attention不同,局部对齐向量 a t a_t at 是固定维度的,比如 ∈ R 2 D + 1 ∈R^{2D+1} R2D+1。下面考虑模型的两个变种:
  **Monotonic alignment:**假设原序列和目标序列大致单调对齐,我们只需设置 p t = t p_t = t pt=t
  **Predictive alignment:**而不是假设单调对齐,我们的模型预测对齐位置如下:
在这里插入图片描述
   W p W_p Wp v p v_p vp 是模型参数, S S S 是原句长度。那么通过 s i g m o i d sigmoid sigmoid 函数后, p t ∈ [ 0 , S ] p_t∈[0, S] pt[0,S]。为了支持 p t p_t pt 附近的对准点,我们将高斯分布置于 p t p_t pt 附近。 具体来说,我们的对齐权重现在定义为:
在这里插入图片描述
  我们使用Eq.(7)中的相同对齐函数,标准偏差根据经验设定为 σ = D / 2 σ = D/2 σ=D/2 p t p_t pt 是一个实数。
在这里插入图片描述

3.Input-feeding Approach

  作者提出的两种attention都是独立进行的,然而这是不理想的。在标准的MT中,通常在翻译过程中保持覆盖集以跟踪已翻译过的单词。同样,在注意力NMT中,应该在考虑过去的对比信息的情况下共同做出对比决策。为了解决这个问题,作者提出了input-feeding的方法,其中attention向量   h t ~ h_t  ht 在下一个时间步时会与输出拼接在一起。 这会有两个方面的影响:我们希望让模型充分了解先前的对齐选择,我们创建了一个跨越水平和垂直的非常深的网络。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值