注意力机制(三)(不同注意力机制对比)

​🌈 个人主页十二月的猫-CSDN博客
🔥 系列专栏 🏀《深度学习基础知识》

      相关专栏: 《机器学习基础知识》

                         🏐《机器学习项目实战》
                         🥎《深度学习项目实战(pytorch)》

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 

目录

回顾

注意力机制本质 

注意力机制是父类

注意力机制的限制 

自注意力机制

交叉注意力机制 

 XXX注意力机制

总结


回顾

前面两篇文章:

注意力机制(一)(基本思想)-CSDN博客

注意力机制(二)(自注意力机制)-CSDN博客

主要介绍了注意力机制的基本思想,以及注意力机制中一个常见的类型——自注意力机制。前面两篇文章为了帮助大家理解注意力机制的思想用了非常多的类比,以及联系生活实际

然而,不管类比和联系多么恰当,这些做法多多少少都会让事物本身的特性被类比、联系后的事物所掩盖。

所以本篇文章我们有两个任务:

1、还原注意力机制的本质:不使用任何的类比、比喻,仅仅来灌输注意力机制的本身思想

2、比对不同注意力机制类型:在注意力机制的本质下去比对不同注意力机制类型

注意力机制本质 

注意力机制是父类

注意力机制是一个宏大的概念,也就说注意力机制指的是一群方法,而不是一个方法。并且,现在的模型都不会直接用原始注意力机制来做,而是用其变型来完成。

所以:

注意力机制是自注意力机制、交叉注意力机制、多头注意力机制的一个父类。并且可以认为里面的Q的来源是一个未实现的抽象类,需要在其子类(自注意力机制、交叉注意力机制等)中具体去实现

注意力机制的限制 

对于上面这张图,大家应该都非常熟悉了:

1、Q与K进行查询,查询出K与Q的相似度

2、将相似度进行缩放处理

3、将Scale结果进行softMax处理的到0-1的概率值

4、将V和概率值进行MatMul后,得到的结果V‘就包含注意力的信息 

注意力机制虽然没有规定QKV的来源和关系,但是它限制QKV的做法以及其所蕴含的含义。

因此,只要满足这四步操作的,我们都可以称为是一种注意力机制 

自注意力机制

自注意力机制是注意力机制的一种特殊形式,注意力机制包括自注意力机制

在自注意力机制中,QKV是同源的,因此自注意力机制能够很好的探寻序列内部的信息

从上图中,对于Thinking的词向量X1,通过三次矩阵变化就得到了q、k、v

其实,所谓的Q K V矩阵、查询向量之类的字眼,其来源都是\large X与矩阵的乘积,本质上都是\large X的线性变换。那么为什么不直接使用\large X而要对其进行线性变换呢?

当然是为了提升模型的拟合能力,矩阵\large W都是可以训练的,起到一个缓冲的效果

总之,自注意力机制对QKV的来源(初始值)关系存在一定的限制(这个限制让自注意力机制更易探寻模型内部的信息)(对单一序列分析有很好的效果),同时也通过矩阵\large W使得模型可训练,起到缓冲作用

交叉注意力机制 

交叉注意力是注意力机制的一种,它处理两个相关但不同的序列。这在多模态任务中特别有用,如图像和文本的联合处理(存在联系的多序列联合分析)

特点:V、K同源,Q来自另一个序列(如下图)

针对这个特点,我们不难理解为何交叉注意力机制多用于多模态任务:

1、V、K来自一段视频,Q来自一段音频。要求利用音频在视频中查找音频相关的视频内容

2、此时Q就代表查询项(爱好匹配),拿这个查询项到视频构造出来的序列中去查询。给视频(K、V)中和音频(Q)相匹配的部分给予更高的关注度

3、于是在最后得到的视频序列V‘中,就重点考虑了我们要的相匹配的部分序列。此时无论是做相关视频内容的生成、查找都可以很方便的利用这个V’

 XXX注意力机制

我们同样可以:

1、让QKV都不同源

2、让Q=1,KV同源

3、anyway~~~~

总之,我们任意给QKV的来源加以改变我们就可以得到一个全新的注意力机制。但是这样的一个来源组合,你必须要能够给出一个合理的解释同时保证它有一个很好的效果,否则就是没有意义的(现在对注意力来源修改的研究很多啦,想要利用这个发现一个全新的、优秀的注意力机制可不容易)

总结

1、注意力机制是一个方法群体的总称(父类)

2、自注意力、交叉注意力机制都是对注意力机制的继承,对QKV来源进行了限制

3、注意力机制本身对QKV的限制仅仅在操作方法上

4、自注意力机制主要用于单一序列的内部分析;交叉注意力机制用于多模态学习(多序列分析)


撰写文章不易,如果文章能帮助到大家,大家可以点点赞、收收藏呀~

十二月的猫在这里祝大家学业有成、事业顺利、情到财来

  • 14
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
传统的CNN(卷积神经网络)注意力机制Transformer注意力机制是两种不同的模型结构,它们在处理序列数据时有着不同的特点和应用场景。 传统的CNN注意力机制主要应用于计算机视觉领域,通过卷积操作来提取图像中的局部特征,并通过池化操作来减少特征的维度。CNN注意力机制可以通过卷积核的权重来决定对不同位置的特征进行不同程度的关注,从而实现对图像中不同区域的重要性加权。这种注意力机制在图像分类、目标检测等任务中取得了很好的效果。 而Transformer注意力机制则主要应用于自然语言处理领域,特别是在机器翻译任务中取得了巨大成功。Transformer注意力机制通过自注意力机制(self-attention)来对输入序列中的不同位置进行关注度计算,从而实现对不同位置的信息交互和整合。Transformer模型通过多层堆叠的自注意力层和前馈神经网络层来实现对序列数据的建模和特征提取。 相比传统的CNN注意力机制Transformer注意力机制具有以下几个优势: 1. 长程依赖建模能力:Transformer模型通过自注意力机制可以捕捉到输入序列中不同位置之间的长程依赖关系,从而更好地理解序列中的上下文信息。 2. 并行计算能力:由于自注意力机制的特性,Transformer模型可以并行计算不同位置之间的注意力权重,从而加速模型的训练和推理过程。 3. 可解释性:Transformer模型中的注意力权重可以直观地表示不同位置之间的关注度,从而提供了一种可解释性较强的特征表示方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十二月的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值