Attention注意力机制介绍

作者&投稿:伯兴 (若有异议请与网页底部的电邮联系)
~ Attention机制通俗的讲就是把注意力集中放在重要的点上,而忽略其他不重要的因素。其中重要程度的判断取决于应用场景,拿个现实生活中的例子,比如1000个人眼中有1000个哈姆雷特。根据应用场景的不同,Attention分为空间注意力和时间注意力,前者用于图像处理,后者用于自然语言处理。本文主要介绍Attention机制在Seq2seq中的应用。

我们知道在Seq2seq模型中,原始编解码模型的encode过程会生成一个中间向量C,用于保存原序列的语义信息。但是这个向量长度是固定的,当输入原序列的长度比较长时,向量C无法保存全部的语义信息,上下文语义信息受到了限制,这也限制了模型的理解能力。所以使用Attention机制来打破这种原始编解码模型对固定向量的限制。

Attention的原理就是计算当前输入序列与输出向量的匹配程度,匹配度高也就是注意力集中点其相对的得分越高。其中Attention计算得到的匹配度权重,只限于当前序列对,不是像网络模型权重这样的整体权重。

1)encode对输入序列编码得到最后一个时间步的状态c,和每个时间步的输出h,其中c又作为decode的初始状态z0。

2)对于每个时间步的输出h与z0做匹配也就是match操作,得到每个时间步的匹配向量α01,如图1。

3)对所有时间步的输出h与z0的匹配度α0,使用softmax做归一化处理,得到各个时间步对于z0的匹配分数。

4)求各个时间步的输出h与匹配分数的加权求和得到c0,作为decode的下一个时间步的输入,如图2。

5)计算各个时间步的输出h与z1的匹配度得到c1作为decode下一个时间步的输入,如此一步一步重复下去,如图3。

这样就可以把每个时间步重要的信息传给decode中,以上就是Attention机制的处理过程。其中match操作一般是求两个向量的相似度,通常有如下方法:
1)余弦相似度
2)一个简单的 神经网络,输入为hh和ww,输出为α
3)或者矩阵变换α=hTWzα=hTWz (Multiplicative attention,Luong et al., 2015) 

在tensorflow1.0版本以后的api seq2seq库中,包含了两种Attention算法,他们的区别就是match操作的不同,因此也有人称他们为加法Attention和乘法Attention,具体内容下:

1)BahdanauAttention:论文 https://arxiv.org/abs/1409.0473 中的实现:

2)LuongAttention:论文 https://arxiv.org/abs/1508.04025 中的实现 :

由于图片来自不同地方,所以符号有些不同,图4和图5中的h是上文所说的每个时间步的输出向量,d是decode中每个时间步的状态,也就是上文中的z,c是match后计算的权值加和后的向量用于decode中每个时间步的输入,a就是match操作中经过softmax后的匹配权重,v是一个向量,相当于w一样的权重需要去学习。有上面两个公式可以看出,BahdanauAttention和LuongAttention的区别就是在match过程中的计算方式不同,一个是将decode的状态与encode的输出求和,一个是求乘,所以才有了加法Attention和乘法Attention的叫法。

------------------------------------------------------------------更新---------------------------------------------------------------------

最近一段时间的学习,发现Attention的各种形式与用法,但是归根结底,都是同一种形式---Google的一般化Attention.

其中Q是query,K和V是一一对应的,相当于Key-Value的关系.一般情况下都会说求谁对谁的Attention,比如上面提到的Seq2seq中,decoder的隐状态z对encoder输出h的attention,那么隐状态z就相当于该式中的query,encoder的输出h就是key和value(这里key和value相等,也有不等的情况).所以如果说A对B的attention,那么A就是query,B就是key-value(key-value怎么分配看实际情况).这样,上文提到的内容就可以很容易的代入到一般会Attention中.先用query(decoder隐藏状态z)和key(encoder输出h)做点乘然后归一化,使用softmax计算权重得分,再与value(encoder输出h)相乘得到最后的向量.(attention的机制像极了key-value记忆网络的原理, 或者更准确的说是key-value记忆网络像极了attention的机制,使用query与key做匹配运算,求得相关度得分,然后使用该得分与value运算,得到最后的向量).

特别注意的是,如果Q,K,V的值都是一个的话,那么就称为Self Attention.

参考:

台大李宏毅课程


attenzione是什么意思(attention是什么意思)
αttention是什么意思 attention有关注;注意;关心;照料;立正;注意力;殷勤等多种意思。attention是不可数名词。1.(notice,interest)注意 toget\/have\/holdsb'sattention 引起\/得到\/攫住某人的注意 togivesbone'sfullattention 全神贯注在某人身上 topayattention(tosb\/sth)注意(某人\/某事物)payattent...

用pay more a ttention造句
You should pay more attention to your teacher's instruction. 你应该放更多注意力在老师的教学上。

开机显示 A TTENTION NO VIDEO INPUT 是什么意思??
检查显卡跟显示器之间的 信号线接触是否良好 另外电脑如果不能正常开机 也有这个显示的 总之你的显示器没有接受到 视频信号

