做网站销售的技巧,南宁小程序定制开发,营销网课,学校网站建设意义有哪些这篇文章是对《动手深度学习》注意力机制部分的简单理解。
生物学中的注意力
生物学上的注意力有两种#xff0c;一种是无意识的#xff0c;零一种是有意识的。如下图1#xff0c;由于红色的杯子比较突出#xff0c;因此注意力不由自主指向了它。如下图2#xff0c;由于…这篇文章是对《动手深度学习》注意力机制部分的简单理解。
生物学中的注意力
生物学上的注意力有两种一种是无意识的零一种是有意识的。如下图1由于红色的杯子比较突出因此注意力不由自主指向了它。如下图2由于有意识的线索是想要读书即使红色杯子比较突出注意力依旧指向了书籍。 图一 图二
卷积层、全连接层、池化层就好像无意识的注意力总是指向突出的特征注意力机制有区别于此它包含了有意识的注意力。
在注意力的背景下有意识线索想读书被称为Query无意识线索杯子、书等被称为Key感官的输入(视觉接收到的无意识线索)称为Value我们的目标是通过有意识线索Query)的引导将注意力放到权重较大的输入Value)上。
点积注意力 为什么相似度能衡量权重大小直观来讲我们在预测一个结果时通过尽可能的了解与我们相似的人或事情便对结果有了大致把握。想读书和书的相似度要比和水杯的高因此注意力引导在书本而不是水杯。
至于为什么除以根号d可以参考下面的解释。 图三 最后将得到的权重矩阵B与输入V点积其结果为n×v维的矩阵即每个查询通过权重矩阵B对输入V进行加权平均得到预测的结果。这种加权平均可以看作一种对输入信息的过滤或者是对输入信息的聚合。对同池化层的作用注意力机制可以看作一种带有意识线索的、有权重的池化层它不会像最大池化层只留下明显的特征也不会像平均池化层一视同仁的处理而是根据查询有轻重的保留特征。
目前为止经过感性与理性的认识应该大致清楚QKV各含义李沐老师在视频里将了另一个更直观的例子帮助理解。
假设有一个人想要了解自己到新公司的薪资Query), 他可以先了解在公司中其它人的情况(Key)其中与他具有相似技术、学历等特征的人权重当然比较大反之则会小那么通过对这些人的薪资Value)做加权平均可以估计得到我们想要Query)的薪资(Value)。
点积自注意力
一般来说QueryKeyValue 可以不相同即使Key和Value相同是容易理解的。比如上面的例子Value仅指薪资或者Value与key相同薪资作为Key的一个属性这都不妨碍得到想要的结果。但在Transformer的自注意力中QKV均相同Query是输入的tokensValue也是输入的tokens计算相似度矩阵也是在输入的tokens之间。因此注意力计算的结果使得每个token融合了其它tokens的信息实现全局信息交互当然更多的是自己的信息。
多头自注意力 普遍认为的是多头意味着有多组自注意力多组QKV参数多组参数学习token不同的特征部分使得学习具有多样性从而均衡一组QKV可能产生的偏差当然多头自注意力也使得每组参数空间变小。
也有工作[2]认为多层单头和多头都可以学习到不同子空间特征但是多头训练更具有稳定性。如24层16头transformer(BERT-large)和384层单头transformer的总注意头数相同模型尺寸大致相同但是多头自注意力使得网络层数更浅有利于训练。
参考
注意力机制 — 动手学深度学习 2.0.0 documentation (d2l.ai)
[2106.09650] Multi-head or Single-head? An Empirical Comparison for Transformer Training (arxiv.org)
简单理解注意力机制 - 知乎 (zhihu.com)
推荐文章
《Attention is All You Need》浅读简介代码 - 科学空间|Scientific Spaces (kexue.fm)