📍 无忆研习社 › 开源解码 › DeepSeek Engram架构深度解析:条件记忆如何突破Transformer性能瓶颈

DeepSeek Engram架构深度解析:条件记忆如何突破Transformer性能瓶颈

摘要:DeepSeek发布Engram架构,通过“条件记忆”技术将静态知识存储于可扩展的查找表中,实现O(1)常数时间检索,与MoE的条件计算形成互补。该架构采用分词器压缩、多头哈希和上下文门控等技术,在相同计算量下显著提升模型性能,并发现MoE与Engram参数分配的U型曲线最优比例为75:25。实验证明,扩展记忆容量可带来持续性能增益,为AI模型提供了一条不依赖增加计算量的新扩展路径。
字号 100%
行距 2.05
当前可见 60% 的内容
本文由 无忆研习社 整理发布,深入剖析DeepSeek最新论文《Conditional Memory via Scalable Lookup》的核心技术原理与实现细节。

前言:一场悄然发生的架构革命

2026年1月12日,DeepSeek在元旦发布mHC(流形约束超连接)论文之后,再次抛出一枚重磅炸弹——Engram架构。这篇论文的作者阵容堪称豪华,DeepSeek创始人兼CEO梁文锋、北京大学王选计算机研究所的赵东岩和张辉帅教授均位列其中。

与其说Engram是一个新模型,不如说它是对大语言模型架构设计理念的一次根本性反思。当整个AI行业都在追逐更大的算力、更多的参数时,DeepSeek团队选择了一条截然不同的道路:通过引入"条件记忆"这一全新的稀疏维度,让模型在降低计算量的同时反而获得更优的性能。

无忆研习社将通过本文,为你完整呈现Engram架构的技术全貌。无论你是AI从业者还是对前沿技术感兴趣的爱好者,相信这篇文章都能让你对"条件记忆"这一概念有全面而深入的理解。


一、问题的根源:Transformer为什么需要条件记忆

1.1 稀疏性已成为智能系统的核心设计原则

在正式介绍Engram之前,我们需要先理解一个关键背景:稀疏性(Sparsity)已经成为现代大语言模型不可或缺的设计理念。

在大模型领域,稀疏性最成功的实现就是MoE(Mixture of Experts,混合专家模型)。MoE的核心思想非常优雅——在处理不同的Token时,只激活不同的参数子集。打个比方,就像一家大型医院有许多专科医生,当病人来看病时,不需要所有医生同时出诊,只需要根据病症找到对应的专家即可。这种机制让模型可以在不显著增加计算量的前提下,实现参数规模的大幅扩张。

DeepSeek-V3、GPT-4等前沿模型都采用了MoE架构,这已经成为构建超大规模语言模型的事实标准。

1.2 语言信号的异质性问题

然而,MoE解决的只是"条件计算"的问题。DeepSeek团队敏锐地发现,大语言模型本质上是在处理高度异质性的信号。

什么是异质性?简单来说,人类语言中既包含需要深度逻辑推理的复杂结构,也包含大量相对静态的知识片段,比如:

  • 静态知识:人名(亚历山大大帝)、地名(银河系)、固定短语(威尔士王妃)、专有名词等
  • 动态推理:逻辑推导、因果分析、创意生成等需要上下文理解的任务

问题来了:现有的Transformer架构并没有为这两种任务设计独立的处理通道。

1.3 昂贵的"记忆重建"代价

现有的大模型在处理"亚历山大大帝"这样的固定短语时,并不能像人类那样直接从记忆中提取。相反,它被迫通过深层的神经网络计算来"模拟"记忆检索的过程。

这就好比你每次想起自己家的地址时,不是直接从大脑的记忆区调取,而是要通过复杂的逻辑推导重新计算一遍。这显然是极其低效的。

DeepSeek团队在论文中明确指出:现有的大模型不得不在早期层中通过昂贵的计算来重建静态知识,从而浪费了宝贵的模型深度。那些本可以用于复杂推理的神经网络层,却被用来做简单的"背诵"工作。


二、Engram的核心理念:条件记忆

2.1 什么是条件记忆

基于上述观察,DeepSeek团队提出了一个与"条件计算"互补的全新稀疏维度——条件记忆(Conditional Memory)。

条件记忆的核心思想可以用一句话概括:依赖于稀疏的查找操作,为固定的知识检索提供静态嵌入表示。

用更通俗的话来说,Engram就是给Transformer加了一个"外接的记忆库"。当模型需要处理静态知识时,不再通过神经网络计算去"重建",而是直接通过查表的方式获取。

