Tokenizer-Agnostic Engram Module

发表时间: 2026-07 · arXiv:2607.29065 (SMU/DSO)

原文: https://arxiv.org/abs/2607.29065

Jia Peng Lim, Hai Leong Chieu / Singapore Management University, DSO National Laboratories

速读

一句话结论 本文通过将 Engram 模块的哈希机制从基于 token 的 XOR 哈希替换为基于字节的多项式哈希,实现了分词器无关的条件记忆嵌入,使得采用不同分词器的语言模型能够无损复用预训练的 Engram 权重。

要解决什么问题 原有 DeepSeek 提出的 Engram 模块(一种用于权衡存储与推理能力的条件记忆模块)在查找嵌入时,依赖于 token 级别的 $N$-gram 进行 XOR 哈希计算。这种机制导致 Engram 嵌入与特定的分词器深度绑定。由于不同分词器的词表大小和切词逻辑不同,同一段文本会被切分成数量、顺序截然不同的 token 序列。在原有的 XOR 哈希逻辑下,即使两个不同分词器切分出的 token 序列在底层对应的字节序列完全一致(即字节等价),它们计算出的哈希值也无法对齐。这意味着,一旦模型更换了分词器,就必须从头重新训练庞大的 Engram 嵌入表,不仅造成算力浪费,也阻碍了预训练记忆模块在不同规模或架构模型间的跨分词器复用。因为模型性能通常随词表大小扩展,能够根据模型架构灵活调整分词器同时保留记忆模块,是一个极为重要的工程卡点。

怎么做的 核心思路是将哈希计算的基础从 token 级别下沉到字节级别,通过多项式哈希替代原有的 XOR 哈希,从而保证只要底层字节序列相同,不同分词器产生的 token 序列就能映射到同一个哈希键。原有 XOR 哈希由于满足交换律且依赖 token 划分,会丢失位置信息并导致字节等价但切分不同的序列哈希值冲突或不匹配。为了在不增加计算复杂度的情况下实现字节级哈希,作者设计了基于缓存的流式多项式哈希机制。首先,定义基础的字节级多项式哈希公式为 $$Hash_p(S) = [\sum_{i=0}^{|S|-1} h(s_i) \cdot base^{|S|-i}] \mod M$$ 其中 $h(s_i)$ 是字节的哈希映射,$base$ 是超参数,$M$ 是嵌入表大小。为避免逐字节计算的时间开销,系统会预先缓存每个 token 的哈希值 $C(t)$ 以及 $base$ 的指数幂 $B(power)$。在实际计算一段 token 序列 $T(S)$ 的哈希时,采用无长度追踪的流式变体:$$Hash_p(T(S)) = [...(C(T(S)_0) \cdot B(|T(S)_1|) + C(T(S)_1)) \cdot B(|T(S)_2|) \cdot ... + C(T(S)_{|T(S)|-1})) \cdot B(0)] \mod M$$ 这一设计的计算复杂度保持在与原版相同的 $O(|T(S)| \cdot N)$。除了替换哈希函数,该方法还对 Engram 架构做了两处关键修改:一是引入了对 1-gram 的建模,以防止一个分词器中的单 token 在另一个分词器中被切分为多 token 时发生信息丢失;二是打破了原有按 $N$ 值隔离的嵌入表,采用共享的联合嵌入空间,允许不同长度的 $N$-gram 只要字节等价就能互相访问和混合信息。

