GATED DELTA NETWORKS : IMPROVING MAMBA 2 WITH DELTA RULE

TL;DR

  • 2024 年 Nvidia + MIT 提出的线性Transformer 方法 Gated DeltaNet,融合了自适应内存控制的门控机制(gating)和用于精确内存修改的delta更新规则(delta update rule),在多个基准测试中始终超越了现有的模型,如 Mamba2 和 DeltaNet。

Paper name
GATED DELTA NETWORKS : IMPROVING MAMBA 2 WITH DELTA RULE

Paper Reading Note

Paper URL:

  • https://arxiv.org/pdf/2412.06464

Code URL:

  • https://github.com/NVlabs/GatedDeltaNet

Introduction

背景

  • 线性Transformer作为标准Transformer的高效替代方案已受到关注,但其在检索任务和长上下文任务中的表现一直有限
  • 为解决这些局限性,近期研究探索了两种不同的机制:用于自适应内存控制的门控机制(gating)和用于精确内存修改的delta更新规则(delta update rule)。本文发现这两种机制是互补的——门控机制能够实现快速内存清除,而 delta 规则则有助于有针对性的更新。

本文方案

  • 提出了 Gated DeltaNet(gated delta rule),并开发了一种针对现代硬件优化的并行训练算法
    • 提出的架构 Gated DeltaNet 在多个基准测试中始终超越了现有的模型,如 Mamba2 和 DeltaNet,涵盖语言建模、常识推理、上下文检索、长度外推和长上下文理解等任务。
    • 进一步通过开发混合架构来提升性能,将 Gated DeltaNet 层与滑动窗口注意力机制或 Mamba2 层相结合,在提高训练效率的同时实现了更优的任务表现

Methods

回顾

  • linear attention 的一般形式
    在这里插入图片描述
  • mamba2 增加了一个 data-dependent decay 项
    在这里插入图片描述
  • delta net rule:动态擦除与当前输入 kt 想关联的 vold,然后写入一个新值 vnew,后者是当前输入值和旧值的线性组合
    在这里插入图片描述

Gated Delta Net

  • 本文提出的 Gated Delta Net
    在这里插入图片描述
    数据依赖的门控项 α t ∈ ( 0 , 1 ) \alpha_{t} \in (0, 1) αt(0,1) 控制状态的衰减

该公式统一了门控机制和 Delta 规则的优点,使模型能够通过选择性遗忘实现动态内存管理,在过滤无关信息方面具有潜在优势:

  • 门控项 α t \alpha_{t} αt 实现自适应内存管理;
  • Delta 更新结构有助于有效的键值关联学习

单针在 haystack 中(S-NIAH)验证

在 RULER(Hsieh 等,2024)提出的 Single Needle-In-A-Haystack(S-NIAH) 基准套件上进行案例分析。在这个任务中,一个键值对作为“针”隐藏在上下文(即 haystack)中,模型需要在给定键的情况下回忆出对应的值。
在这里插入图片描述

衰减机制损害记忆保持能力

在最简单的 S-NIAH-1 设置中,使用重复的合成上下文,模型仅需记忆少量信息,测试的是长期记忆保留能力。

  • DeltaNet 在所有序列长度下都接近完美表现;
  • Mamba2 在超过 2K 长度时性能显著下降,因为其衰减历史信息过快;
  • Gated DeltaNet 的性能下降较轻,得益于 Delta 规则的记忆保留能力。
门控机制有助于过滤无关信息

在 S-NIAH-2/3 使用真实世界文章作为上下文的任务中,模型需要存储所有可能相关的信息,测试的是高效的内存管理能力。

  • 固定状态大小下,缺乏清除机制会导致“内存冲突”——信息叠加、难以区分;
  • DeltaNet 在长序列中性能大幅下降,因其内存清除能力不足;
  • Mamba2 和 Gated DeltaNet 则通过门控机制过滤无关信息,维持了更好的性能。
Delta 规则增强记忆能力

在 S-NIAH-3 中,值从数字变为 UUID,测试的是复杂模式的记忆能力。

  • Mamba2 性能迅速下降;
  • Gated DeltaNet 表现更优,验证了 Delta 规则确实具备更强的记忆能力。

Gated DeltaNet 与混合模型设计

基本的 Gated DeltaNet 架构沿用 Llama 的宏观架构,堆叠 token mixer 层和 SwiGLU MLP 层,但将自注意力替换为基于 Gated Delta 规则 的 token mixing 方法。

  • 查询、键和值 {q,k,v} 通过线性投影、短卷积和 SiLU 激活生成,且 q,k 经过 L2 归一化以提升训练稳定性。参数 α,β 仅通过线性投影生成。输出经过归一化和门控处理后再应用输出投影
    在这里插入图片描述

  • 线性 Transformer 在建模局部变化和比较方面存在局限,固定的状态大小也使得检索任务困难。

    • 将线性循环层与滑动窗口注意力(Sliding Window Attention, SWA)结合,构建了 GatedDeltaNet-H1
    • 进一步堆叠 Mamba2、GatedDeltaNet 和 SWA,构建了 GatedDeltaNet-H2

