2 月 18 日,Kimi 和 DeepSeek 同一天发布新进展,分别是 MoBA 和 NSA,二者都是对 “注意力机制”(Attention Mechanism)的改进。
今天,MoBA 的一位主要研发同学 Andrew Lu 在知乎发帖,自述研发过程的三次踩坑,他称为 “三入思过崖”。他在知乎的签名是“新晋 LLM 训练师”。
这条回答下的一个评论是:“从开源论文、开源代码出发,现在已经进化到开源思维链了嘛。”
注意力机制之所以重要,是因为它是当前大语言模型(LLM)的核心机制。回到 2017 年 6 月那篇开启 LLM 革命的 Transformer 八子论文,标题就是:Attention Is All You Need(注意力就是你所需要的一切),该论文被引用次数至今已达 15.3 万。
注意力机制能让 AI 模型像人类一样,知道在处理信息时该 “重点关注” 什么、“忽略” 什么,抓住信息中最关键的部分。
在大模型的训练阶段和使用(推理)阶段,注意力机制都会发挥作用。它的大致工作原理是,当输入一段数据,如 “我喜欢吃苹果”,大模型会计算句子中每一个词(Token)与其他词的关系,从而理解语义等信息。
而当大模型需要处理的上下文越来越长,标准 Transformer 最初采用的 Full Attention(全注意力机制)对计算资源的占用变得不可忍受,因为原初流程是,需要全部计算所有输入词的重要性分数,再加权计算后得到哪些是最重要的词,它的计算复杂度会随文本变长而平方级(非线性)增长。如 MoBA 论文的 “摘要” 部分所写:
“传统注意力机制中固有的计算复杂性的平方增加,带来令人望而却步的计算开销。”
同时,研究者们又追求大模型处理的上下文能足够长——多轮对话、复杂推理、记忆能力……这些设想中 AGI 应该具备的特性都需要更长长长长的上下文能力。
如何找到一个既没那么占用计算资源和内存,又不损失模型性能的注意力机制优化方法,于是成为大模型研究的重要课题。
这是数家公司将注意力交汇到 “注意力” 上的技术背景。
在 DeepSeek NSA 和 Kimi MoBA 之外,今年 1 月中旬,另一家中国大模型创业公司 MiniMax 也在其首个开源模型 MiniMax-01 中大规模实现了一种新的注意力机制。MiniMax 创始人闫俊杰当时告诉我们,这是 MiniMax-01 最主要的创新点之一。
面壁智能联合创始人、清华大学计算机系副教授刘知远的团队也在 2024 年发表过 InfLLM,其中也涉及一种稀疏注意力改进,该论文被 NSA 的论文引用。
这几个成果中,NSA、MoBA、InfLLm 里的注意力机制都属于 “稀疏注意力机制”(Sparse Attention);而 MiniMax-01 的尝试则主要是另一个方向:“线性注意力机制”(Linear Attention)。
SeerAttention 作者之一,微软亚研院高级研究员曹士杰告诉我们:总体来说,线性注意力机制对标准注意力机制的改动更多、更激进,想直接解决随文本变长,计算度平方爆炸(所以是非线性的)的问题,可能的一个代价是,会损失对长上下文的复杂依赖关系的捕捉;稀疏注意力机制则是利用注意力固有的稀疏性,尝试寻找一种较为稳健的优化方式。
同时在此推荐曹士杰老师在知乎上关于注意力机制的高赞回答:
www.zhihu.com(他回答了 “梁文锋参与发表的 DeepSeek 新论文 NSA 注意力机制,有哪些信息值得关注?会带来哪些影响?” 这个问题。)
MoA(Mixture of Sparse Attention) 的共同一作,清华大学 NICS-EFC 实验室博士傅天予说,在稀疏注意力机制的大方向下:“NSA 和 MoBA 都引入了动态注意力方法,即能动态选择需要计算细粒度注意力的 KV Cache 块,相比一些使用静态方法的稀疏注意力机制,能提升模型性能。这两个方法也都是在模型训练中就引入了稀疏注意力,而非仅在推理时引入,这也进一步提升了模型性能。”
(注:KV Cache 块是存储之前计算的 Key 标签和 Value 值的缓存;其中 Key 标签指注意力机制相关计算中,用于标识数据特征或数据位置等信息的标识标签,以便在计算注意力权重时,能与其他数据匹配和关联 ,Value 值则与 Key 标签对应,通常包含了实际要处理的数据内容,如单词或短语的语义向量等信息。)
同时,这次月之暗面除了发布详细的 MoBA 技术论文,也在 GitHub 该项目网站上发布了 MoBA 工程代码,该套代码已在月之暗面自己的产品 Kimi 中线上使用了一年多。
* 以下为 Andrew Lu 在知乎上的自述,已获得作者授权。原文中有多处 AI 术语,()中灰色文字解释部分均为编者注。原贴链接:
www.zhihu.com