效果如何 实验在 dclm-dedup 数据集上进行了 32B 到 150B tokens 的预训练。模型涵盖了基于 Llama2 架构的 SmolLM2-1.7B、Qwen2-7B 以及 Qwen3.5-0.8B,Engram 模块分配了约 35% 的总参数。对比基线主要有两个:一是不带 Engram 的纯主干网络基线,代表常规语言模型路线;二是使用原始 XOR 哈希的 Engram 模型,代表传统的强耦合记忆路线。同分词器设置下,基于 SmolLM2-1.7B 训练 32B tokens 的结果表明,多项式哈希在多数基准测试上表现与 XOR 哈希相当,且大幅优于无 Engram 基线,证明新机制未带来负面影响。在最关键的跨分词器迁移实验中,作者先用 cl100k_base 分词器在 150B tokens 上预训练了一个带 2B Engram 的 Qwen2-7B 模型,随后将其 Engram 嵌入冻结,直接接入使用 SmolLM2 分词器的 Qwen3.5-0.8B 模型中进行 100B tokens 的训练。结果显示,接入跨分词器 Engram 的模型在多数测试中获得提升,其中 BoolQ 提升了 10%,COPA 提升了 7%。消融实验证实,限制 $N=1$ 时性能几乎无提升,说明效果确实源于高阶 $N$-gram 成功跨分词器查询到了预训练记忆,而非单纯增加参数。该方法的代价是引入 1-gram 会带来少量的参数增加,且多项式哈希在理论上仍存在极小概率的偶然哈希碰撞。

主要贡献

DeepSeek的Engram是一个条件记忆模块,被引入用于在大型语言模型中权衡存储与推理能力。然而,该模块依赖于token级别的$N$-gram哈希来进行Engram嵌入的查找,这导致了与所使用的分词器(tokenizer)之间的紧密耦合:如果一个模型使用了不同的分词器,它将不得不从头开始训练自己的Engram嵌入。为了提高Engram嵌入的可重用性,本文提出对哈希例程进行修改,从而实现使用不同分词器的Engram模型之间的兼容性。本文的主要贡献如下:

  1. 定义了关于Engram模块(即其哈希组件)的分词器无关性(Tokenizer Agnosticism)的目标。
  2. 提出了一种直接的替代方案,用通用的多项式哈希取代XOR哈希,详细说明了其优势并保持了相似的算法效率。
  3. 调研了在联合$N$-gram嵌入空间中进行建模的潜在权衡。实验表明,这种简单的替换产生了相当的性能,并且没有带来负面影响。
  4. 在预训练的Engram嵌入上,使用具有不同分词器的模型进行跨分词器迁移训练,通过经验证明了可以实现分词器无关性(即对于字节等价的token序列具有哈希等价性)。

表1:一个简单的例子展示了使用不同分词器可能产生的差异:(i) 由于可能的移位,顺序无法保证(见Mistral/SmolLM2);(ii) 具有不同划分的$N$-gram(见 $\mathtt{SmolLM2/cl100k\_base}$ 中的 'Genghis');(iii) 分词器特定的特征,例如空格前缀、分词器索引等。在这个例子中,使用了token的文本表示。这些混杂因素使得来自不同分词器的相同$N$-gram之间的映射变得复杂。

示例文本: "This is Genghis Khan"
分词器
Mistral '\<s>' 'This' '_is' '_Gen' 'gh' 'is' 'Khan' '\</s>'
SmolLM2 'This' 'Gis$' 'GGien' 'gh' 'is$' 'GKhan' '\<|endoftextl|>'
cl100k_base 'This' 'Gis' 'GG' 'eng' 'his' 'GKhan' '\<|endoftextl>'

背景知识与设计原则

相关工作与分词器锁定问题: 分词器可能共享相同的算法(如BPE或Unigram),但其词汇集合和大小可能不同,导致不同的token序列输入。每个token具有相应的初始哈希值,最终的哈希键是这些token哈希以滚动XOR方式聚合的结果。这导致了Engram嵌入与所用分词器之间的紧密耦合。为了在不同模型间共享Engram嵌入,它们必须使用相同的分词器。由于模型性能随分词器词汇表大小而扩展,因此能够根据模型大小或架构调整分词器是一个重要的考虑因素。除了常见的BPE和Unigram,SuperBPE [1] 和 BoundlessBPE [2] 是跨越预定义分隔符(如空格)包含token的分词方法。这些选择的额外token可以被视为token级别的$N$-gram。这些$N$-gram由分词器算法预先选择,而在Engram模块中,模型在训练期间学习哪些$N$-gram是有用的。Lngram [3] 提出从潜在空间学习离散符号用于嵌入查找,而不是通过token,这牺牲了计算效率。Hash Embeddings [4] 提出了共享嵌入空间,与本文的区别在于本文从字节序列进行哈希以实现字节等价属性。

