attention模型

以机器翻译为例说明:
普通的RNN机器翻译模型:
在这里插入图片描述
次结构弱点在于当target句子太长时,前面encoder学习到的embedding vector(红边框)可能会被后面的decoder遗忘。因此改进版本如下:
在这里插入图片描述

这样,每次在输入target的word的时候,除了可以看到上一个word,还可以看到最开始encoder学习到的embedding vector.

但是次结构的问题有:

  1. 只用一个emebdding vector代替一整个sequence, 可能最开始读入encoder的word最后算embedding vector的时候被遗忘。即:如果输入的sequence很复杂,就不能使用一个vector来描述输入sequence.

  2. 每次输入decoder的东西都是一样的,得到的结果也不会太好。

在机器翻译的时候,输出的一个target的word很大程度上来源于输入sequence中的某一个或者几个word,而不是真个句子。如下:

在这里插入图片描述

这就是attention模型的来历。即计算输出中的某个word与输入的所有word之间的相似度,最后将相似度加权求和。计算过程如下:

在这里插入图片描述

α 0 1 \alpha_0^1 α01有初始状态 z 0 z^0 z0 h 1 h^1 h1计算得到。

然后用 z 0 z^0 z0和每个输入计算matching score:

在这里插入图片描述

然后计算 z 0 z_0 z0与输入的attention score
在这里插入图片描述

得到输出 z 1 z^1 z1
在这里插入图片描述

接下来计算下个matching score c 1 c^1 c1:
在这里插入图片描述

然后一直重复下去。

图片来源于李宏毅课程。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值