核心设计理念

DeepSeek提出的Engram模块,其核心设计理念在于对大语言模型(LLM)内部处理机制的一次深刻反思与架构革新。 它挑战了传统Transformer模型中"计算即记忆"的同质化假设,提出了一种将静态知识记忆与动态神经计算进行结构性分离与高效协同的新范式。 [1]

"通过引入'条件记忆'这一全新的稀疏性维度,与主流的'条件计算'形成互补,开辟一条通往更高效、更强大AI模型的新路径。"

问题背景:Transformer架构的知识检索缺陷

尽管基于Transformer架构的大语言模型取得了举世瞩目的成就,但其内在设计在处理特定类型的任务时仍存在固有的效率缺陷。 尤其是在知识检索方面,Transformer缺乏一种原生的、高效的查找机制。 [2]

缺乏原生知识查找机制

传统的Transformer模型,无论是密集模型还是混合专家(MoE)模型,其核心信息处理单元是注意力机制和前馈网络。 模型将知识隐式地存储在数十亿甚至数万亿的参数中,当需要检索特定信息时,它必须通过这些复杂的计算层来"重建"或"推断"出所需的知识。 [3]

通过计算模拟检索的低效性

由于缺乏原生的查找机制,Transformer模型只能通过其标准的计算流程来模拟知识检索。这个过程被DeepSeek的研究生动地描述为 "用昂贵的运行时计算来重建一个静态查找表"。论文中引用了一个具体的例子:当模型需要识别"Diana, Princess of Wales"这个实体时, 它需要逐层处理,前几层可能还在分析"Wales"是一个地区,"Princess of Wales"是一个头衔,直到更深的层次才能将这些信息组合起来。 [4]

核心思想:条件记忆与条件计算的互补

O(1)
查找复杂度

Engram实现常数级知识检索

75-80%
MoE最优配比

U型缩放定律揭示最佳分配

20-25%
Engram配比

记忆与计算的完美平衡

Engram作为条件记忆的实现

Engram模块是实现"条件记忆"这一概念的具体载体。它的设计灵感来源于神经科学中的"记忆痕迹"(memory trace), 旨在为大模型提供一个专门的、可扩展的、用于知识存储和检索的组件。与MoE通过条件激活不同专家网络来实现计算上的稀疏性不同, Engram通过条件触发对静态记忆库的查找,实现了在知识维度上的稀疏性。 [5]

U型缩放定律:记忆与计算的最优分配

在提出了条件记忆与条件计算协同工作的双系统架构后,一个关键问题随之而来:在给定的总参数预算和计算预算下, 应该如何最优地在Engram(记忆)和MoE(计算)之间分配资源?为了回答这个问题,DeepSeek团队系统地研究了"稀疏性分配问题", 并在此过程中发现了一个重要的规律——U型缩放定律。 [6]

关键发现:U型缩放定律揭示了记忆与计算之间的最优分配比例, 证明了纯MoE架构并非最优解,为下一代稀疏模型的设计提供了宝贵的理论指导。

技术架构与实现细节

Engram模块的技术实现是其设计理念落地的关键。它并非简单地回归传统的N-gram模型,而是在现代深度学习框架下对N-gram思想的一次彻底现代化改造。 其核心在于通过精巧的架构设计,实现了高效的O(1)知识查找、与Transformer的无缝融合以及与MoE架构的协同工作。

整体架构:检索与融合的两阶段流程

检索阶段

基于哈希N-gram的O(1)查找,通过哈希函数将N-gram元组映射为唯一索引, 实现常数级时间复杂度的知识检索。

hash(N-gram) → index → embedding

融合阶段

上下文感知门控机制,通过注意力机制动态调节记忆贡献度, 解决一词多义问题。

gate = attention(h, e_ngram)

O(1)查找的实现:现代化哈希N-gram嵌入

Engram实现O(1)查找的关键在于其对经典N-gram嵌入技术的现代化改造。传统的N-gram模型面临着两大挑战: 一是存储爆炸问题,二是语义重复问题。Engram通过一系列精巧的技术手段,有效地解决了这些问题。 [7]

多头哈希:避免内存爆炸与冲突

为了解决存储爆炸问题,Engram采用了多头哈希(multi-head hashing)的策略。 它并非将所有N-gram都存储在一个巨大的表中,而是使用多个独立的哈希函数,将N-gram映射到多个规模较小的嵌入表中。 这种设计将存储复杂度从O(V^N)降低到O(V * k),极大地缓解了内存压力。

上下文感知门控:确保记忆的高精度融合

"上下文感知门控是Engram模块的灵魂所在,它赋予了静态记忆以动态的生命力。"