$N$-gram建模的本质: $N$-gram被广泛研究并用于评估和建模局部信息 [5, 6, 7, 8, 9]。作者认为,真正关键的是$N$-gram底层对应的字节序列,而不是对特定的$n$-gram token进行建模。考虑两个分词器$T_A$和$T_B$分别将字符串$S$分词为2-gram和3-gram的情况。如果$S$包含信息量,理想情况下,这些信息存储在哪个$n$-gram嵌入空间中并不重要。作者将$N$-gram视为一种采样方法,从指数级数量的排列中筛选出潜在的字节序列,供模型学习并确定其有用性。

设计原则与研究问题: 当比较来自不同分词器的不同token序列时,有三个关键场景会影响分词器无关的Engram嵌入的训练:
1. $N$-gram不存在: 来自分词器A的$N$-gram可能永远无法在分词器B的任何token序列中找到。这主要归因于不同的分词行为和词汇表。理论上,当$N$足够大时,将有更多机会对齐不同分词器之间字节等价的$N$-gram。大多数分词器的预处理方式相似,因此共享相似的划分点。
2. 不同$N$-gram的联合嵌入空间: 由于$N$-gram不匹配,不同分词器可能将相同的字节序列划分为不同数量的token。原始实现以不相交的方式对$N$-gram进行建模,这意味着即使学习了完全字节等价的$N$-gram,由于嵌入表的分配,除非两者的$N$相似,否则信息是不可访问的。直接的解决方案涉及移除特定的$N$-gram分配,并允许不同$N$的$N$-gram之间混合。
3. 1-gram要求: 原始实现不建模1-gram信息。在不同分词器之间,一个分词器中的单个token很可能在另一个分词器中被划分为多个token。如果我们在Engram嵌入空间中忽略1-gram,在转移到不同分词器时可能会发生信息丢失。包含1-gram会导致参数的少量增加。

方法细节

分词器差异带来的挑战: 即使扩展了原始的分词器压缩规则(例如大写和空格前缀),并且考虑了不同分词器之间的特殊token和空格前缀,它们仍然很可能产生不同的token序列。即使它们共享一些token词汇,也无法保证token序列将处于相同的顺序,或者它们将使用相同的token进行划分。在表1中展示了 (i) Mistral和SmolLM2的token序列在token顺序上有所不同,以及 (ii) SmolLM2和cl100k_base的token序列在“Genghis”的划分上有所不同。

分词器之间的哈希等价性问题(Problem: Hashing Equivalence between Tokenizers): 作者使用两个不同的玩具BPE分词器$T$及其索引token集合来说明这个问题,这些分词器仅处理包含字符'a'和'b'的字符串。$T_A : \{0: \cdot \text{aa}', 1: \cdot \text{a}', 2: \cdot \text{b}'\}$,以及$T_B : \{0: \cdot \text{a}^\flat, 1: \cdot \text{b}^\flat\}$。给定一个字符串文本$S = \text{“aabb”}$,相应的分词器将产生以下字符串token序列:$T_A(S) : (\cdot \text{aa}', \cdot \text{b}', \cdot \text{b}')$ 和 $T_B(S) : (\cdot \text{a}', \cdot \text{a}', \cdot \text{b}', \cdot \text{b}')$。

字节等价性的定义: 就像实际的分词器一样,无法保证两个不同的分词器会产生相同的分词输出。作者定义$\|T(S)$为$T(S)$中字节的序列内拼接。显然,从$\|T_A(S)$和$\|T_B(S)$中可以恢复出$S$,因此它们是字节等价的,即$\|T_A(S) \equiv \|T_B(S)$。

实现分词器无关的哈希映射: 映射字节等价$N$-gram的一种朴素方法将涉及比较它们的字节。字节等价性确保了我们可以将相同字节的不同token序列映射到相同的嵌入索引,即$Hash(T_A(S)) \equiv Hash(T_B(S))$。请注意,对于这个示例$S$,$T_A$的3-gram与$T_B$的4-gram是字节等价的。为了实现分词器无关性,很明显我们需要字节级别的信息,而不仅仅依赖于token级别的信息,以确保来自不同分词器的$N$-gram的等价性。

