Attention机制的理解
查询,键和值
注意力机制通过注意力汇聚将查询(自主性提示)和键(非自主性提示)结合在一起,实现对值(感官输入)的选择倾向。
——《动手学习深度学习》
训练的目标是对于新的,能够根据来预测出更准确的。具体来说,训练阶段的每一个输入数据都对应输出数据,因此,输入数据可以看成大量的键值对,其中键表示输入数据,值表示输入数据对应的输出数据。
注意力机制就是利用了这样的信息,训练阶段,对于每一个输入,都可以看成是一个给定的查询,根据注意力汇聚,将查询转换为键的
查询和键之间的交互形成了注意力汇聚,如果查询和键越接近,那么分配给这个键的对应的的注意力权重就越大,即获得了更多的注意力。这样在新的出现的测试阶段,也可以用训练好的注意力汇聚权重来确定没出现过的查询输出的。
注意力机制的分类
1. 非参数注意力汇聚
- Nadaraya-Watson核回归(Nadaraya-Watson kernel regression)
2. 带参数注意力汇聚
- Nadaraya-Watson核回归 + 再乘一个学习的参数
注意力评分函数
注意力汇聚其实相当于是对值进行一个加权和,权重是根据什么来计算的呢? 就是将键和查询通过注意力评分函数映射成标量,再过一道softmax,得到每一个值对每一个键的一个概率分布,作为权重,因为是概率,所以相当于是一个加权和。
加性注意力
相当于把键和值线性映射一次,然后再相加,最后输入MLP里学习,激活函数是tanh,且没有偏置项。
缩放点积注意力
- 需要查询和键具有相同的长度
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!