这种查找操作的时间复杂度是 (O(1))——常数时间,几乎不消耗计算资源。

2.2 条件计算 vs 条件记忆

为了帮助大家更好地理解,无忆研习社整理了一个对比表格:

维度

条件计算(MoE)

条件记忆(Engram)

核心机制

根据输入动态选择激活的专家

根据输入直接查找静态嵌入

适合的任务

需要动态推理的复杂任务

静态知识、固定模式

时间复杂度

依赖于专家数量和路由计算

(O(1)) 常数时间

参数利用

通过路由选择部分参数激活

通过哈希查找特定嵌入行

两者不是替代关系,而是互补关系。这是Engram设计的精髓所在。

2.3 N-gram的现代化复兴

Engram的技术根基来自经典的N-gram模型。N-gram是自然语言处理领域最古老、最成熟的技术之一,它通过统计连续N个词的共现概率来建模语言。

但传统N-gram有两个致命问题:

  1. 参数爆炸:如果词表大小是V,那么N-gram的参数量是 (V^N),指数级增长
  2. 语义稀疏:不同大小写、不同形态的同一个词被当作完全不同的实体

DeepSeek的贡献在于,他们通过一系列现代化的技术手段——分词器压缩、多头哈希、上下文门控、多分支集成等——将N-gram这个"老古董"改造成了能够在现代LLM中高效运行的条件记忆模块。


三、Engram的技术架构详解

3.1 分词器压缩(Tokenizer Compression)

这是Engram的第一个关键技术。

普通的分词器会把"Apple"、"apple"、"APPLE"这些单词当成完全不同的Token。但从语义角度来看,它们其实指的是同一个事物。这种冗余会大大降低N-gram记忆的密度和效率。

Engram通过预计算一个投影层,对词表进行了"清洗":

  • 大小写统一:全部转换为小写
  • Unicode规范化:处理各种编码变体
  • 语义合并:将形态相似的Token映射到同一个规范形式

经过这番处理,一个原本包含128K个Token的词表,实际上只剩下77%的有效Token。有23%的Token ID被合并了。这让N-gram记忆的信息密度得到了显著提升。

举个例子,假设我们要查询"The Apple Inc."这个三元组(3-gram):

  • 压缩前:需要单独存储"The"+"Apple"+"Inc."、"the"+"apple"+"inc."、"THE"+"APPLE"+"INC."等多种变体
  • 压缩后:所有变体统一指向同一个规范化的记忆槽位

3.2 多头哈希记忆(Multi-Head Hashing)

即使完成了分词器压缩,直接对所有N-gram进行建模仍然是不可行的。假设压缩后词表有100K个Token,那么3-gram的组合数就是 (10^{15}) 量级,远超任何现实可承受的参数预算。

DeepSeek团队引入了多头哈希记忆机制来解决这个问题。

核心思想是:不试图为每个N-gram存储独立的嵌入,而是通过哈希函数将N-gram映射到一个固定大小的嵌入表中。

具体来说:

  1. 设定一个固定大小的嵌入表(比如包含S个槽位)
  2. 对于每个输入的N-gram序列,使用哈希函数计算其对应的槽位索引
  3. 使用多个不同的哈希函数(多头),得到多个嵌入向量
  4. 将多头的结果进行融合

这种设计的优势在于:

  • 固定参数预算:无论N-gram的实际组合数有多少,嵌入表的大小是固定的
  • 降低哈希碰撞噪声:多头机制类似于布隆过滤器的思想,通过多个独立的哈希函数来减少冲突

当然,哈希碰撞是不可避免的——不同的N-gram可能映射到同一个槽位。这就需要下一个技术来解决。

3.3 上下文感知门控(Context-Aware Gating)

多头哈希检索出的记忆是"静态"的,缺乏对当前上下文的适应性。当哈希碰撞发生时,检索到的嵌入可能与实际语境完全不符。

Engram引入了上下文感知门控机制来解决这个问题。

工作原理如下:

  1. 利用当前层经过注意力机制处理后的隐藏状态 (h_t) 作为"查询"
  2. 计算检索到的记忆向量 (m_t) 与当前上下文的相关性得分
  3. 生成一个门控值 (\alpha_t \in [0, 1])
  4. 最终输出 = (\alpha_t \cdot m_t)

当检索内容与当前语境不符时,门控值 (\alpha_t) 会趋向于0,从而抑制噪声;反之,当记忆高度相关时,门控值趋向于1,将外部知识注入信息流。

这种设计使得Engram不仅仅是一个静态数据库,更是一个能够根据语境动态调整的智能记忆体。

3.4 深度可分离因果卷积