字节级比较的挑战: 然而,这一要求本身提出了进一步的挑战:1. 时间开销。比较字节而不是整数token会导致更昂贵的计算,因为$|S| \geq |T(S)|$。2. 空间开销。朴素地存储排列对于大词汇量是行不通的,因为它需要$O(|T|^N)$的空间。

高效哈希的策略与目标: 一种高效的方法将涉及解决这些问题,此外还要使用常见策略确保字节等价的$N$-gram,例如:i. 缓存每个整数token的哈希值以减少重复计算;ii. 从缓存的整数token哈希值按需计算最终的$N$-gram哈希值。目标是,对于任何长度不超过$N$的token序列,当存在字节等价时,我们期望来自不同分词器的不同整数token序列之间具有哈希等价性:$Hash(T_A(S)) \equiv Hash(T_B(S))$ (Eq. 1)。请注意,可能会发生哈希碰撞,即即使Eq. 1不成立时也存在哈希等价性,这仅仅是由于偶然原因。

图1a
(a) DeepSeek原始实现。

图1b
(b) 本文方法:从字节进行哈希,包含1-gram并使用共享的联合嵌入。
图1:原始方法与本文提出方法之间算法和架构变化的视觉化展示。在示例中,设置$N=3$,并使用具有不同字节长度的三个token的token序列$T(S)$。

XOR哈希的缺陷(XOR-hashing): 在原始实现中,$N$-gram索引是通过对token哈希应用XOR得出的(见图1a)。给定token索引到哈希$h$的映射以及超参数$base$和$M$(分配的Engram嵌入表大小),公式为 $Hash_x(T(S)) = [\bigoplus_{i=0}^{|T(S)|-1} h(T(S)_i) \cdot base_i] \mod M$。这不足以实现字节等价$N$-gram的哈希等价性。

反例1(划分不同): 两个来自不同分词器的字节等价$N$-gram可能在划分上有所不同。给定$S_1 = (\cdot \text{ab}', \cdot \text{a}')$和$S_2 = (\cdot \text{a}', \cdot \text{ba}')$,省略不同的token哈希$h$和$M$,除非偶然碰撞,否则 $h(\cdot \text{ab}') \cdot base_0 \oplus h(\cdot \text{a}') \cdot base_1 \not\equiv h(\cdot \text{a}') \cdot base_0 \oplus h(\cdot \text{ba}') \cdot base_1$。

反例2($N$不同): 两个字节等价的$N$-gram在$N$上不同。给定$S_1 = (\text{aba}')$和$S_2 = (\cdot \text{a}', \cdot \text{ba}')$,省略不同的token哈希$h$和$M$,除非偶然碰撞,否则 $h(\text{aba}') \cdot base_0 \not\equiv h(\cdot \text{a}') \cdot base_0 \oplus h(\cdot \text{ba}') \cdot base_1$。

XOR交换律导致的问题: 对于这两个例子,我们都得到了字节等价$N$-gram的不同哈希值。一个简单的修复可能涉及移除位置$base$超参数。然而,XOR的交换律属性增加了哈希碰撞:1. 信息破坏。给定$S_1 = (\cdot \text{a}', \cdot \text{b}', \cdot \text{a}')$,$S_2 = (\cdot \text{b}', \cdot \text{a}', \cdot \text{a}')$,以及一个字节哈希映射函数$h$。因为$h(\cdot \text{a}') \oplus h(\cdot \text{a}') = 0$,这使得它成为奇数个唯一token或字节的哈希,当$S_1 \not\equiv S_2$时,导致$Hash(S_1) \equiv Hash(S_2)$。2. 缺乏位置信息。给定$S_3 = (\cdot \text{a}', \cdot \text{b}', \cdot \text{c}')$,$S_4 = (\cdot \text{c}', \cdot \text{a}', \cdot \text{b}')$,顺序无关性导致当$S_3 \not\equiv S_4$时$Hash(S_3) \equiv Hash(S_4)$,这影响了前一个场景产生的字节变位词。