Experiments

实验配置

  • 为了保证公平比较,所有模型均在相同条件下训练,参数量均为 13 亿(1.3B),训练数据为从 FineWeb-Edu 数据集 (Penedo 等,2024)中采样的 1000 亿(100B)个 token

常识推理

  • Gated DeltaNet 在两个参数规模上均持续优于其他线性模型
    在这里插入图片描述

真实世界数据中的上下文检索(In-Context Retrieval on Real-World Data)

  • 与标准 Transformer 相比,纯线性循环模型存在显著性能差距;而将线性循环机制与注意力结合的混合模型在检索任务中优于纯注意力模型。
    在这里插入图片描述

长序列上的长度外推能力(Length Extrapolation on Long Sequences)

  • 在六个长上下文基准任务中评估了模型对长达 20K token 序列的外推能力。在所有 RNN 模型中,Gated DeltaNet 实现了最低的整体困惑度。
    在这里插入图片描述

长上下文理解(Long Context Understanding)

  • 基于 LongBench 测试,在线性循环模型中,Gated DeltaNet 展现出稳定优势,特别是在单文档问答(single-doc QA)、少量样本上下文学习(few-shot in-context learning)和代码任务(Code)中,分别体现了其在信息检索、上下文学习和状态追踪方面的优越能力。
    在这里插入图片描述

吞吐量对比(Throughput Comparison)

  • 图3展示了不同模型的训练吞吐量对比。
    • 相比原始 Delta 规则,提出的门控 Delta 规则仅引入了轻微的额外开销,Gated DeltaNet 与 DeltaNet 的吞吐量基本相当。由于采用了更具表达力的状态转移矩阵,它们的训练速度略慢于 Mamba2(约2–3K token/秒)。
    • 滑动窗口注意力(SWA)能提速,Gated DeltaNet-H1 和 -H2 优于 Gated DeltaNet。
      在这里插入图片描述

Conclusion

  • 提出了 Gated DeltaNet ,相比 Mamba2 具备更强的键值关联学习能力,相比 DeltaNet 具备更灵活的内存清除机制

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

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

相关文章

Laravel单元测试使用示例

Date: 2025-05-28 17:35:46 author: lijianzhan 在 Laravel 框架中,单元测试是一种常用的测试方法,它是允许你测试应用程序中的最小可测试单元,通常是方法或函数。Laravel 提供了内置的测试工具PHPUnit,实践中进行单元测试是保障代…

【FastAPI】--3.进阶教程(二)

【FastAPI】--进阶教程1-CSDN博客 【FastAPI】--基础教程-CSDN博客 目录 1.FastAPI - CORS ​2.FastAPI - CRUD 操作 2.1.Create 2.2.Read 2.3.Update 2.4.Delete 3.FastAPI - 使用 GraphQL 4.FastAPI - Websockets 5.FastAPI - 事件处理程序 6.FastAPI - 安装 Fla…

FEMFAT许可的更新与升级流程

随着工程仿真技术的不断发展,FEMFAT作为一款领先的疲劳分析软件,持续为用户提供卓越的性能和创新的功能。为了保持软件的最新性和高效性,了解FEMFAT许可的更新与升级流程至关重要。本文将为您详细介绍FEMFAT许可的更新与升级流程,…

麒麟v10,arm64架构,编译安装Qt5.12.8

Window和麒麟x86_64架构,官网提供安装包,麒麟arm64架构的,只能自己用编码编译安装。 注意,“桌面”路径是中文,所以不要把源码放在桌面上编译。 1. 下载源码 从官网下载源码:https://download.qt.io/arc…

20250528-C#知识:结构体

C#知识:结构体 结构体是一种自定义数据类型,用户可以根据自身需求设计自己的结构体用来表示某种数据集合。结构体是一种值类型,结合了值类型的优点,避免了引用类型的缺点。本文简单介绍并探究一下C#中的结构体。 结构体一般写在命…

CRM系统的功能模块划分

基础管理模块 用户管理 用户注册与登录角色权限管理部门组织架构用户信息管理 系统设置 基础参数配置系统日志管理数据字典管理系统监控 客户管理模块 客户信息管理 客户基本信息客户分类管理客户标签管理客户关系图谱 联系人管理 联系人信息联系记录沟通历史重要日期提醒 …

Python中的跨域资源共享(CORS)处理

在Web开发中,跨域资源共享(CORS)是浏览器强制执行的安全机制,用于控制不同源(协议域名端口)之间的资源交互。下面我将通过Python示例详细讲解CORS的实现。 原生Python实现CORS Flask框架手动实现CORS fr…

