当前位置: 首页 > article >正文

【VLM】Gated Attention, Gated DeltaNet

Gated Attention和Gated DeltaNet是近期在长文本大模型特别是探索O(N)O(N)O(N)线性复杂度的高效序列模型中非常核心的架构创新。它们分别解决了传统 Transformer 在扩展上下文时面临的注意力坍缩Attention Sinks和线性注意力记忆冲突Memory Collisions问题。以下是这两种架构的数学本质及其相较于传统方法的代差级升级一、 Gated Attention为注意力加上“物理阀门”1. 架构形态传统的 Self-Attention 计算完注意力矩阵并与 Value 相乘后直接将结果输出到下一层。而 Gated Attention 在标准注意力的基础上引入了一个由输入状态计算得出的乘法门控信号Multiplicative Gate。其核心计算公式如下YSoftmax(QKTd)VY \text{Softmax}\left(\frac{QK^T}{\sqrt{d}}\right)VYSoftmax(d​QKT​)VY′Y⊙σ(XWθ)Y Y \odot \sigma(XW_\theta)Y′Y⊙σ(XWθ​)其中XXX是输入隐藏状态σ\sigmaσ通常是 Sigmoid 函数输出000到111之间的值⊙\odot⊙是逐元素相乘Element-wise multiplication。2. 传统方法的痛点与 Gated Attention 的升级传统痛点Attention Sinks在传统 Transformer 中Softmax 的特性要求每一行的注意力权重之和必须为 1。当遇到一些无关紧要的 Token 时模型无处安放这些权重往往只能强行“倾倒”在序列开头的某些 Token 上如[BOS]这会导致这些 Token 出现极端的激活值Massive Activations引发训练和量化时的数值不稳定。架构升级Gated Attention 相当于加了一个“物理阀门”。由于是乘法门控如果当前 Head 的注意力输出全是噪声门控网络可以直接输出接近000的值将其彻底“归零”截断信息流而不需要强行分配权重。这极大地提升了模型在极长上下文训练中的数值稳定性和去噪能力。Attention Sink注意力汇聚 / 注意力水槽是近年来在大语言模型特别是基于 Transformer 架构的模型研究中发现的一个非常有趣且关键的现象。打个形象的比方它就像是模型内部的一个“垃圾桶”或“排水槽”。1. 现象是什么研究人员在观察 LLM 生成文本时发现无论当前在生成什么词模型都会把极其不成比例的注意力权重Attention Weights分配给输入序列的最开头的几个 Token通常是第一个 Token比如s或[BOS]。即便这第一个 Token 对于当前正在生成的词没有任何语义上的联系它依然会吸收掉大量的注意力。这个最初始的 Token 就被称为Attention Sink。2. 为什么会产生 Attention Sink数学本质这完全是被 Transformer 中的Softmax 函数“逼”出来的。在标准的注意力机制中注意力分数的计算公式包含一个 Softmax 操作Attention(Q,K,V)Softmax(QKTd)V \text{Attention}(Q, K, V) \text{Softmax}\left(\frac{QK^T}{\sqrt{d}}\right)VAttention(Q,K,V)Softmax(d​QKT​)VSoftmax 有一个铁律每一行输出的权重之和必须等于 1。∑jWeighti,j1 \sum_{j} \text{Weight}_{i, j} 1j∑​Weighti,j​1在实际推理中当模型预测下一个词时它可能环顾四周发现前面的所有历史上下文都不太重要即当前的 Query 找不到特别匹配的 Key。但是由于 Softmax 的铁律它必须把这 “1” 的权重分配出去。它不能输出全 0。久而久之在预训练的过程中模型学到了一个“作弊”技巧把序列开头的第一个 Token它对所有后续 Token 都是可见的当成一个安全的垃圾桶。当模型不需要关注任何有意义的历史信息时它就把多余的注意力权重全部倾倒在这个初始 Token 上。3. 这个发现为什么极其重要工业界的影响这个现象的发现直接解决了一个长期困扰学术界的难题如何让 LLM 处理无限长度的文本而不撑爆显存在过去为了节省显存人们尝试过滑动窗口Sliding Window机制——即只保留最近的 N 个 Token 的 KV Cache把更早的 Token 丢弃。但结果是灾难性的一旦把最开头的几个 Token 移出窗口模型的语言生成能力会瞬间崩溃开始胡言乱语。原因就在于你把模型的“垃圾桶”给扔了没有了 Attention Sink模型无处安放那些无用的注意力权重被迫把它们分配给最近的 Token导致语义彻底混乱。解决方案StreamingLLM 的诞生MIT 等机构的研究人员基于这个原理提出了 StreamingLLM 框架。做法极其简单粗暴却有效在推理时永远保留最开头的 4 个 Token即 Attention Sinks的 KV Cache再加上最近的一小段滑动窗口。就凭这一招就可以让 Llama 等模型在有限的显存下稳定生成几百万甚至上千万长度的文本且困惑度Perplexity完全不崩。二、 Gated DeltaNet兼具 RNN 速度与 Transformer 精度的“手术刀”Gated DeltaNet 是一种线性注意力Linear Attention变体它将 Mamba 类模型的门控衰减Gating与 DeltaNet 的增量更新规则Delta Rule完美结合目的是彻底消除O(N2)O(N^2)O(N2)的 KV Cache 瓶颈。1. 架构形态在 Gated DeltaNet 中序列信息不再以KKK和VVV的形式按长度堆叠而是被压缩进一个固定大小的矩阵状态Memory StateStS_tSt​中随时间步ttt进行 RNN 式的递归更新。其核心状态更新公式为StαtSt−1(I−βtktktT)βtvtktTS_t \alpha_t S_{t-1}(I - \beta_t k_t k_t^T) \beta_t v_t k_t^TSt​αt​St−1​(I−βt​kt​ktT​)βt​vt​ktT​αt∈(0,1)\alpha_t \in (0, 1)αt​∈(0,1)是遗忘门Decay Gate由当前输入动态计算控制全局记忆的留存度。βt\beta_tβt​是更新门Update Gate控制新知识写入的强度。(I−βtktktT)(I - \beta_t k_t k_t^T)(I−βt​kt​ktT​)是Householder 变换矩阵其几何意义是在状态空间中将与当前ktk_tkt​相关的子空间直接“正交化”清空。2. 传统方法的痛点与 Gated DeltaNet 的升级传统线性注意力的痛点记忆冲突早期的线性注意力如 Additive Linear Attention状态更新规则是简单的相加StSt−1vtktTS_t S_{t-1} v_t k_t^TSt​St−1​vt​ktT​。这导致模型只能像往黑板上不断写字一样累积信息。当遇到相同或相似的 Key 时新旧 Value 会混杂在一起Memory Collisions导致模型在做“大海捞针”Needle-in-a-Haystack等精确检索任务时一塌糊涂。Gated DeltaNet 的两大核心升级Surgical Eraser手术刀式的精确擦除得益于 Delta Rule即上述公式中的 Householder 变换模型在写入新知识vtv_tvt​之前会先去St−1S_{t-1}St−1​里精准定位并擦除旧的、ktk_tkt​对应的记忆。这不再是简单的“相加”而是“修改/覆写”使得固定大小的隐藏状态拥有了极其惊人的容量和表达能力。Global Reset全局状态重置得益于 Mamba 风格的门控αt\alpha_tαt​当模型检测到话题发生剧烈切换比如输入了一篇全新的文章时αt\alpha_tαt​会迅速趋近于000相当于瞬间擦除整块黑板避免旧上下文对新任务产生“幽灵干扰”。并且在工程实现上Gated DeltaNet 可以通过 WY Representation 将串行的 RNN 计算转化为 Chunkwise 并行分块矩阵乘法 GEMM从而充分打满 GPU 的算力实现极高的训练吞吐量。三、 工业界如何组合它们Hybrid Architecture在将研究推向工业级 VLM 或超大参数模型时如近期的 Qwen 系列的探索分支、Kimi 等业界发现纯粹的线性注意力依然会因为“压缩瓶颈”在复杂逻辑推理上略逊一筹。因此当前最前沿的工程解法是混合架构Hybrid Architecture3:1 比例交替比如每 4 个 Transformer Block 中有 3 层使用Gated DeltaNet用于以O(N)O(N)O(N)的代价极速处理和压缩海量历史 Context消除绝大部分 KV Cache 显存占用。第 4 层使用Gated Attention保留精确的 Token 级全局感受野确保复杂推理的准确性。这种组合既做到了推理速度和显存的“线性红利”又保住了大模型强大的上下文学习ICL与推理下限。