映射方法的局限性: 另一种可能的方法涉及在两个分词器之间映射token。然而,目前尚不清楚这些非一对一的哈希嵌入在训练期间将如何聚合或解开。此类方法很可能需要额外的复杂机制。

多项式哈希作为高效替代方案(Polynomial-hashing as an Efficient Alternative): 为了实现字节等价序列的哈希等价性,我们需要累积哈希信息。多项式哈希 [10, 11] 是一种符合此标准的常见哈希方法。给定字符串$S$、字节哈希映射函数$h$以及超参数$base$和$M$(Engram嵌入表大小),公式为:$Hash_p(S) = [\sum_{i=0}^{|S|-1} h(s_i) \cdot base^{|S|-i}] \mod M$ (Eq. 3)。

流式变体: Eq. 3可以重写为等效的流式变体:$Hash_p(S) = [...(h(s_0) \cdot base + h(s_1)) \cdot base \cdot ... + h(s_{|S|-1})) \cdot base] \mod M$ (Eq. 4)。

缓存机制: 然而,如前所述,我们必须缓存token哈希以高效计算最终的$N$-gram哈希。我们可以通过缓存每个token $t \in T$的哈希$C(t)$(Eq. 5)和$base$的指数$B(power)$(Eq. 6)来做到这一点:$C(t) = Hash_p(t)$ (Eq. 5),$B(power) = base^{power}$ (Eq. 6)。

基于缓存的哈希计算: 然后我们可以修改Eq. 3以使用Eq. 5和Eq. 6:$Hash_p(T(S)) = [\sum_{i=0}^{|T(S)|-1} C(T(S)_i) \cdot B(\sum_{j=i+1}^{|T(S)|-1} |T(S)_j|)] \mod M$ (Eq. 7)。

无长度追踪流式变体: Eq. 7的等效流式变体更方便,因为它消除了追踪剩余长度的要求:$Hash_p(T(S)) = [...(C(T(S)_0) \cdot B(|T(S)_1|) + C(T(S)_1)) \cdot B(|T(S)_2|) \cdot ... + C(T(S)_{|T(S)|-1})) \cdot B(0)] \mod M$ (Eq. 8)。

计算复杂度: 初始化缓存后,计算token序列$T(S)$的多项式哈希的时间复杂度为$O(|T(S)| \cdot N)$,并且可以使用矩阵运算进行计算,实现了与原始XOR哈希例程相同的复杂度。

多项式哈希示例推导: 给定字符串$S = \text{“abcd”}$,其中其token序列$T(S) = (\text{“ab”}, \text{“cd”})$,根据Eq. 4,我们得到 $Hash_p(S) = (((h(\text{‘a’}) \cdot base + h(\text{‘b’})) \cdot base + h(\text{‘c’})) \cdot base + h(\text{‘d’})) \cdot base] \mod M$。其token $T(S)$的以下缓存值为 $C(\text{“ab”}) = (h(\text{‘a’}) \cdot base + h(\text{‘b’})) \cdot base$,$C(\text{“cd”}) = (h(\text{‘c’}) \cdot base + h(\text{‘d’})) \cdot base$。重新排列Eq. 9表明Eq. 4等价于Eq. 8:$Hash_p(S) = [((h(\text{‘a’}) \cdot base + h(\text{‘b’})) \cdot base) \cdot base^2 + ((h(\text{‘c’}) \cdot base + h(\text{‘d’})) \cdot base) \cdot base^0] \mod M = [C(\text{“ab”}) \cdot B(|\text{“cd”}|) + C(\text{“cd”})] \mod M = Hash_p(T(S))$。

替代哈希机制的适用性: 简单地替换哈希机制使我们能够保持相似的算法效率。本工作使用通用的多项式哈希方法。其他特定的哈希方法,如Bernstein (2005) [12] 和 Degabriele et al. (2024) [13],也可能适用。