Kruskal算法剖析与py/cpp/Java语言实现

Kruskal算法剖析与py/cpp/Java语言实现 一、Kruskal算法的基本概念1.1 最小生成树1.2 Kruskal算法核心思想 二、Kruskal算法的执行流程三、Kruskal算法的代码实现3.1 Python实现3.2 C实现3.3 Java实现 四、算法复杂度分析4.1 时间复杂度4.2 空间复杂度 五、Kruskal算法应用场景…

微信小程序返回上一页监听

本文实现的是微信小程序在返回上一页时获取通知并自定义业务。 最简单的实现: 使用 wx.enableAlertBeforeUnload() 优点:快速接入 缺点:手势不能识别、无法自定义弹窗内容(仅询问) 方法二: page-conta…

Excel 统计某个字符串在指定区域出现的次数

【本文概要】 Excel 统计某个字符串在指定区域出现的次数: 1、Excel 统计一个单元格内的某字符串的出现次数 2、Excel 统计某一列所有单元格内的某字符串的出现次数 3、Excel 统计某一区域所有单元格内的某字符串的出现次数 1、Excel 统计一个单元格内的某字符串的出…

生物化学:药品药物 营养和补充剂信息 第三方认证信息 常见误区 汇总

常见维生素和矿物质成分表 成分名称好处副作用(超量或敏感情况)运作方式推荐日剂量(成人)剂量说明维生素A(视黄醇)视力、免疫、皮肤健康过量可致肝损伤、头痛、脱发调节视网膜功能、细胞分化700–900 g RA…

mock库知识笔记(持续更新)

文章目录 mock简介导入方式参数简介使用场景(待更新)常见问题总结(待更新)Python代码官网 mock简介 mock是一个模拟对象库,具有模拟其他python对象的功能,还能指定模拟对象的返回值和设置模拟对象的属性。…

扇形 圆形 面积公式

✅ 一、圆的面积公式 全圆面积: A circle π r 2 A_{\text{circle}} \pi r^2 Acircle​πr2 ✅ 二、扇形的面积公式(两种制式) 弧度制: A sector 1 2 r 2 θ A_{\text{sector}} \frac{1}{2} r^2 \theta Asector​21​r2θ …

怎样将win11+ubuntu双系统的ubuntu从机械硬盘迁移至固态硬盘(1)

将 Ubuntu 从机械硬盘迁移到固态硬盘是一个涉及多个步骤的过程。以下是一个基本的迁移指南: 1. 前期准备 1.1 备份数据: 确保你已备份数据,以防止在迁移过程中出现意外导致任何数据丢失。 1.2 固态硬盘安装: 确保固态硬盘正确…

js中common.js和ECMAScript.js区别

以下是关于 CommonJS 和 ECMAScript Modules(ESM)的详细对比分析,包含底层原理和示例说明: 🧩 核心差异对比表 特性CommonJSES Modules来源Node.js 社区规范ECMAScript 语言标准加载方式动态加载(运行时解…

玻纤效应的时序偏差

随着比特率继续飙升,光纤编织效应时序偏移正成为一个越来越严重的问题。对于 5GB/s 及以上的信号传输速率,它实际上会毁了您的一天。例如,左图显示由于 12.7 英寸的纤维编织效果,5GB/s 的接收眼完全闭合。使用 Agilent ADS 软件进…

异步上传石墨文件进度条前端展示记录(采用Redis中String数据结构实现)

事件起因是客户现场需要从石墨文档中获取文件信息,文件信息存在存在多个,进行批量上传。为了用户的友好型体验,需要做进行条展示的方式,具体实现见下文… 上传流程介绍 石墨文档支持从链接🔗方式获取文件信息&#xf…

3D建模的全景图谱:从55个工具到元宇宙的数字革命

3D建模已从专业工程师的工具箱演变为全民创作的数字语言。从代码驱动的精确建模到AI自动生成纹理,从开源协作到程序化生成城市,技术正重塑我们创造虚拟世界的方式。本文将系统解析55个核心3D建模工具/插件,涵盖在线编辑器、开源软件、程序化生…

jsrpc进阶模式 秒杀js前端逆向问题 burp联动进行爆破

案例演示 思路就是 这个 jsrpc远程加载加密函数的方法就是 在js代码中进行插入一个 远程加载的代码 从而实现 : 第一步还是使用 js_tools 进行 查找算法的位置 这个可以帮助我们找到明文>密文 加密算法函数的位置 因为这个需要我们进行js前端代码的修改 所以…

基于BERT-Prompt的领域句子向量训练方法

基于BERT-Prompt的领域句子向量训练方法 一、核心原理:基于BERT-Prompt的领域句子向量训练方法 论文提出一种结合提示学习(Prompt Learning)和BERT的领域句子向量训练方法,旨在解决装备保障领域文本的语义表示问题。核心原理如下: 以下通过具体例子解释传统词向量方法和…