143: 阿里、Kimi都在用的DeltaNet是什么?|与杨松琳聊线性注意力新改进
143: 阿里、Kimi都在用的DeltaNet是什么?|与杨松琳聊线性注意力新改进
摘要
- DeltaNet 的产业价值不在于发明了线性注意力,而在于把 2021 年已有的 Delta Rule 变成可并行、可扩展训练的方案。 杨松林后来的工作解决了循环更新难以高效训练的问题,随后 Gated DeltaNet 又把 DeltaNet 与 Mamba-2 式衰减结合起来。“我们没有发明一些特别新的东西”,但新算法让旧技术重新显出潜力。
- Qwen3-Next 与 Kimi Linear 是线性注意力进入旗舰模型前的风险验证,而不是最终胜负证明。 两者公开规模分别为 80B 和 48B,均采用线性与 Full Attention 混合架构;杨松林转述,K3“很可能”沿用 KDA,Qwen3-Next 也可能通向 Qwen3.5。真正的观察点是它们扩大规模后,能否同时守住推理效率、长文本与 Agent 能力。
- 混合架构交易的是容量与成本:Full Attention 保存每个历史 token,线性层则用固定大小状态压缩历史。 前者长文本能力更稳,却会让 KV Cache 无上限增长;后者推理便宜,却可能因容量固定而遗忘。若约 75% 的层换成 RNN 式线性层,KV Cache 可大致减少四分之三,并支持更大 batch size。
- MiniMax 从 M1 的 Lightning Attention 回到 M2 的 Full Attention,暴露的是多跳推理和评估体系风险,也可能反映早期线性模块较弱,而非线性路线已被证伪。 主持人给出的 M1 规模为 456B、激活 45.9B;MiniMax 表示 MMLU 等指标与 Full Attention 差异不大,杨松琳则分析这类任务偏短程,而 A→B→C→D 式多跳推理对 Attention 更敏感。他还认为 MiniMax 仍在验证 hybrid,并提到“一朝被蛇咬,十年怕井绳”的可能因素。
- 稀疏注意力单层能力更强,混合线性架构的长期优势则是减少大部分 KV Cache。 动态稀疏路线保存全部 KV,只减少每次读取和计算;上下文足够长后,存储本身仍会成为瓶颈。线性层“理论上的缺陷”——固定 state size——恰好也是推理加速来源,下一步可能是 Sparse Attention 与 KDA 一类线性层直接混合。
- 即便算力无限,只要高质量数据仍有限,Full Attention 也未必是唯一最优解。 杨松林的条件判断是:无限数据加无限算力时直接用 Full Attention;只有算力充裕、数据受限时,带 locality 等 inductive bias 的线性或 hybrid 架构可能更 data-efficient,优势甚至可能先在 post-training 和 RL 中显现。
- DeltaNet 的另一条期权是状态追踪:它可能以更短 CoT 维护代码变量或 Agent 行为状态,但仍待大规模验证。 杨松林援引计算复杂度视角,称 Softmax/Full Attention 属于 TC⁰,而 DeltaNet 是 NC¹-complete;这可能使后者更擅长 recurrence 和 state tracking。近期观察点不是小 benchmark,而是 K3、Qwen3.5 级模型和能在 pre-training 阶段预测 Agent 表现的新 evaluation。
精读
1. Attention 的本质是沿序列混合信息
- 杨松林把 Attention 定义成“上下文的一个处理机器”:当前 token 要利用前文,就必须在序列维度聚合不同位置的信息,再形成预测下一个词的 representation。
- Full Attention 最直接地建立任意两个 token 的 pairwise interaction,因此复杂度随序列长度呈平方增长;它只是 sequence mixing 的一种实现,并不等于所有注意力机制。
- 线性注意力不再要求每对 token 直接交互。早期方法去掉 softmax,再通过数学变换把运算改写成 RNN 式递归,从而让 inference 随长度线性扩展。
2. 2021 年的 DeltaNet 因训练慢且效果弱而被忽略
- 2020 年的《Transformers are RNNs》已展示线性注意力与递归形式的关系;2021 年《Linear Transformers Are Secretly Fast Weight Programmers》又从 fast weight programming 视角提出 DeltaNet。
- Delta Rule 改写了 fast weight 的更新方式,目标是增强 in-context retrieval:上下文先给出 key-value 关联,模型随后应凭 key 找回对应 value。
- 当时的 DeltaNet 缺少高效训练算法,原作者实现又是显式的逐步循环,速度较慢;再加上现代网络模块尚未补齐,最终既慢,效果也不是特别好。
3. 现代网络组件先救活了线性注意力
- short convolution 让每个 token 不只看自身,还能吸收前面约三个 token 的局部信息;杨松林称它是当代线性注意力“非常重要的模块”,Mamba 又进一步带火了这种设计。
- output normalization 与 output gate 同样逐渐成为标配。配上 RoPE 和简单 decay 后,即使较基础的线性注意力也能明显改善,RetNet、Lightning Attention 等工作都沿此路径推进。
- 杨松林区分网络与算子:输出门控属于外围架构改进;Gated Attention 内部仍可使用 GQA、由 FlashAttention 训练。真正改变更新规则,则是在 sequence mixing 的核心算子上“动刀”。
4. 并行算法把 DeltaNet 变成可扩展模块
- 线性递归展开后会出现转移矩阵的累乘,DeltaNet 的难点正是如何高效计算这一项。杨松林发表的《Parallelizing Linear Transformers with the Delta Rule over Sequence Lengths》给出跨序列长度的并行算法,使 Delta Rule 能够 scalable 地训练。
- 随后的 Gated DeltaNet 可视为 DeltaNet 与 Mamba-2 的结合:既保留更强的 Delta 更新,又加入 decay,也就是类似遗忘门的机制。
- 固定大小的 RNN hidden state 不可能保存全部历史,因此必须主动遗忘;否则有限空间如果把所有东西都记下来,就会被撑爆。
5. KDA 把遗忘从整组控制细化到逐维控制
- 原版 Gated DeltaNet 的 decay 较粗:假设 hidden dimension 为 128,全部 128 个 channel 共享一个遗忘率。Kimi Delta Attention 则让每个维度拥有独立 decay。
- 细粒度控制允许部分维度快速遗忘、部分维度保留长程信息。杨松林因此把 KDA 概括为 GLA 与 DeltaNet 的 combination,把 Gated DeltaNet 概括为 DeltaNet 与 Mamba-2 的 combination。
- 用转移矩阵表达:基础线性注意力从 identity 出发,DeltaNet 变为 identity plus low rank;KDA 又把 identity 放宽为可学习 diagonal,形成 diagonal plus low rank,RWKV-7 也采用相近的 DPLR 形式。
6. Qwen 与 Kimi 已选中 Delta Rule,但尚未完成旗舰验证
- Qwen 团队曾把 global attention、混合注意力、sliding-window attention、Mamba-2 与 Gated DeltaNet 做 apples-to-apples 比较,杨松林转述其结论是 Gated DeltaNet 最好用,随后进入 Qwen3-Next。
- Kimi Linear 的 KDA 保留 Delta Rule,只升级 decay 粒度;Qwen3-Next 为 80B、Kimi Linear 为 48B。当时例如 Kimi K2 这样的旗舰模型仍未采用线性注意力。
- 杨松林认为先训小模型是工业界正常的降风险方式:“不可能一下子就在非常大的 scale 下面验证,要不然验两次基本上就要破产了。”
- 对后续路线,他只作有来源的预测:Kimi 团队在 Reddit AMA 称 K3“很可能”使用 KDA;Qwen 负责人公开表态则让他判断 Qwen3-Next 可能延续到 Qwen3.5。
7. Hybrid 架构用 Full Attention 补线性层的容量上限
- 纯线性模型每层只有固定大小 state;模型层数和宽度固定后,总容量就是常数。序列继续变长,容量却不增加,因此短文本上可能还可以,长文本最终会明显退化。
- Full Attention 为每个 token 保存独立 KV Cache,历史越长,状态也线性增加,所以不会被同一种固定容量约束;代价则是每步都要读取越来越大的 cache。
- 推理本身常受 memory bandwidth 限制。小模型尚可承受 Full Attention,大模型叠加长上下文后,读取无界增长的 KV Cache 会带来很难接受的成本。
- Hybrid 因而保留少量 Full Attention 层兜底,再把大量层换成线性递归;若约 75% 的层被替换,KV Cache 可近似减少四分之三,并容纳更大的 batch。
8. MiniMax 回归 Full Attention,核心担忧是多跳推理
- 主持人给出的 MiniMax M1 规模为 456B、激活 45.9B,采用 Lightning Attention;10 月 27 日发布的 M2 却回到 Full Attention,形成“一边往坑外跳,另一边急着往坑里跳”的反差。
- MiniMax 方面认为,Lightning Attention 在 MMLU 等指标上与 Full Attention 没有什么区别;杨松林分析,MMLU 更像短程 in-context learning,较短 sliding window 已能处理,因此难以检验长程 mixing。
- 多跳推理则要求沿 A→B、B→C、C→D 逐层组合关系,Full Attention 可直接建立点对点联系;线性层把历史压进模糊 state 后,可能无法确认自己究竟保留了什么。
- M2 主要是为了推进 agentic AI,而 Agent 的 interleaved thinking 会产生大量跨步骤依赖,因此回到 Full Attention 有其逻辑。不过 MiniMax 只是“暂时”退回,仍在测试 hybrid。
9. MiniMax 的结果也可能是弱模块与弱评估共同造成
- 杨松林认为 Lightning Attention 只是基础线性更新叠加粗粒度、input-independent decay,“是一个非常弱的线性注意力模块”,不能直接代表 Gated DeltaNet 或 KDA。
- 他的尖锐判断是,M1 能一路放大到数百 B,或许说明内部 eval pipeline 没有充分覆盖长程依赖和多跳推理;若只看 MMLU,架构风险很容易被掩盖。
- 程曼祺追问:Qwen、Kimi 同样要做 Agent,为何仍敢押 hybrid?杨松林的回答并非替它们背书,只是推测各家公司有不同内部 benchmark,并认为最终仍需旗舰开源模型验证。
- 结论因此保持开放:“还是要看 Qwen 和 Kimi,能不能开源出一个比较旗舰的模型。”现阶段只有较小规模证据,尚不能宣告效果问题已解决。
10. Evaluation 决定新架构能否在烧钱前暴露缺陷
- 杨松林提到的 BBH 等多跳 benchmark 可能被针对性优化,却与真实 Agent 场景相关度有限;“benchmark 上面表现得很好”,并不保证商用任务同样可靠。
- 完整链条若要等 pre-training、post-training、RL 全部结束再评估,周期和成本都过高。架构团队需要在 base model 阶段就看到 Agent 能力的可信信号。
- 杨松林提到腾讯尝试构造 base-model Agent 任务,使团队不必等完整后训练后才测。他称 evaluation 是“非常重要的事情”,完善 process metrics 会直接提高架构迭代速度。
- Qwen、Kimi 与 MiniMax 的分歧,可能不仅来自模型选择,也来自各自评估集究竟重视 multi-hop、long-range dependency 还是其他能力。
11. Sparse Attention 能保住信息,Linear Attention 能真正减少状态
- 单看一层,杨松林认为动态 Sparse Attention “肯定更强”:它保存全部 KV Cache,再从中挑回相关 token;既然 Full Attention map 本就很稀疏,选得准便可逼近其效果。
- 线性注意力的 state size 固定,是表达能力上的理论缺陷;但“它既是理论上的缺陷,又是做 inference 加速的动力”,因为需要保存和读取的状态极少。
- 动态稀疏只减少每一步激活、读取的 KV,并不减少 KV Cache 总量。上下文足够长后,存储容量本身成为瓶颈,Sparse Attention 可能对此无能为力。
- Hybrid 的优势因此不只是少算几次,而是让大多数 RNN 层的 cache 在长文本中近乎可忽略,进而扩大 batch size、同时服务更多用户。
12. DeepSeek 正把稀疏选择从 block 推向 token 级
- 早期动态稀疏常按 block 选择,以便连续读取并利用硬件;但 block 也是约束。杨松林举例:同样选择 512 个 token,逐个选理论上比按 32-token block 选 16 块更灵活。
- 他描述 DeepSeek Sparse Attention 的 indexer:先用轻量的平方复杂度模块估计全局相关性,再为每个 token 选前文 top-k。因不需 softmax 的 exponential,可用 FP8 矩阵乘法加速。
- 这一路线并非从头预训练,而是从 mid-training 切入:先把 DeepSeek-V3.1 转成一种 MQA,再用原 Attention distribution 蒸馏 indexer,用于初始化。
- 新难题随之转向选择质量与梯度传递:block 为什么选不准、token-level sparsity 如何训练稳定,都需要回答;至于再主动丢弃部分 KV Cache,杨松林表示“不太确定”已有成熟探索。
13. 无限算力不等于 Full Attention 自动胜出
- 杨松林先限定条件:“无限的数据、无限的算力,那我肯定直接就用 Full Attention。”它缺少强 inductive bias,数据足够多时反而能自由学出模式。
- 若只是算力无限而高质量数据固定,约束会从 compute 转向 data。Full Attention 的 data efficiency 可能较差,带 locality 先验、偏重邻近 token 的线性架构反而可能学得更快。
- post-training 与 RL 的数据通常比 pre-training 更稀缺,因此 hybrid 的效果优势“说不定”会先在这些阶段出现;这是待验证的可能性,不是已证实结论。
- 算力充裕时还可按任务寻找最少必要的 Attention 层,其余层换成线性层,而非在纯 Full 与纯 Linear 之间二选一。
14. DeltaNet 可能用状态追踪换取更短的推理链
- 杨松林自称对理论只是“半吊子”,但援引 circuit complexity:Softmax Attention(Full Attention)属于 TC⁰,而 DeltaNet 是 NC¹-complete,因此后者可能更适合 state tracking。
- 如果 Transformer 需要很长 CoT 才能追踪状态,具备递归状态更新能力的模型或许能用更短推理链达到相同结果,从而节省 inference。
- coding 中变量名和值持续变化,模型必须维护它们的内部状态;网页 Agent 也要记住自己依次打开了什么、执行了哪些操作、当前走到哪一步。
- 这与多跳推理的担忧并不矛盾:hybrid 可能在部分 multi-hop 任务吃亏,却在状态追踪上受益。杨松林反复加上限定——“很有可能”,但需要大规模实验。
15. 下一代更新规则将围绕更强表达与可并行性展开
- 网络外围的 short convolution、normalization、gate 已被反复验证,杨松林认为后续更大的空间在更新规则:除了 Delta Rule,还能否找到既 expressive、又能高效并行的递归。
- Delta Product 尝试让每个 step 不只做一次、而是做多次梯度下降;Mixture of Memory 则探索把 RNN state 作为可类似 MoE 路由的 memory。
- Latent Hybrid Attention 把近邻 token 留给 sliding-window attention,将更远历史压进线性 state,试图同时保留局部精确性和远程压缩能力。
- 他最想看到的是 Sparse Attention 与 Linear Attention 真正做通,例如 DSA 混 KDA,把剩余 global Full Attention 也替换掉,从计算和 KV Cache 两端降低长文本成本。
16. 架构研究必须一次只跨过一个可验证风险
- 当前团队先混 Linear 与 Full,而不直接上 Sparse 加 Linear,并非后者没有吸引力,而是“架构 research 是一个缓慢的过程,它不可能一步子迈这么大”。
- 更稳妥的顺序是:先保留 Full Attention,验证 hybrid;待更大规模的旗舰模型证明放大后仍有效,再尝试用 Sparse Attention 替换剩余全局层。
- 杨松林反对一开始塞入多个 crazy 改动:每次改变一个变量,充分验证后再动下一个,才可能积累“比较实在的进步”。
- 因此近期较清晰的观测指标仍是 K3 与 Qwen3.5,而不是小模型排行榜。“大家可以让子弹再飞一会儿。”
17. Bitter Lesson 的实用解法是先问能否 scale
- 对“是否应给模型加入人为先验”的争论,杨松林认为“一百个人里面有一百种”对 Bitter Lesson 的解读;大语言模型本身也是苦涩教训的一个代表,而把人类先验知识注入模型本身也属于一种先验。
- 他的判断标准更工程化:方法首先要 scalable。效率上需 hardware-friendly,能在大规模训练运行;performance 上则不能只在小浅网络有效,放到深网络便消失。
- 架构研究最沮丧的情形,就是小 scale 改动漂亮、扩大后收益归零。与其抽象争论先验多少,不如做到“好不好大家验,是就是了,不是就不是了”。
- 高质量数据已经受限,使 inductive bias 重新具有现实价值;但它是否胜过 Full Attention,仍必须交给规模实验和任务评估。
18. Householder 灵感来自多年交叉积累,而非一次偶然顿悟
- 杨松林约在 2023 年 9 月开始思考 DeltaNet 并行化,到 2024 年 3 月左右才形成算法。关键是发现转移矩阵类似 Householder 矩阵,并找到其经典 WY 累乘算法。
- WY 把矩阵累乘改写成累加;他看到形式后意识到:“这不就是线性注意力的形式吗?”随后才把 Householder 累乘与线性注意力的分块算法融为一体。
- 这条联想连接了硕士阶段 matrix methods、QR 分解、parsing 的 GPU 并行经验,以及后来对线性注意力算子的理解。“可能想了很久”,最后看似突然的 idea 实际是循序渐进。
- 他判断当前模型若得到合适 prompt,甚至可能独立推出这一算法;因并行结果可验证,也可能用 RL 和 verifiable reward 搜索。但 AI for science 何时超过人类,他坦言“没有什么概念”。
19. FLA 把研究、开源产品与人才流动连成一条链
- FLA 的启发来自 FlashAttention:不少底层 idea 早已有之,但真正出圈依赖易用接口、即插即用的 kernel 和持续回应社区需求。“足够好用”本身就是研究成果进入产业的条件。
- FLA 因此集中实现多种线性模型 layer 与 Triton kernel;用户提出 variable-length training 的需求后,团队又把变长支持系统性补入库中。
- 核心贡献者张宇早年维护并行 parsing 库 SuPar,后与杨松林共建 FLA;他加入 Kimi 后成为 KDA 作者之一。杨松林的描述是,Kimi 想做 hybrid,“不如把这个做得挺好的团队直接搬过去”。
- 对彭博提出应把 DeltaNet 的 credit 给 Jürgen Schmidhuber 的说法,杨松林强调自己沿用了 2021 年工作使用的 DeltaNet 名称,从未声称发明 DeltaNet;他的贡献是“让 DeltaNet 去做 scalable 训练的方法”。
20. Fast Weight 可能把长文本与持续学习汇成同一问题
- 杨松林认为 continual learning 很重要,却仍是缺少定论的 open question。若模型能从持续交互中学习,既可减少周期性重训,也能支持更深的 personalization。
- 当前知识大致有三种落点:pre-training 把信息压进 FFN weights,上下文工程把信息放进 context 与 KV Cache,另有外接 memory;究竟存在哪里更好,尚无统一答案。
- test-time training 把每个 token 当训练样本,对目标函数做 gradient descent,并实时更新 fast weight。快速变化的 weight matrix 又可视为 RNN hidden state,二者存在一种 duality。
- 这条路线若做通,可能把长上下文压缩进更 compact 的 weight matrix,并让模型从新 token 持续更新自身。杨松林认为它“还挺有前景”,但仍把它表述为潜在路径,而非已经解决的问题。