实验环境

  • 数据集名称、规模及用途:

    • dclm-dedup:用于模型从头预训练,根据实验不同,使用了32B、100B或150B tokens。
    • wikitext val:包含641个文档共2M tokens,用于评估不同分词器下独特$N$-gram的重叠率,以及用于计算bits-per-byte评估指标。
  • 模型架构关键参数:

    • SmolLM2-1.7B:底层架构为Llama2,采用全SPDA注意力块。
    • Qwen2-7B:使用分组查询注意力(GQA)代替全注意力。
    • Qwen3.5-0.8B-text-only:仅利用其0.7B文本相关参数,使用Gated Delta Net块,与Transformer块的比例为3:1。
    • Engram模块配置:为Engram模块分配约35%的总参数,与DeepSeek原始实现类似。例如,附加0.8B Engram模块时,设置$N=3$,每个块有1M个大小为192的索引。
  • 软件配置:

    • 主要使用HuggingFace仓库的默认设置,修改以使用其他分词器并添加Engram模块。
    • 优化器采用AdamW,配合带warm up的余弦调度器进行预训练。
    • 基准测试采用EleutherAI的lm-evaluation-harness(包括ARC, BoolQ, COPA, HellaSwag, LAMBADA, PIQA, SCIQ, Winogrande)。

实验结果

1. 字节等价$N$-gram分析 (Byte-equivalent $N$-grams Analysis)

  • 实验内容:选取Mistral (~32K) 和 SmolLM2 (~49K) 作为目标分词器,cl100k_base (~100K) 作为参考分词器。使用这些分词器对wikitext val进行分词,获取$N \in [1, 7]$的独特$N$-gram,并比较每篇文档中目标$N$-gram在参考$N$-gram中的存在情况。
  • 实验结果:表2显示,从目标分词器采样的独特$N$-gram中,有很大比例(70%-92%)可以在参考分词器中找到。图2详细分类显示,当目标$N$增加时,在其他参考$N$中找到的字节等价$N$-gram的比例大幅增加。
  • 分析结论:跨分词器确实存在字节等价的$N$-gram,这意味着存储在各自Engram嵌入中的信息是可以跨分词器访问的。如果不强制跨$N$的字节等价约束(即允许跨$N$匹配),将显著增加通过$N$-gram进行跨分词器信息迁移的途径。

图2a
(a) Mistral分词器中独特的$N$-gram在cl100k_base分词器中找到的百分比

图2b
(b) SmolLM2分词器中独特的$N$-gram在cl100k_base分词器中找到的百分比
图2:使用不同目标分词器(Mistral和SmolLM2)在wikitext val上采样的独特$N$-gram,在使用参考分词器(cl100k_base)时存在的百分比。对角线上的$N$-gram对可能被不同地划分。

2. 比较XOR和多项式哈希Engram (Comparing XOR and Poly. Hashing Engrams)
* 实验内容:验证引入1-gram和联合嵌入空间是否会影响Engram模块的预训练。在32B tokens上训练三个基于SmolLM2-1.7B的模型:(a) Base-1.7B无Engram;(b) 附加0.8B Engram模块使用原始XOR哈希;(c) 附加0.8B Engram模块使用提出的多项式哈希(包含1-gram并移除不相交的嵌入空间)。
* 实验结果:表3显示,除了BoolQ之外,多项式哈希在其他基准测试上的结果与XOR哈希相当。在同一个Engram模型中,激活Engram模块相比于停用它(仅依赖主干网络),在Mean准确率和bits-per-byte上有大幅改善。
* 分析结论:对1-gram和联合嵌入空间的修改没有降低预训练性能,且Engram模块确实提供了有效的性能增益。结果的相似性表明,有用的信息存在于字节级别,而$N$-gram空间中的碰撞可以通过注意力机制缓解,$N$-gram的主要作用是采样和筛选潜在有用的字节序列。

3. 训练分词器无关的Engram (Training Tokenizer-agnostic Engrams)
* 实验内容:测试目标分词器模型是否能使用由不同参考分词器训练出的Engram嵌入。首先在150B tokens上预训练Model A(Qwen2-7B,带2B Engram,使用cl100k_base分词器)。然后预训练较小的Model B(Qwen3.5-0.8B),使用SmolLM2分词器在100B tokens上训练。Model B分为无Engram和带有冻结的Model A预训练Engram嵌入($N=7$)两个变体。
* 实验结果:表4显示,Model B + Engram变体在大多数基准测试中均有提升,特别是在BoolQ (+10%) 和 COPA (+7%) 上。如果不激活Engram模块,基准性能会下降。
* 分析结论:公共的$N$-gram是具有意义的,跨分词器对预训练Engram嵌入的查询是成功的,这证明了可以实现分词器无关性。