仅仅检索出静态的N-gram嵌入是不够的,因为同一个N-gram在不同的上下文中可能具有不同的含义(即一词多义问题)。 为了解决这个问题,Engram设计了一个上下文感知门控机制(context-aware gating mechanism)[8]

与MoE架构的集成

维度 MoE (条件计算) Engram (条件记忆)
主要目标 条件激活神经专家进行动态计算 条件触发对静态记忆的查找
计算类型 密集的神经网络计算 O(1)确定性的查表操作
典型作用位置 更深的网络层,用于复杂推理 早期网络层,用于模式检索

性能表现与基准测试

DeepSeek通过一系列严格的、控制变量的实验,全面验证了Engram模块的有效性。实验的核心在于, 在完全相同的总参数量(iso-parameter)和总计算量(iso-FLOPs)约束下, 将集成了Engram的模型与纯MoE基线模型进行直接对比。

与纯MoE模型的对比

+3.4%
MMLU提升

在57个学科的多任务语言理解基准上实现显著提升 [9]

+5.0%
BBH推理

在23个挑战性任务上展现卓越的多步推理能力 [10]

97.0%
长文本检索

Multi-Query NIAH准确率从84.2%大幅提升 [11]

+4.0%
CMMLU中文

在中文多任务理解基准上展现跨语言能力

知识密集型任务提升

Engram模块的设计初衷是为了提升模型的知识检索能力,因此,它在知识密集型基准测试上的优异表现是意料之中的。 在衡量模型多任务语言理解能力的权威基准MMLU上,Engram-27B模型相比纯MoE基线取得了显著的提升。

关键成就:在CMMLU中文基准测试中,Engram模型展现出+4.0个百分点的性能提升, 证明了其知识检索机制对不同语言和文化背景的普适性。

推理能力显著提升

最令人惊喜的发现是,Engram模块不仅提升了模型的"记忆力",更显著地增强了其"思考力"。 这似乎有悖常理,但机制分析揭示了其背后的深层原因:Engram通过将静态模式重构的任务从模型的早期层中卸载, 有效地"加深"了网络,使得模型可以将更多的计算资源用于处理需要复杂推理的任务。 [12]

长上下文处理能力飞跃

Engram对长上下文处理能力的提升是其最引人注目的成就之一。通过将局部模式查找与全局上下文建模分离, Engram极大地增强了模型在"大海捞针"式任务中的可靠性。在Multi-Query NIAH准确率测试中, 模型实现了从84.2%到97.0%的巨大飞跃。 [13]

实际应用与对AI产品开发的影响

Engram模块的提出,不仅在学术研究层面具有开创性意义,更对AI产品的开发和部署产生了深远的影响。 它提供了一种全新的思路来构建更高效、更强大、更经济的AI系统,有望推动下一代AI应用的创新。

潜在应用场景

知识密集型应用

  • • 医疗问答系统
  • • 法律分析工具
  • • 金融决策支持
  • • 专业术语处理

推理密集型应用

  • • 代码生成与优化
  • • 数学问题求解
  • • 科学研究辅助
  • • 逻辑推理任务

长上下文应用

  • • 文档摘要生成
  • • 多轮对话系统
  • • 复杂任务规划
  • • 长文本分析

对AI产品开发的影响

"Engram为模型性能的提升提供了一条不同于单纯'堆参数'或'堆算力'的新路径。"

降低对昂贵GPU内存的依赖

Engram在系统设计上的一个巨大优势是其基础设施感知的高效性。由于其查找索引仅依赖于输入的Token序列, 具有确定性,这使得系统可以在运行时进行异步的预取(prefetching)操作。DeepSeek的研究人员展示了将一个 100B参数的Engram嵌入表完全卸载到主机内存(CPU DRAM)中,通过PCIe总线进行数据传输, 而推理吞吐量的损失低于3%@sampan090611/deepseek-engram-explained-how-conditional-memory-and-o-1-lookups-fix-llm-amnesia-50fce3937bb8" class="citation">[14]

技术突破:通过将存储与计算解耦的设计,极大地缓解了当前AI部署中GPU高带宽内存(HBM)昂贵且稀缺的瓶颈, 使得企业可以用更低的成本部署更大、更强的模型。

开源实现与社区反响

DeepSeek选择将Engram模块的代码开源,这一举措极大地促进了技术的传播和社区的参与。 在GitHub上发布的官方实现代码库,包含了论文中描述的核心逻辑和实验设置, 使得研究人员和开发者可以亲手实验、验证和改进Engram架构。 [15]

社区反馈:Engram的发布在AI社区引发了广泛而热烈的讨论。 许多人对Engram在O(1)查找和GPU内存卸载方面的巧妙设计表示赞赏, 认为这为在资源受限环境下部署大模型提供了更实际的解决方案。