哪位高手能帮我找到黑眼豆豆的don't lie歌词的中文翻译?
nononono, 是的你 kno kno kno 知道你必须试 什么你去做当它全部出来 当我见到你的时候 & 什么你关于所有的大约 nonono 小孩, nononono 君t 谎言 是的你 kno kno kno 知道你必须试 她说我m 离开 Cos 她能t 拿痛苦 它s 难的继续这爱它 aint 一样的 能t 忘记事物哪一 ive 完成了内部她的...

第一部分 英语知识运用(共四节,55分)第一节语音知识(共5小题,每小题1...
1—5 BCABA 略

Thinkpad T430u 3351 A64 装了Win7旗舰版后,关机屏幕黑了,但是小红点...
这个需要在安装之前开机按下F1进入BIOS,在Restart里把-OS Optimized Defaults选项里的Enabled改成Disabled然后出现Atention!对话框时按YES保存,再按F9初始化,再按F10回车后重启就可以装Windows 7了。

bad lntentions什么意思
Bad Intentions 恶性意图 双语例句 1.Good acts are well dawn bad intentions.好的行动胜过好的意向。2.I certainly don't want to accuse of them having bad intentions.我当然不想指责他们有不良意图。3.Google seems mystified by those who ascribe bad intentions to it.对于那些把坏的意图归咎...

寻找Black Eyed Peas 的《Don't Lie》中文歌词
I don't know the reason why I did these things 我不知道理由为什么我做了这些事物 [APL and FERGIE][APL 和 FERGIE]And I lie and I lie and I lie and I lie 而且我谎言和我谎言和我谎言和我谎言 And now our emotions are drained 而且现在我们的情绪是排出沟外 Cause I lie and I...

黑眼豆豆有首歌是这样的 NO NO NO NO NO baby是什么歌?
《Don't lie》歌名:Don't Lie 歌手:black eyed peas 专辑:monkey business Yeah, uhuh, la da da da da Hey, baby my nose is getting big I noticed it be growing when I been telling them fibs now you say your trust's gettin weaker probably coz my lies just started gettin ...

notice和pay_ttention_o的区别
1、词义不同:“pay_ttention_o”的意思是:注意;“notice”的词义除了注意,还有察觉、通告、通知等。2、侧重点不同:“notice”表示无意中察觉到、注意到;“pay_ttention_o”表示留心注意某件事。3、用法不同:“notice”既可以做名词使用,也可以做动词使用,如:I noticed a notice here.我...

理塘县13833052326: attention机制什么时候被提出 -
伏朱欣康: 2015年Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio发表的论文《Neural Machine Translation by Jointly Learning to Align and Translate》中首次提出Attention机制.

理塘县13833052326: 什么是注意?举例说明,注意的品质! -
伏朱欣康: 注意 : zhù yì [编辑本段]一、注意的概念注意,通常是指选择性注意,即注意是有选择的加工某些刺激而忽视其他刺激的倾向.它是人的感觉(视觉、听觉、味觉等)和知觉(意识、思维等)同时对一定对象的选择指向和集中(对其他因素的...

理塘县13833052326: 哪些因素会影响消费者的注意attention? -
伏朱欣康: 吸引因素 据调查,在人员推销现场有近80%的人在看了一眼推销人员或听了一句推销人员的谈话后,就不再理会.即使是继续听或看,其注意力的集中程度将大大下降.由此说明第一印象是非常重要的.通常情况下,人们只会把注意放在与本人...

理塘县13833052326: 什么是儿童注意力缺陷多动症?
伏朱欣康: 南京新世纪中医院中医儿科 专家介绍注愈力缺陷多动症( attention一deficit hyperactivity disorder,ADHD)是以与年龄不相称的多动、注惫力不集中、任性、易冲动为主要特征的行为障碍.其钾力基本正常,但有学习困难、运动功能不协调及心理异常.

理塘县13833052326: attention和pay attention to的区别 -
伏朱欣康: attention和pay attention to的区别:意思不同、用法不同、侧重点不同 一、意思不同 1.attention意思: 注意;注意力;照料;留心;关怀;(口令)立正 2.pay attention to意思:注意; 留意 二、用法不同 1.attention用法:表示“注意”时,是...

理塘县13833052326: ATTENTION是什么意思 -
伏朱欣康: ATTENTION的意思是:注意力;注目;注意事项ATTENTION 读法 英 [ə'tenʃ(ə)n] 美 [ə'tɛnʃən] 短语: 1、immediate attention 注视;及时关注 2、pay no attention to 不注意,不在意 3、matters need attention 注意事项 4、call attention ...

理塘县13833052326: 注意力集中地和注意力集中的怎么说 -
伏朱欣康: '注意力集中地'是副词:attentively'注意力集中的'是形容词:attentive名词形式:attention

理塘县13833052326: 吸引某人的注意用英语怎么说 -
伏朱欣康: 吸引某人的注意的英文:Attract sb's attention attention 读法 英 [ə'tenʃ(ə)n] 美 [ə'tɛnʃən]作名词的意思是:注意力;关心;立正!(口令) 短语 1、voluntary attention 有意注意 ; 随意注意 ; 自愿性注意 ; 非有意的注意 2、attention ...

理塘县13833052326: attention什么意思
伏朱欣康:n. 注意,注意力; 照料,关怀; 殷勤; int. [口令] 立正;

理塘县13833052326: Attention
伏朱欣康: 注意,名称

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网