4. 消融实验 (Ablation Study)
* 实验内容:探究性能提升是否仅仅是因为引入了1-gram。引入Model C,架构与Model B相似,但设置$N=1$(仅允许访问SmolLM2分词器中发现的字节等价1-gram)。在32B tokens上预训练Model C,并与Model B的等效checkpoint进行比较。
* 实验结果:表5显示,对于Model C,激活与停用Engram模块之间的差异微乎其微,而Model B的差异要大得多。图3的训练损失曲线进一步表明,Model C中额外的Engram参数适得其反。
* 分析结论:排除了性能提升来自1-gram的可能性,证明了是$N>1$的$N$-gram成功查询了预训练的Engram嵌入。这也说明拥有更多参数并不一定带来更好的性能。

图3
图3:带有预训练Engram嵌入的Engram模型与参考模型之间训练损失差异随100B token训练过程的曲线图。图上的每个点表示额外的2B tokens。

结论

重用、修改和改进预训练权重是具有成本效益的学术研究的一个重要且普遍的方向。本文强调了字节级和token级$N$-gram信息的可替代性,以消除Engram模块中分词器的紧密耦合。为了实现这一目标,本文提出使用通用的多项式哈希方法来实现字节等价token序列的哈希等价性。这需要修改Engram模块以接受1-gram信息并在共享的嵌入空间中对$N$-gram进行建模。实验表明,这些修改是合理的,并能实现有效的跨分词器迁移。未来可能的工作方向包括以分词器无关的方式扩展Engram;除了占主导地位的英语之外,研究其哈希嵌入的多语言能力也将是非常有趣的。

引用文献汇总

  • [1] Liu et al. 2025. SuperBPE: Space Travel for Language Models. (在背景知识中引用,说明跨分隔符的分词方法)
  • [2] Schmidt et al. 2025. Boundless Byte Pair Encoding: Breaking the Pretokenization Barrier. (在背景知识中引用,说明跨分隔符的分词方法)
  • [3] Zheng et al. 2026. Lngram: Ngram Conditional Memory in Latent Space. (在背景知识中引用,用于对比Engram,Lngram从潜在空间学习离散符号,牺牲了计算效率)
  • [4] Svenstrup, Hansen, and Winther 2017. Hash embeddings for efficient word representations. (在背景知识中引用,指出其与多头嵌入相似,但本文方法从字节序列哈希以实现字节等价)
  • [5] Brants et al. 2007. Large Language Models in Machine Translation. (在背景知识中引用,支撑$N$-gram被广泛用于评估和建模局部信息的观点)
  • [6] Buck, Heafield, and van Ooyen 2014. N-gram Counts and Language Models from the Common Crawl. (同上)
  • [7] Liu et al. 2024. Infini-gram: Scaling Unbounded n-gram Language Models to a Trillion Tokens. (同上)
  • [8] Nguyen 2024. Understanding Transformers via N-Gram Statistics. (同上)
  • [9] Merrill, Smith, and Elazar 2024. Evaluating nGram Novelty of Language Models Using Rusty-DAWG. (同上)
  • [10] Carter and Wegman 1979. Universal classes of hash functions. (在方法细节中引用,作为多项式哈希的基础文献)
  • [11] Bhattacharyya, Nath, and Sarkar 2025. Polynomial hashing over prime order fields. (在方法细节中引用,支撑多项式哈希作为有效替代方案)
  • [12] Bernstein 2005. The Poly1305-AES MessageAuthentication Code. (在方法细节中引用,说明其他特定的哈希方法也可能适用)
  • [13] Degabriele et al. 2024. SoK: Efficient Design and Implementation of Polynomial Hash Functions over Prime Fields. (同上)