Attention机制的理解

查询,键和值

注意力机制通过注意力汇聚将查询(自主性提示)和键(非自主性提示)结合在一起,实现对值(感官输入)的选择倾向。
——《动手学习深度学习》

训练的目标是对于新的x,能够根据f来预测出更准确的y。具体来说,训练阶段的每一个输入数据xi都对应输出数据yi,因此,输入数据可以看成大量的键值对,其中键表示输入数据,值表示输入数据对应的输出数据。

注意力机制就是利用了这样的信息,训练阶段,对于每一个输入,都可以看成是一个给定的查询,根据注意力汇聚,将查询转换为键的

查询和键之间的交互形成了注意力汇聚,如果查询和键xi越接近,那么分配给这个键的对应的yi的注意力权重就越大,即获得了更多的注意力。这样在新的x出现的测试阶段,也可以用训练好的注意力汇聚权重来确定没出现过的查询x输出的y

注意力机制的分类

1. 非参数注意力汇聚

  • Nadaraya-Watson核回归(Nadaraya-Watson kernel regression)

2. 带参数注意力汇聚

  • Nadaraya-Watson核回归 + 再乘一个学习的参数

注意力评分函数

注意力汇聚其实相当于是对值进行一个加权和,权重是根据什么来计算的呢? 就是将键和查询通过注意力评分函数映射成标量,再过一道softmax,得到每一个值对每一个键的一个概率分布,作为权重,因为是概率,所以相当于是一个加权和。

加性注意力

a(q,k)=wvTtanh(Wqq+Wkk)R

相当于把键和值线性映射一次,然后再相加,最后输入MLP里学习,激活函数是tanh,且没有偏置项。

缩放点积注意力

  • 需要查询和键具有相同的长度

a(q,k)=qTkd

参考

1 动手学习深度学习-10.注意力机制

posted @   阿莱慢慢来  阅读(125)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
点击右上角即可分享
微信分享提示