相关文章:

【VLM】Gated Attention, Gated DeltaNet

Gated Attention 和 Gated DeltaNet 是近期在长文本大模型(特别是探索 O(N)O(N)O(N) 线性复杂度的高效序列模型)中非常核心的架构创新。它们分别解决了传统 Transformer 在扩展上下文时面临的注意力坍缩(Attention Sinks)和线性注…...

手把手教你用YOLOv5训练VisDrone2019数据集:搞定无人机航拍小目标检测

无人机视角下的目标检测实战:YOLOv5与VisDrone2019数据集深度适配指南 无人机航拍图像的目标检测一直是计算机视觉领域的难点与热点。VisDrone2019作为当前最权威的无人机视角数据集之一,包含了丰富的场景变化和极具挑战性的小目标检测任务。本文将带您从…...

写给读者看的从来不是 Markdown:Anthropic 停用 MD 背后,这个本地 HTML 编辑器解决多平台发布之苦

写完一篇东西,发布时 Markdown 的短板才显出来——渲染器各行其是,同一段文字在公众号、知乎、X 上各是一副面孔,代码块的样式、标题的缩进、引用块的背景,没有一处能跨平台保持一致,你只能逐平台手调,或者…...

解决企业级日期处理难题:Vue3-DateTime-Picker的现代化架构设计与实战应用

