我是靠谱客的博主 酷酷石头,最近开发中收集的这篇文章主要介绍《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”,因此应该是相似的。

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

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

最后

以上就是酷酷石头为你收集整理的《Attention-via-Attention Neural Machine Translation》的全部内容,希望文章能够帮你解决《Attention-via-Attention Neural Machine Translation》所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部