《Attention-via-Attention Neural Machine Translation》

背景:由于许多语言源于共同的祖先语言并且相互影响,因此这些语言之间不可避免地存在相似性,例如词汇相似性和命名实体相似性。

思路:引入了一种注意力通过注意机制,它允许源侧角色的信息直接流向目标侧。 利用这种机制,当单词相似时,将基于源端字母的表示生成目标端字母。从而避免了字典的使用。

思路:首先字母级别的encoder处理源语句中的字母,根据语句中的空格,使用单词级别encoder处理源语句中的单词,在解码的时候,计算当前时刻的隐藏层状态时,首先使用单词级别的注意,得到单词上下文向量,然后再利用单词级别注意力计算字母级别注意力,得到字母上下文向量,把这两个上下文向量连接起来作为最终上下文向量,来计算decoder隐藏层状态。

首先encoder中字母RNN处理源语句中所有字母,用空格分辨是否是一个单词,当遇到一个空格的时候,把隐藏层状态传递给单词RNN,比如,然后单词RNN再利用这些隐藏层状态计算自己的隐藏层状态。解码的时候,首先是计算单词级别的注意力,通过decoder的隐藏层状态和encoder中单词RNN的隐藏层状态计算得到注意力的值,然后获得单词级别的上下文向量,接下来计算字母级别的注意力,把decoder的隐藏层状态,encoder的字母RNN隐藏层状态和单词级别上下文向量作为输入,计算字母级别的注意力值,然后获得字母级别的上下文向量,最后把单词级别和字母级别的上下文向量连接起来作为最终的上下文向量。

encoder字母级别RNN:
一个单向RNN提取字母级别表示

encoder单词级别bi-RNN:

根据句子中的空格提取隐藏层状态,比如图中的,分别表示“Expert”,“system”,和“</s>”,这里使用的双向RNN

从高层次到低层次的注意力机制:

单词级别注意力:

表示单词级别的双向RNN隐藏层状态,在计算得到权重值后,计算单词级别上下文向量

字母级别注意力:

是字母级别RNN的隐藏层状态,是单词级别的注意力,在计算得到权重值后,计算字母级别上下文向量。比如说目标端的总结了“Expe”,总结了源端的“Expe”,因此应该是相似的。

然后把单词级别上下文向量和字母级别上下文向量连接起来作为最终的上下文向量

解码的时候每个实践步输出一个字母

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值