解决企业级日期处理难题:Vue3-DateTime-Picker的现代化架构设计与实战应用 【免费下载链接】vue3-date-time-picker Datepicker component for Vue 3 项目地址: https://gitcode.com/gh_mirrors/vu/vue3-date-time-picker Vue3-DateTime-Picker是一款基于Vue…...

如何快速修复分区表:开源数据恢复工具的完整指南

如何快速修复分区表:开源数据恢复工具的完整指南 【免费下载链接】testdisk TestDisk & PhotoRec 项目地址: https://gitcode.com/gh_mirrors/te/testdisk 你是否曾因为误删除重要文件而懊恼不已?是否遇到过分区丢失导致数据无法访问的困境&a…...

解密GAIA-DataSet:如何用6500+真实系统指标革新AIOps研究

解密GAIA-DataSet:如何用6500真实系统指标革新AIOps研究 【免费下载链接】GAIA-DataSet GAIA, with the full name Generic AIOps Atlas, is an overall dataset for analyzing operation problems such as anomaly detection, log analysis, fault localization, e…...

STFT音高迁移:C++实现音频变调不变速的核心原理与工程实践

1. 项目概述:音频处理的“时间魔法师”如果你玩过音乐制作或者做过音频分析,肯定遇到过这样的场景:一段人声录音的音调有点低,你想把它调高一点,但又不想改变它说话的速度和节奏感。或者反过来,一段背景音乐…...

Spring Boot项目里application.properties突然不提示了?别慌,试试这3个排查步骤(附Idea 2023.3+版本截图)

Spring Boot项目里application.properties突然不提示了?别慌,试试这3个排查步骤 作为一名长期使用IntelliJ IDEA进行Spring Boot开发的程序员,配置文件提示功能突然消失的情况确实令人头疼。想象一下,当你正在快速编写配置时&…...

收藏这篇就够了!新手学习 Kali Linux 全指南,避开九成弯路从入门到实战

前言: 当你花了 2 个小时在虚拟机里装好了 Kali Linux—看到屏幕上弹出黑色的终端界面,光标闪烁着 “rootkali:~#” 时,你会不会慌乱?接下来该输什么命令?这些工具怎么用?网上说的 “用 Kali 挖漏洞”&…...

