赛博土木A-深度学习11:注意力机制
1 注意力提示
人类的注意力提示存在两种模式,分别是自主性与非自主性。非自主性是受外界环境影响例如突出的颜色,而自主性则是受人的主观影响。
非自主性注意力提示可以通过全连接层和池化层进行实现。
注意力机制引入了自主性提示(查询)。将感官输入称为值,每一个值都对应一个键。注意力机制通过注意力汇聚的方式,将查询与键进行匹配,进而引导至对应的值上。
2 Nadaraya-Watson核回归
对于回归问题最简单的估计器则是平均汇聚:
平均汇聚忽略了输入$x_i$,Nadaraya-Watson核回归输入的位置对输出$y_i$进行加权,其中$K$是核:
可以给出更一般的表示:
$x$表示查询,$(x_i,y_i)$表示键值对。用$\alpha(x,x_i)$表示键与查询的关系。
采用高斯核$K(u) = \frac{1}{\sqrt{2\pi}} \exp(-\frac{u^2}{2})$:
也可以引入参数:
3 注意力评分函数
将高斯核的指数部分称为注意力评分函数,简称评分函数。如下图所示,$a$ 表示注意力评分函数,其结果通过softmax函数后得到概率分布,最后和值结合获得一个加权平均值。
用数学语言描述,假设有一个查询$\mathbf{q}\in\mathbb{R}^q$和$m$个“键-值”对$(\mathbf{k}_1,\mathbf{v}_1),\ldots,(\mathbf{k}_m,\mathbf{v}_m)$,其中$\mathbf{k}_i\in\mathbb{R}^k$,$\mathbf{v}_i\in\mathbb{R}^v$。注意力汇聚函数$f$就被表示成值的加权和:
$\mathbf{q}$和键$\mathbf{k}_i$的注意力权重(标量)是通过注意力评分函数将两个向量映射成标量,再经过softmax运算得到的:
选择不同的注意力评分函数a会导致不同的注意力汇聚操作。
4 Bahdanau注意力
5 多头注意力
6 transformer
参考文献
[1] 《动手学深度学习》 — 动手学深度学习 2.0.0 documentation[EB/OL]. [2024-12-21]. https://zh.d2l.ai/.