Self Attention 自注意力机制

Self Attention 自注意力机制selfattentio 是提出 Transformer 的论文 Attentionisa 中提出的一种新的注意力机制 这篇博文仅聚焦于 selfattentio 不谈 transformer 的其他机制 Selfattentio 直观上与传统 Seq2Seqatten 机制的区别在于 它的 query 和 massage 两个序列是相等的 广义注意力机制在谈论 sel

self attention是提出Transformer的论文《Attention is all you need》中提出的一种新的注意力机制,这篇博文仅聚焦于self attention,不谈transformer的其他机制。Self attention直观上与传统Seq2Seq attention机制的区别在于,它的query和massage两个序列是相等的。大家可能都以为self attention是attention的改进版,但其实self attention的设计思想来自RNN和CNN,希望这篇博文能对你有所启发。

广义注意力机制

在谈论self attention之前我们首先认识一下以KQV模型来解释的Attention机制。

Self Attention

Self Attention机制的优越之处

抖音算法面试题,Self Attention和Seq2Seq Attention相比,优越在哪里。

RNN本身对于长距离的依赖关系有一定的捕捉能力,但由于序列模型是通过门控单元使得信息保持流动,并且选择性地传递信息。但这种方式在文本长度越来越长的条件下,捕捉依赖关系的能力越来越低,因为每一次递归都伴随着信息的损耗,所以有了*Attention机制来增强对我们所关注的那部分依赖关系的捕捉*。除此之外,序列模型也不能对层次结构的信息进行有效的表达

Attention(包括self attention在内)本身的优点(相较于RNN而言):

  • 对长期依赖关系有着更强的捕捉能力
  • 可以并行计算
  • 元素与元素之间的距离从CNN的logarithmic path length进一步缩短到constant path length
  • 由CNN fixed size perceptive变成了variable-sized的 perceptive,具体的长度等于文本长度,这也是self-attention相对于普通attention的优点。
    在这里插入图片描述
    图片中的文字讲的是self-attention和卷积的区别,不能看作是优点。从图中能看出self-attention和卷积的关联之处

如果普通attention机制在一个窗口下计算attention score,正如我这篇博文介绍的attention机制,那么这种attention机制的感受野就只有窗口,而且随着窗口移动还需要计算多次。

所以self-attention相较于Seq2Seq attention还有另一个优点:

  • 一步矩阵计算得到了文本序列中任意两个元素的相似度,而且是以整个文本作为观察范围的。

Self-Attention归纳如下

在这里插入图片描述

Self-attention的优点归纳为以下:

在这里插入图片描述
Transformer里面一共有三种self-attetnion:
在这里插入图片描述
三种Self-attention的区别:
在这里插入图片描述



参考文献

  • 注意力机制(Attention Mechanism) – NLP算法面试
  • Attention and Self-Attention
  • Attention机制详解(二)——Self-Attention与Transformer
  • 完全图解GPT-2:看完这篇就够了(一)
  • Deep Learning: 9 Convolutional Networks
  • self-attention详解
  • 浅谈Attention机制的理解
  • 遍地开花的 Attention ,你真的懂吗
  • Tensor2Tensor Transformers New Deep Models for NLP
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220487.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午8:22
下一篇 2026年3月17日 下午8:22


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号