Postman数据迁移实战:如何用导入导出功能,在团队间高效同步你的接口集合和环境变量

Postman团队协作指南:接口资产迁移与标准化管理实践 在分布式团队和敏捷开发成为主流的今天,API开发工具的高效使用直接影响着协作效率。作为被全球超过2000万开发者使用的API工具,Postman的集合与环境变量功能已经成为团队间接口定义传递的事…...

从标注工具到AI流水线:在Windows上搭建CVAT,并连接Label Studio与Jupyter Notebook

从标注工具到AI流水线:在Windows上构建CVAT与生态工具的协同工作流 当计算机视觉项目从实验室走向生产环境时,数据标注往往成为制约迭代速度的关键瓶颈。传统孤立使用的标注工具如同信息孤岛,而现代MLOps实践需要的是能够无缝衔接数据标注、质…...

英雄联盟回放播放器终极指南:用ROFL-Player解锁你的游戏记忆

英雄联盟回放播放器终极指南:用ROFL-Player解锁你的游戏记忆 【免费下载链接】ROFL-Player (No longer supported) One stop shop utility for viewing League of Legends replays! 项目地址: https://gitcode.com/gh_mirrors/ro/ROFL-Player 还在为英雄联盟…...

Kicad 5.99版本下,这4个插件让PCB设计效率翻倍(附保姆级安装教程)

KiCad 5.99版本效率革命:4款必备插件全解析与实战指南 刚接触KiCad的工程师常会遇到这样的困境:手动布线耗时费力、生产文件导出步骤繁琐、BOM表整理令人头疼。这些问题在中小型项目中尤为明显,往往让设计周期延长30%以上。而KiCad 5.99版本作…...

5分钟快速上手Tesseract OCR:从零开始掌握开源文字识别技术

5分钟快速上手Tesseract OCR:从零开始掌握开源文字识别技术 【免费下载链接】tesseract Tesseract Open Source OCR Engine (main repository) 项目地址: https://gitcode.com/gh_mirrors/tes/tesseract 你是否曾经需要从图片中提取文字,却苦于没…...

Nordic nRF52832蓝牙串口实战:手把手教你用SDK 15.3.0实现手机与设备双向通信

Nordic nRF52832蓝牙串口开发实战:从SDK配置到双向通信全解析 在嵌入式蓝牙开发领域,Nordic的nRF52832芯片凭借其优异的射频性能和丰富的外设资源,成为物联网设备开发的明星选择。但对于刚接触这款芯片的开发者来说,如何快速实现手…...

如何快速掌握AMD Ryzen硬件调试:SMUDebugTool性能优化完整指南

如何快速掌握AMD Ryzen硬件调试:SMUDebugTool性能优化完整指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: ht…...

别再死记硬背了!用Python模拟LDPC和Polar码的编码过程(附代码)

Python实战:用可视化方法理解LDPC与Polar码的核心原理 在无线通信系统的物理层设计中,信道编码技术如同数据的"防弹衣",保护信息在充满噪声的传输环境中安全抵达。本文将带你用Python构建两种5G核心编码方案——LDPC码和Polar码的简…...

手机上的Linux:用Termux 0.118.0打造Python 3.10.4爬虫环境,实测下载‘拷贝漫画’全流程

在安卓手机上构建Python爬虫环境:Termux实战指南 你是否遇到过这样的场景:在地铁上突然想到一个绝妙的爬虫点子,但手边只有一部手机?或者想在平板上直接下载漫画却苦于没有合适的工具?Termux正是解决这些痛点的神器。这…...

从零到一:RK3588s平台imx415双目相机模组点亮与ISP调优实战

1. 环境准备:从零搭建开发环境 第一次接触RK3588s平台时,最头疼的就是环境搭建。我用的Firefly AIO-3588S-JD4开发板配套资料比较分散,光是找齐所有软件包就花了半天时间。这里分享下我的踩坑经验: 硬件清单必须严格核对&#x…...