为了进一步扩大感受野并增强非线性建模能力,Engram还引入了一个深度可分离的因果卷积(Depth-wise Separable Causal Convolution)层。

因果卷积的"因果"指的是:卷积操作只能看到当前位置及其之前的Token,不能"偷看"未来的内容。这保证了模型在自回归生成时的正确性。

深度可分离则是一种高效的卷积实现方式,它将标准卷积分解为深度卷积和逐点卷积两步,大幅减少了参数量和计算量。

这个卷积层帮助Engram在查找到静态记忆后,能够更好地与局部上下文进行融合。

3.5 多分支架构(Multi-Branch Architecture)

DeepSeek团队没有采用标准的单流残差连接,而是设计了一个多分支架构作为默认的主干网络。

传统的Transformer使用单一的残差流:每层的输出直接加到输入上。而多分支架构将这个残差流扩展为M个并行分支,这些分支:

  • 共享记忆表:所有分支查询同一个Engram嵌入表
  • 共享输出映射:最终汇聚到统一的输出层

多分支的好处是什么?它可以一次性用矩阵乘法搞定多条分支的计算,GPU利用率非常高。这种设计在保持表达能力的同时,最大化了硬件效率。


四、训练与推理优化策略

Engram的一个核心优势在于:记忆检索完全依赖于输入Token,而非运行时的隐藏状态。这种确定性的机制实现了参数存储与计算资源的解耦,为训练和推理阶段的优化提供了巨大空间。

4.1 训练阶段优化

分布式嵌入表存储

当Engram的嵌入表规模达到数十亿甚至上千亿参数时,单张GPU的显存是无法容纳的。DeepSeek的解决方案是:

  1. 将超大嵌入表分片(Sharding)到多张GPU
  2. 利用All-to-All通信按需收集对应的行
  3. 总记忆容量可以随GPU数量线性扩展

这种设计让Engram的记忆容量几乎没有上限——只要你有足够的GPU,就可以存储足够大的知识库。

4.2 推理阶段优化

异步预取机制

由于Engram的访问模式是"预先可知"的(由输入Token决定,而非中间计算结果),系统可以在前几层进行神经网络计算的同时,异步地从主机内存预取后续需要的记忆嵌入。

这种预取与计算的重叠实现了:

  • 隐藏通信延迟
  • 避免GPU停顿
  • 保持推理吞吐量

实验数据令人印象深刻:即使将一个包含1000亿参数的Engram表卸载到主机内存,在H800硬件上的推理吞吐量下降也不到3%。

4.3 层次化存储策略

基于自然语言N-gram的分布特性(少数N-gram高频出现,大量N-gram罕见),Engram采用了多级缓存策略:

存储层级

存储位置

适合的内容

L1缓存

GPU HBM

最高频的嵌入

L2缓存

主机DRAM

中频嵌入

L3存储

SSD

低频嵌入

这种层次化设计让Engram可以扩展至超大规模的记忆,同时保持低延迟和高效率。

4.4 最佳放置位置

Engram在Transformer中的放置位置需要平衡两个因素:

  • 较早放置:有助于尽早完成局部模式的重建,释放深层网络的推理能力
  • 较深放置:延长预取的时间窗口,更好地隐藏通信延迟

DeepSeek的消融实验发现,将Engram模块放在第2层效果最好。这样可以尽早卸载模型背负的局部模式重建任务,让后面的深层网络专注于复杂的全局推理。


五、稀疏分配的U型曲线定律

5.1 核心问题:MoE和Engram如何分配参数预算

当我们同时拥有MoE(条件计算)和Engram(条件记忆)两种稀疏机制时,一个关键问题浮现出来:

在固定的参数预算下,应该把多少参数分配给MoE,多少分配给Engram?

5.2 U型曲线的发现

DeepSeek团队通过系统性的实验,发现了一个重要的规律——U型曲线定律。

实验设置:固定总参数量,变化MoE和Engram的参数占比,观察模型性能(验证损失)的变化。

结果令人惊讶:

  • 100%给MoE,0%给Engram:性能不是最优
  • 0%给MoE,100%给Engram:性能也不是最优
  • 75%-80%给MoE,20%-25%给Engram:性能最优

验证损失曲线呈现明显的U型,最低点出现在约75:25的分配比例处。

5.3 U型曲线的理论解释

为什么会出现这种U型曲线?DeepSeek给出了清晰的解释:

如果完全由MoE主导(100% MoE):

  • 模型缺乏静态模式的专用记忆
  • 所有静态知识都需要通过神经网络计算来"重建"
  • 大量计算资源被浪费在简单的"背诵"任务上

