持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第12天,点击查看活动详情
总计:今天是十月更文计划第十二天,第二十三篇
今天浅浅的学习一下注意力机制
注意力机制基本原理
在深度学习中注意力机制是当数据处理时对能对特定部分给予更多关注的一种机制。注意力是网络结构中能够负责管理和量化相互依赖关系的一个组件。
注意力机制简单的说,就是来决定哪一个输入部分为结果施加的影响最大。
注意力的分类
注意力的分类一般分为以下几类: (1)点乘注意力(dot)
e_ij=ℎ_i^Tℎ_j
(2)一般注意力(general)
e_ij=ℎ_i^Twℎ_j
(3)加性注意力(additive)
e_ij=w_2^Ttanh (w_1[ℎ_i;ℎ_j])
(4)神经网络注意力(MLP)
e_ij=σ(w_2^Ttanh(w_1[ℎ_i;ℎ_j]+b_1)+b_2)
注意力机制的基本原理/公式:
举例分析:
apple1 [1,1]
apple2[2,2]
apple3[3,3]
收到三个输入值:1.【1,2】,2.【3,4】,3.【5,6】
apple1 收到的权重为:1的输入为3,2的输入为7,3的输入为11
apple2收到的权重为:1的输入为6,2的输入为14,3的输入为22
apple收到的权重为:1的输入为9,2的输入为21,3的输入为41
apple1 收到的权重为:1的输入为3,2的输入为7,3的输入为11中进行归一化
e^3/e^3+e^7+e^11,这样的值才能落在0-1之内,达到一个小数,这个小数就是输入值1对apple1的影响权重,以此类推可以分别算出
e^7/e^3+e^7+e^11
e^11/e^3+e^7+e^11
以上就是权重,也就是对应公式的第二个。
第三个公式的计算:
比如说:apple1权重0.1,apple2权重0.3,apple3权重0.6
第三个公式的计算方法: 0.1*【1,2】
0.3【3,4】
0.6*【5,6】
将以上三个数字相加,那么这个二维向量就是输入到apple1的输入向量。其中apple3的影响力最大。
以上就是一个最基础的注意力机制运行的原理。
所以总结:
Soft Attention,每个权重取值范围为[0,1]
Hard Attention,注意力只会取0或者1,也就是说我们只会令某几个特定的有注意力,且权重均为1