抖音视频批量下载难题如何解决?douyin-downloader开源工具完整指南

抖音视频批量下载难题如何解决?douyin-downloader开源工具完整指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fa…...

从MobileNetV1到RetinaFace:轻量化主干网络在人脸检测中的架构演进与实践

1. 轻量化主干网络的演进背景与需求 在移动端和嵌入式设备上实现实时人脸检测一直是计算机视觉领域的重要挑战。传统的人脸检测算法如Viola-Jones虽然计算量小,但在复杂场景下的检测精度有限。随着深度学习技术的发展,基于卷积神经网络的人脸检测方法逐渐…...

MPICH2并行计算环境搭建:从“目标计算机积极拒绝”到畅通无阻的实战排错指南

1. 遇到"目标计算机积极拒绝"时别慌 第一次在MPICH2环境里看到"目标计算机积极拒绝"这个报错时,我正急着跑一个分布式计算任务。命令行里突然蹦出的ERROR:Error while connecting to host让我瞬间头皮发麻——明明昨天还能正常运行的集群&#…...

2026年企业制品管理平台选型推荐:Gitee Repo 如何构建安全高效协作基石

在软件研发的关键环节中,制品管理正经历着从基础存储工具向安全可信协作中枢的深刻演进。面对开源风险、跨团队协作效率与版本追溯等多重挑战,企业对于一套能够深度守护制品安全并支撑高效协同的解决方案需求迫切。Gitee Repo 制品管理平台凭借其全面的能…...

9.9元ESP32-C3移植RT-Thread Nano:低成本RTOS开发与调试实战

1. 项目概述:当开源RTOS遇上性价比神板最近在捣鼓嵌入式开发,发现了一块宝藏开发板——ESP32-C3的某个简约款,价格直接干到了9.9元。这个价格,别说喝杯奶茶了,连个像样的模块都买不到,但它不仅能跑起来&…...

从‘调制方向’到‘闭环稳定’:一个公式搞定单相PWM整流器电流环PI参数整定

从动态模型到实战调参:单相PWM整流器电流环PI整定的工程化方法 在电力电子控制领域,单相PWM整流器的电流环设计一直是工程师面临的实操难点。理论教材中复杂的传递函数推导与实验室里实际系统的振荡现象之间,往往存在一道需要经验跨越的鸿沟…...

避开这些坑!用Python做模糊控制项目时,关于隶属函数和规则表的5个常见误区

避开这些坑!用Python做模糊控制项目时,关于隶属函数和规则表的5个常见误区 第一次用Python实现模糊控制系统时,那种兴奋感我至今记得——仿佛打开了人工智能的另一扇门。但很快,这种兴奋就被各种报错和不符合预期的结果浇灭了。记…...

基于MCP协议构建本地AI短信分析工具:mac_messages_mcp项目详解

1. 项目概述:一个让AI“读懂”你Mac短信的桥梁如果你正在折腾AI智能体,尤其是那些能帮你处理日常信息的自动化工具,你可能会遇到一个核心痛点:如何让AI安全、便捷地访问你设备上的原生应用数据?比如,Mac上的…...

基于MCP协议构建AI智能体记忆系统:mnemo-mcp实战指南

1. 项目概述:一个为AI记忆而生的开源工具最近在折腾AI应用开发,特别是围绕大语言模型(LLM)构建智能体(Agent)时,一个绕不开的痛点就是“记忆”。模型本身没有持久化记忆,每次对话都是…...

终极数据恢复指南:TestDisk PhotoRec 免费开源解决方案

终极数据恢复指南:TestDisk & PhotoRec 免费开源解决方案 【免费下载链接】testdisk TestDisk & PhotoRec 项目地址: https://gitcode.com/gh_mirrors/te/testdisk 你是否曾因误删分区、格式化硬盘或系统崩溃而面临数据丢失的噩梦?别担心…...

LinkSwift:九大网盘直链下载的技术革新与优雅突围

LinkSwift:九大网盘直链下载的技术革新与优雅突围 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘…...