如果完全由Engram主导(100% Engram):

  • 模型失去了动态计算的能力
  • 无法应对需要上下文理解和复杂推理的任务
  • 变成了一个"只会查字典"的笨蛋

最优解在中间某处:

  • MoE负责动态推理
  • Engram负责静态知识存储
  • 两者结构互补,各司其职

这条U型曲线为实际工程部署提供了重要指导:不要把所有资源都投入到神经网络计算中,预留20%-25%给条件记忆是明智的选择。


六、无限内存机制:一个新的Scaling维度

6.1 超越固定参数预算的探索

在确定了最优的MoE-Engram分配比例后,DeepSeek团队进一步提出了一个大胆的问题:

如果我们保持MoE主干不变,单纯增加Engram的记忆容量,会发生什么?

6.2 实验设计

研究人员进行了"无限内存机制"(Infinite Memory Regime)的实验:

  • 保持MoE骨干网络参数量不变
  • 将Engram的嵌入槽位数量从25万逐步增加到1000万
  • 观察模型验证损失的变化

6.3 惊人的发现

结果显示:模型的Loss呈现出严格的对数线性下降趋势。

这意味着什么?

  1. 可预测的Scaling:增大记忆容量会持续带来收益
  2. 无需增加计算量:记忆表的扩展不增加FLOPs
  3. 新的扩展维度:Engram提供了一个与传统"增加参数/增加计算"完全不同的性能提升路径

6.4 与其他方法的对比

DeepSeek还将Engram与其他简单的记忆方法(如OverEncoding)进行了对比。结果表明,Engram的Scaling潜力更大,性能提升更加明显。

这些实验结果验证了条件记忆作为稀疏容量的独立可扩展维度,与MoE的条件计算形成了真正的互补。

无忆研习社认为,这一发现可能对整个AI行业产生深远影响——当GPU和HBM资源紧张时,通过扩展相对廉价的DRAM/SSD存储来提升模型性能,可能成为一条全新的赛道。


七、大规模实验验证

7.1 实验配置

在验证了架构和技术路径的可行性后,DeepSeek团队进行了大规模的预训练实验。具体训练了四个模型:

模型名称

总参数量

激活参数量

特点

Dense-4B

41亿

41亿

全稠密基线

MoE-27B

267亿

与Dense-4B相同

MoE稀疏基线

Engram-27B

267亿

与Dense-4B相同

引入Engram

Engram-40B

395亿

与Dense-4B相同

Engram扩展版

所有模型使用相同的:

  • 训练语料库:2620亿Token
  • 分词器:DeepSeek-V3的128K词表
  • 训练流程和超参数

7.2 Engram-27B的表现

Engram-27B是通过对MoE-27B进行改造得到的:

  • 将路由专家数从72个减少到55个
  • 释放的参数(约57亿)分配给Engram嵌入表
  • 总参数量保持267亿不变

核心结果:

在相同算力和参数量的情况下,Engram-27B相比MoE-27B基线取得了持续的提升。更重要的是,这些增益不仅限于知识密集型任务:

  • 通用推理任务:显著提升
  • 代码生成任务:显著提升
  • 数学推理任务:提升更为明显

这些结果有力地支持了DeepSeek的核心假设:通过引入专门的知识查找原

🔒
该内容仅对更高等级社区用户开放
请谨慎解锁时效性强且发布日期较早的文章
单篇解锁后若未显示全文请刷新页面
您当前:游客 · 可见 60% 内容 · 升级至 注册用户 可见 70%
👀
游客
可见 60%
✓ 当前
注册用户
注册用户
可见 70%
社区精英
社区精英
可见 100%
社区守护
社区守护
可见 100%
仅解锁本文,永久有效。如需PDF珍藏版,请联系站长获取。 当前单篇价格 ¥9.9
✏️ 发表评论

请先登录后发表评论

前往登录
📊 站点统计
今日发布0 篇
文章总数1107 篇
昨日发布1 篇
本月发布31 篇
建站时间456 天
🔍 搜索
站长微语

联系站长

QQ:2805463528
AIGC 技术社区
致力于解码 AI前沿技术 与经验分享
纯粹的技术应用社区

💡 欢迎您的建议与反馈,让社区变得更好

快速通道
联系站长
站长QQ二维码
AI交流群
AI交流群
仍在路上

那些寒夜里追赶过的方向

那些冷眼下没放弃的理想

一篇一篇写到现在

仍在路上

"不羁放纵爱自由"

—— 致敬 Beyond
持续创作中 莫潇羽 · 无忆研习社
▲