外部注意力机制与内部注意力机制

news/2024/11/13 3:31:20/

自注意力是注意力机制的一种特殊情况,其核心思想为通过计算特征内部元素之间的联系来获得大范围内的依赖关系。而在外部注意力中,key被拿到了网络外部,因此可以习得数据集的全局状况。
在这里插入图片描述
自注意力机制中,输入特征F被投射到query矩阵Q、key矩阵K与value矩阵V中。之后注意力可记为
A=(α)i,j=softmax(QKT)A=(\alpha)_{i,j}=\text{softmax}(QK^T)A=(α)i,j=softmax(QKT) 。另外一种简化的变体则直接计算注意力A=(α)i,j=softmax(FFT)A=(\alpha)_{i,j}=\text{softmax}(FF^T)A=(α)i,j=softmax(FFT) 。然而,简化之后计算复杂度O(dN2)O(dN^2)O(dN2) 过高的问题依然存在。作者在检视注意力图之后发现大部分像素其实只与少数像素之间存在较强联系。因此N×N的注意力矩阵存在冗余。最终优化后的特征计算仅需要特定的数值即可。为此作者提出了外部注意力模块,计算输入像素与外部的记忆矩阵单元M之间的注意力。此时的注意力变为:

A=(α)i,j=Norm(FMT)A =(\alpha)_{i,j}= \text{Norm}(FM^T )A=(α)i,j=Norm(FMT)

与自注意力不同的是,上式中的(α)i,j(\alpha)_{i,j}(α)i,j 代表了第i个像素与M的第j行。这里的M为一个与输入无关的可学习参数,作为数据集相关的记忆器。实际中,作者使用了两个记忆单元MkM_kMkMvM_vMv 作为key与value来增强网络能力。外部注意力的计算最终变成了:

A=Norm(FMkT)Fout=AMvA = \text{Norm}(FM_k^T ) \\ F_{\text{out}}=AM_vA=Norm(FMkT)Fout=AMv

此时的计算复杂度为O(dSN)O(dSN)O(dSN) ,其中d与S为超参数,实际发现S取值为64就可以得到不错的效果。该方法计算量与像素数量呈现线性关系,相比自注意力机制在输入尺寸较大时效率更高。

自注意力机制使用了softmax来保证注意力图满足∑jαi,j=1\sum_j\alpha_{i,j} = 1jαi,j=1 。注意力图是通过矩阵相乘来计算的,对于输入特征的尺度敏感。为解决这一问题,作者使用了双重归一化分别归一化行与列。

在这里插入图片描述
以上就是外部注意力的核心内容。为了证明外部注意力的有效性,作者在原文中开展了一系列实验包括:图像分类、语义分割、图像生成、点云分类与点云分割。限于篇幅这里不再列出。

相比自注意力机制,外部注意力中的Key与Value被拿到了外部,不再由特征投射产生。这种结构使得外部的记忆单元可以习得整个数据集样本的统计特征。使用两个线性单元作为外部注意力的记忆单元则简化了运算复杂度。


http://www.ppmy.cn/news/3485.html

相关文章

c++-函数

c-函数函数默认参数函数重载传递方式值传递指针(地址)传递引用传递引用传递与const指针引用引用与函数返回值引用与指针引用与临时数据 - 还要看引用与const 其他注意事项- 还没看const 与函数const与形参const修饰函数(返回值)co…

LinkedList与链表

目录 1. 链表的概念: 2.链表的实现 ArrayList和LinkedList的对比: 链表是一种物理存储单元上非连续、非顺序的存储结构。数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 根据前一章顺序表的介绍,我们发现对于顺序的删除和添加元素…

linux批量操作文件命令总结

总结下常用的linux命令,linux下的命令组合着实强大。有时候即便是使用的windows系统也可以在Dos窗口下使用linux下的一些命令工具,完成一些文本日常处理。 查找所有文件 find ./ -name "*.log" 查找某一后缀的文件并删除 find ./ -name &qu…

C# !(null包容)运算符的使用

总目录 文章目录总目录前言一、!(null包容)运算符是什么?二、!(null包容)运算符如何使用?1.使用2.扩展-预处理器指令启用或关闭null检查总结前言 本文主要讲解!(null包容)运算符的使用&#xf…

内核动力之源——内存管理

目录 内存管理背后的故事 内存管理概述 常见内存分配策略 LwIP的宏配置及内存管理 见招拆招——动态内存堆 数据结构描述 函数实现 ​以不变应万变——动态内存池 数据结构描述 函数实现 使用C库管理内存策略 无论在哪种系统中,动态内存都是一个非常重要的…

【内网安全-基础】基础知识、信息收集、工具

目录 一、基础知识 1、内网: 2、工作组: 3、域(Domain): 二、基础信息收集 1、判断是否在域内 2、机器角色判断 3、出网协议判断 4、端口判断 三、常规信息收集 1、常用命令 2、常用命令 3、工具&插件 LadonGO CS插件 Adfi…

基于PHP和MySQL的新闻发布系统

关于世界杯⚽️ 国际足联世界杯(FIFA World Cup),简称“世界杯”,是由全世界国家级别球队参与,象征足球界最高荣誉,并具有最大知名度和影响力的足球赛事。世界杯全球电视转播观众超过35亿 。世界杯每四年举…

传输层协议 —— TCP(图解2)

​ 目录 一、前言 二、重传机制 1. 超时重传 2. 快速重传 3. SACK 4. D-SACK 三、滑动窗口 1. 发送方的滑动窗口 2. 程序是如何表示发送方的四个部分 3. 接收方的滑动窗口 四、流量控制 五、拥塞控制 1. 慢启动 2. 拥塞避免 3. 拥塞发生 4. 快速恢复 六、TCP…