线性注意力(Linear Attention,LA)学习

news/2026/1/21 12:22:24/文章来源:https://www.cnblogs.com/strivy/p/19510978

定义:采用矩阵乘法结合律的特点,所设计的一种\(\mathcal{O}(n)\)时间复杂度的注意力机制

一、softmax注意力机制

设输入特征\(x\)大小为\(N×F\),其是由\(N\)个维度为\(F\)的特征向量构成的序列(往往\(N\gg F\)

Transformer的一般表示形式为:

\[T(x) = f(A(x) + x) \tag{1} \]

其中,\(A(\cdot)\)表示注意力机制,\(f(\cdot)\)表示前馈处理。

针对\(A(\cdot)\),首先,将\(W_Q \in \mathbb{R}^{F \times D}\)\(W_K \in \mathbb{R}^{F \times D}\)\(W_V \in \mathbb{R}^{F \times M}\)作用于\(x\)投影得到对应的\(QKV\),此处的\(QK\)相乘是计算二者之间的相似性,并通过softmax得到相似性权重矩阵作用于\(V\)来修正比例,公式如下:

\[A(x)=V_i'=softmax(\frac{xW_Q(xW_K)^T}{\sqrt{D}})xW_V=softmax(\frac{QK^T}{\sqrt{D}})V \tag{2} \]

二、线性注意力机制

1.基础解释

根据\(QK\)计算相似性的特点,在不考虑因果性的前提下,广义上可表示为:

\[V_i' = \frac{\sum_{j=1}^{N} \operatorname{sim}(Q_i, K_j) V_j}{\sum_{j=1}^{N} \operatorname{sim}(Q_i, K_j)} \tag{3} \]

\(\operatorname{sim}(q, k)=\exp \left( \frac{q^T k}{\sqrt{D}} \right)\)时,公式(3)等价于公式(2)

softmax的一个特点是满足“输出非负”,因为需要的是一个相似性权重矩阵(像是通过打分来调整\(V\)中数据的分配比例)

因此通过某种非负相似度映射函数即可将\(QK\)拆分开,论文中采用的公式如下

\[\phi (x) = \text{elu}(x) + 1 \tag{4} \]

更新后的注意力公式如下(采用矩阵乘法交换律):

\[V_{i}^{\prime} = \frac{\sum_{j=1}^{N} \phi(Q_{i})^{T} \phi(K_{j}) V_{j}}{\sum_{j=1}^{N} \phi(Q_{i})^{T} \phi(K_{j})}=\frac{\phi(Q_i)^T \sum_{j=1}^N \phi(K_j) V_j^T}{\phi(Q_i)^T \sum_{j=1}^N \phi(K_j)} \tag{5} \]

公式(2)的时间复杂度为\(\mathcal{O}(N^2max(D,M))\),而优化后的公式(5),首先计算维度为\(C\)的特征映射,最终时间复杂度为\(\mathcal{O}(NCM)\)

2.因果掩码

在考虑因果性的情况下,公式(5)可化简为:

\[V_{i}^{\prime} = \frac{\phi(Q_{i})^{T} \sum_{j=1}^{i} \phi(K_{j}) V_{j}^{T}}{\phi(Q_{i})^{T} \sum_{j=1}^{i} \phi(K_{j})} \tag{6} \]

\(S_{i} = \sum_{j=1}^{i} \phi(K_{j}) V_{j}^{T}\)\(Z_{i} = \sum_{j=1}^{i} \phi(K_{j})\),进一步化简为:

\[V_{i}^{\prime} = \frac{\phi (Q_{i})^{T} S_{i}}{\phi (Q_{i})^{T} Z_{i}} \tag{7} \]

其中,\(S_{i} = S_{i-1} + \phi(K_{i}) V_{i}^{T}\)\(Z_{i} = Z_{i-1} + \phi(K_{i})\),由此可见其与传统RNN之间的相似之处,通过这种方式,能在\(S_{i-1}\)\(Z_{i-1}\)的基础上通过常数时间计算出\(S_{i}\)\(Z_{i}\)

3.梯度计算

在进行梯度计算时,要存储所有的中间值\(S_{i}\),这使得内存消耗增加为原来的\(max(D,M)\)倍,为此本文通过累积和的方式计算公式(6)给定分子\(\bar{V}_i\)和标量损失函数关于该分子的梯度 \(\nabla_{\bar{V}_i} \mathcal{L}\),以通过线性时间和恒定内存计算因果性序列的前向传播(做题)与反向传播(纠错),公式如下:

\[\nabla_{\phi(Q_i)} \mathcal{L} = \frac{\partial \mathcal{L}}{\partial \bar{V}_i} \cdot \frac{\partial \bar{V}_i}{\partial \phi(Q_i)} = \nabla_{\bar{V_i}} \mathcal{L} \left( \sum_{j=1}^i \phi(K_j) V_j^T \right)^T \tag{8} \]

同理:

\[\nabla_{\phi(K_i)} \mathcal{L} = \left( \sum_{j=i}^{N} \phi(Q_j) \left( \nabla_{\bar{v}_j} \mathcal{L} \right)^T \right) V_i \tag{9} \]

\[\nabla_{V_i} \mathcal{L} = \left( \sum_{j=i}^{N} \phi(Q_j) \left( \nabla_{V_j} \mathcal{L} \right)^T \right)^T \phi(K_i) \tag{10} \]

综上,其具有线性时间\(\mathcal{O}(NCM)\)和恒定内存\(\mathcal{O}(Nmax(C,M)\)

三、不足

\(S_{i}\)\(Z_{i}\)是无衰减的直接累加,所有信息平等叠加,早期的信息容易被后期噪声淹没,因此,需要通过门控、非线性增强、位置编码等方式来弥补此问题。后续的Mamba一定程度上也可以说是线性注意力的一种改进。

原论文

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1194448.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Parquet 入门详解:深入浅出全解析

https://blog.csdn.net/qq_28369007/article/details/148840528 Parquet 入门详解:深入浅出全解析

实测总结:AI生成PPT的6个常见坑,新手必看

从满怀期待到被坑无语,这份避坑指南或许能帮你省下大量时间。大家好,最近一年AI生成PPT的风很大,相信不少朋友都尝试过。但用完之后,可能不少人和我一样,从“终于能解放了”的兴奋,变成了“还不如我自己做”…

AF430标记的Streptavidin,链霉亲和素AF430偶联物:光谱特性、实验应用与操作要点

【试剂名称】英文名称:Streptavidin, AF430 conjugate,AF430 Streptavidin,AF430标记的Streptavidin,Alexa Fluor430 Streptavidin中文名称:AF430标记的链霉亲和素,链霉亲和素偶联AF430,链霉亲和…

uniapp vue h5小程序奶茶点餐纯前端hbuilderx

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 uniapp奶茶点餐纯前调试视频.mp4链接: uniapp奶茶点餐纯前调试视频注意事项: 本店所有代码都是我亲测100%跑过没有问题才上架 内含部署环境软件和详细调试教学视频 代码都是全的&…

ubuntu系统下,vim编辑时候,如何显示行数

编辑 ~/.vimrc 文件(如没有则创建): vim ~/.vimrc 添加以下内容 set number autocmd InsertEnter * :set norelativenumber autocmd InsertLeave * :set relativenumber 保存退出

空指针不再怕,Java字符串判空实战技巧全解析

第一章:Java字符串判空的核心概念与重要性 在Java开发中,字符串是最常用的数据类型之一。由于其频繁参与业务逻辑判断、数据校验和用户交互,对字符串进行判空操作成为保障程序健壮性的关键步骤。未正确处理null值或空字符串,极易引…

6.3 密钥隐身术:Sealed-Secrets 与 Vault 的 K8s 密钥管理之道

6.3 密钥隐身术:Sealed-Secrets 与 Vault 的 K8s 密钥管理之道 1. 引言:Base64 ≠ 加密 K8s Secret 天然“弱保护”:默认以 Base64 存储于 Etcd,未开启 at-rest 加密时属于明文。密钥管理的目标是:密钥不落盘、最小暴露、可审计、可轮换。 2. Sealed Secrets:把密钥“安…

6.4 守门员机制:使用 Kyverno 实施 K8s 准入控制与安全策略

6.4 守门员机制:使用 Kyverno 实施 K8s 准入控制与安全策略 1. 引言:把“应当如此”写成策略 准入控制是最后一道关口。把“安全与规范”从检查清单,变为可执行的策略。Kyverno 使用原生 YAML 模式,无需学习 Rego 即可编写策略,适合大规模推广。 2. Kyverno 策略类型 Va…

单细胞质量控制常见指标的解读学习

常见指标 是什么?nFeature_RNA 一个细胞表达了多少种不同的基因nCount_RNA 一个细胞里检测到的所有RNA分子(UMI)总数percent.mt 细胞中线粒体基因的RNA占比percent.HB 细胞中血红蛋白基因的RNA占比nFeature_RNA(左…

Java单例模式选型决策树(附HotSpot 8–17实测数据):哪种实现吞吐量高37%、内存占用低2.1倍?

第一章:Java单例模式选型的核心挑战 在高并发与复杂系统架构中,单例模式作为最常用的设计模式之一,其正确实现直接影响系统的稳定性、性能和可维护性。尽管看似简单,但在实际应用中,开发者常面临线程安全、延迟加载、反…

【Java百万级Excel导出性能优化实战】:20年架构师亲授7大内存与IO瓶颈突破方案

第一章:百万级Excel导出的典型性能瓶颈全景图在处理百万级数据量的Excel导出任务时,系统往往面临严峻的性能挑战。传统方式依赖内存加载全部数据后写入文件,极易引发内存溢出、响应超时和CPU过载等问题。理解这些瓶颈的成因与表现形式&#x…

探讨汽车变速器连接器,青宸精密科技提供的产品性价比哪家高?

随着新能源汽车产业向智能化、集成化、高压化升级,汽车变速器作为动力传递核心部件,其内部连接器的可靠性直接决定整车动力响应与行驶安全。本文围绕汽车变速器连接器的选型痛点,结合深圳市青宸精密科技有限公司的行…

依赖冲突频繁爆发?掌握这4种高阶策略,轻松实现项目稳定构建

第一章:依赖冲突频繁爆发?重新认识Maven的依赖解析机制 在大型Java项目中,依赖冲突是开发过程中最常见的痛点之一。Maven作为主流的构建工具,其依赖解析机制直接影响着最终打包结果的稳定性和可预测性。理解Maven如何选择和解析依…

盘点深圳青宸精密科技可提供的汽车变速器连接器,专业供应企业有哪些?

问题1:汽车变速器连接器加工厂的专业度体现在哪些方面?如何判断是否值得合作? 汽车变速器连接器是汽车动力传输系统的神经节点,其专业度直接决定了车辆换挡平顺性、信号传输稳定性乃至行车安全。判断加工厂是否专业…

还在为提取链接发愁?1个正则搞定所有网页URL抓取场景

第一章:正则表达式提取网页链接的核心价值 在现代Web数据处理中,从非结构化HTML文本中高效提取有效链接是信息采集、搜索引擎优化和自动化测试的关键环节。正则表达式作为一种强大的文本匹配工具,能够在不依赖完整解析器的情况下快速定位URL模…

投影机出租服务对比:2026年值得考虑的厂家,8000流明投影机/8K投影机/投影仪出租,投影机出租供应厂家哪家好

在数字化展示与沉浸式体验日益成为主流的今天,无论是大型商业发布会、高端艺术展览,还是文旅夜游项目,高品质的视觉呈现已成为活动成功的关键一环。投影机出租服务,凭借其灵活的成本控制、免维护的便捷性以及获取前…

亚马逊绿标:不止大促流量,更是品牌复购的长期护城河

一、品牌增强:从流量标签到价值资产,形成差异化护城河官方权威信任背书绿标是亚马逊 “气候友好承诺” 的官方认证,代表产品通过 FSC/GRS/ 碳中和等权威标准,快速消除消费者环保信任成本,尤其在欧美市场,83…

2026年口碑好的食材配送一站式服务商排名揭晓,旺利涛食品排前列

本榜单依托全维度市场调研与真实行业口碑,深度筛选出五家长三角区域生鲜食材配送领域的标杆企业,为企事业单位食堂、连锁餐饮等B端客户选型提供客观依据,助力精准匹配适配的服务伙伴。 TOP1 推荐:苏州旺利涛食品贸…

HashMap为什么线程不安全?底层实现原理告诉你真相

第一章:HashMap为什么线程不安全?底层实现原理告诉你真相 HashMap的底层数据结构 Java中的HashMap基于哈希表实现,采用“数组 链表/红黑树”的结构存储键值对。当发生哈希冲突时,元素会被添加到链表中;当链表长度超过…

Java 21虚拟线程上线前必读:5大关键性能指标深度剖析

第一章:Java 21虚拟线程性能测试报告概述 Java 21引入的虚拟线程(Virtual Threads)是Project Loom的核心成果,旨在显著降低高并发场景下的编程复杂度并提升吞吐量。与传统平台线程(Platform Threads)相比&a…