发表时间: 2026-10 · Tech report by Empero AI (empero.org)
原文: https://github.com/empero-org/pagegram/blob/main/paper.pdf
作者/机构:Leon Lehmann (Empero AI Research, [email protected], 通讯: [email protected], 代码: http://github.com/empero-org/pagegram)
一句话结论 PageGram 将多头 N-gram 记忆表同阶的所有头映射进同一个闪存页面内,在完全不损失模型质量的前提下,将端侧推理时的每 token 闪存随机读取次数从 16 次降至 2 次,并在固态硬盘(NVMe)上实现了 5 到 8 倍的查找吞吐提升。
要解决什么问题 基于哈希查找的 N-gram 记忆表能以极低的计算量为语言模型增加数十亿参数,现有最强架构(如 Engram 路线)采用多头独立哈希寻址以降低全盘哈希冲突率。但在端侧设备上,数十亿参数的表无法常驻内存,必须存放在以 4 KiB 页面为单位读取的闪存(flash)中。原有多头架构将每个头的表独立分散存放,导致 2 阶(bigram)和 3 阶(trigram)各 8 个头在每个 token 生成时需要触发 16 次分散的随机闪存读取;同时,内存页面缓存(RAM page cache)每次换入的页面仅能为单个头提供服务,导致缓存命中收益极低,闪存 I/O 成为严重的延迟卡点。若退回单头扁平表(flat table)虽只需 2 次读取,但一旦哈希冲突两个 N-gram 便完全不可区分。
怎么做的 PageGram 的核心思路是保留多头结构以维持部分区分能力,但消除物理存储上的分散读取,强行将同一 N-gram 阶数下的所有头约束在同一个页面中。系统将每阶表切分为 $P_n$ 个页面,每个页面内部划分出 $K \times S$ 个槽位(slot),即每个头在该页面内拥有 $S$ 个可选槽位。寻址时先用全局哈希定位页面,再由各头在页面内哈希选择具体槽位:
效果如何 实验使用 61M 参数的小型解码器(6 层,隐藏维度 384)在 228M tokens 多语言预训练数据上评估,统一挂载 200M 参数的 N-gram 表,在单张 RTX 5090 上运行;对比基线包括无表基准、扁平单头表(NanoGPT speedrun 路线)以及 16 个独立素数大小表的多头寻址(Engram 路线)。在 60M tokens 训练后,PageGram($S=4$)测试集损失达到 5.084,在全部 5 个随机种子上均优于扁平表(平均低 0.067 nats)和 Engram 风格寻址(平均低 0.142 nats)。训练延长至 120M tokens 时,PageGram 与 Engram 风格持平(仅相差 0.010 nats),且仍平均优于扁平表;在 92M 参数的更大模型上,其效果在种子噪声范围内与扁平表相当。消融显示 $S=4$ 最具稳定性,而 $S \ge 8$ 会在特定种子上出现性能劣变;此外引入 Engram 式上下文动态门控在当前规模下反而使损失恶化 0.140 nats。部署方面,表权重转为 4-bit NF4 格式仅损失 0.0004 nats;在 20B 参数表配合 1 GiB 缓存的闪存测试中,PageGram 每 token 仅需 0.99 次闪存读取,远低于 Engram 风格的 9.18 次;在 NVMe 实测中提供 5 到 8 倍的每秒查找吞吐(1 队列深度下达到 8,343 次/秒对比 1,048 次/秒)。主要代价在于当 $S=4$ 时单页为 1,088 字节,每 3 页放入 1 个 4 KiB 块会产生约 25% 的文件存储冗余。
哈希 N-gram 表为语言模型提供了数十亿个参数,这些参数只占用内存而不增加计算开销。当前最优秀的架构设计是将每个 N-gram 哈希到多个独立的头上。在终端设备(如手机或笔记本电脑)上,这类大型表通常无法常驻内存,只能存储在闪存(Flash Storage)中,而闪存是以 4 KiB 页面为基本单位进行读取的。独立的哈希头导致每个 token 产生多达 16 次分散的随机闪存读取,且内存页面缓存对这种访问模式几乎失效。
针对该硬件受限问题,本文提出了 PageGram。其核心理念与贡献如下:
图 1:PageGram 在匹配或超越标准表性能的同时,将闪存读取量降低了 8 倍。a:无外部表、扁平哈希表、Engram 风格多头寻址与 PageGram(均为 200M 参数表,5 个种子的平均值)在 60M 训练 token 内的 Held-out Loss 曲线。b:各模型相对于扁平表的最终 Loss 差异,按种子成对展示(圆点代表单个种子)。c:在 20M 测试 token 上,20B 参数量、4-bit 量化的表在不同 RAM 页面缓存大小下的每 token 随机闪存读取次数。
扁平表计算机制:扁平表为每个 N-gram 阶数读取单行(行宽 $w$ 等于模型隐藏层维度 $d$),将两行向量分别乘以哈希生成的伪随机符号向量 $s_n \in \{-1, +1\}^w$ 以减轻不同 N-gram 冲突时的特征相互干扰,然后进行相加累加:
残差流注入与稀疏更新:所提取的向量 $e_t$ 通过可学习的门控机制注入到 Transformer 特定层的前向残差流中。参数表初始全部为零,确保初始步时不干扰基础模型的计算;训练过程是严格稀疏的,单批次内只有被触及的行才会发生梯度更新【Jordan 等人提出 modded-nanogpt 极速训练 baseline (2024, GitHub 地址: https://github.com/KellerJordan/modded-nanogpt);将离散特征哈希到共享行的早期理论 见 Weinberger 等人 (2009, ICML) 以及 Svenstrup 等人提出的 Hash Embeddings (2017, NeurIPS)】。
多头解耦设计:为了将完全冲突转化为部分冲突,多头寻址机制在每个阶数上引入 $K$ 个独立的哈希函数,各自独立寻址行宽为 $r$、行数为 $P_{n, k}$ 的子表,并将提取的 $2K$ 个头向量拼接后经过一个可学习的线性投影矩阵 $W_V \in \mathbb{R}^{d \times 2Kr}$ 进行解码:
相关工作实践:Over-encoding 采用类似的多头切分结构来扩展 N-gram 输入嵌入【Huang 等人 (2025, ICML)】;Engram 则在每个阶数下使用 $K = 8$ 个头,并为每个头配置互质的素数行数,同时使用基于上下文的门控结构 $\alpha_t = \sigma(\mathrm{RMSNorm}(h_t)^\top \mathrm{RMSNorm}(k_t) / \sqrt{d})$ 调制记忆输出【Cheng 等人 (2026, arXiv:2601.07372)】。
两级分层哈希公式:一个 N-gram 序列 $x$ 首先通过其主哈希函数确定唯一的页面索引,各头再利用局部哈希函数在该页面内选择对应的槽位(Slot):
I/O 压缩与模型集成:由于一个阶数下的所有 $K$ 个头全部被打包在同一页面内部,因此处理 bigram 和 trigram 依然总共只触发 2 次闪存页面读取。读出的 $2K$ 个头向量与随机符号掩码相乘后拼接,经由投影矩阵 $W_V$ 映射回模型维度 $d$,并通过每层独立的可学习标量门控 $g_j$ 注入 Transformer 残差流:$x \gets x + g_j e_t$。
图 2:针对单阶 N-gram 的行存储布局示意图(虚线代表 4 KiB 闪存页面)。a:扁平表单次读取一行宽度为 $d$ 的向量。b:Engram 风格寻址中每个头独立哈希到各自的子表中,导致头向量离散分布在不同页面,需要 8 次独立读取。c:PageGram 先通过哈希定位到一个物理页面,各头从该页内的 $S$ 个槽位中挑选一行(图中 $S=4$)。在结合二元和三元阶数时,单个 token 的页面读取次数分别为 2 次、16 次与 2 次。
跨头碰撞相关性推导:参数 $S$ 本质上控制了跨头的碰撞耦合度。任意两个被散列到同一页面的 N-gram,在某一个头发生碰撞的概率独立为 $1/S$。当已知它们在某一个头发生碰撞时,它们在其余 $K-1$ 个头中发生碰撞的期望数量为:
而在 Engram 风格寻址中,两个 N-gram 在第二头发生重合的概率极其微小,仅为 $1/P_{n, k}$(约数万分之一)。
$S$ 谱系的连续插值特性:
NF4 部署存储对齐:在线上部署时,将维度为 64 的各头向量压缩为 NF4 格式【Dettmers 等人提出的 QLoRA (2023, NeurIPS)】,每个头行包含 64 个 4-bit 权重及 1 个 FP16 缩放因子,共 34 字节。
预取能力:因为寻址地址完全由离散 token id 的整型哈希决定,在模型进行网络前向计算之前即可提前计算出物理偏移量并向闪存发出异步读取请求。
模型架构:
外部参数表配置(统一固定约 200M 参数量,相对偏差小于 0.1%):
硬件与软件配置:
| 外部记忆架构 | 表参数量 | 闪存随机读取数/token | Held-out Loss (5 种子均值±标准差) | 相对于无表基线 ($\Delta$) | 相对于扁平表基线 ($\Delta$) | 胜过扁平表的种子数 | 4-bit 量化损失增加量 | 训练吞吐 (Tokens/s) |
|---|---|---|---|---|---|---|---|---|
| 无外部表 (No table) | 0 | 0 | 5.484 ± 0.025 | — | +0.333 ± 0.063 | 0/5 | — | 113K |
| 扁平表 (Flat table) | 200M | 2 | 5.151 ± 0.043 | -0.333 ± 0.063 | 基准 | — | +0.0006 | 110K |
| Engram 风格寻址 | 200M | 16 | 5.225 ± 0.075 | -0.259 ± 0.094 | +0.074 ± 0.033 | 0/5 | +0.0004 | 109K |
| PageGram ($S=4$) | 200M | 2 | 5.084 ± 0.052 | -0.400 ± 0.045 | -0.067 ± 0.063 | 5/5 | +0.0004 | 108K |
| PageGram ($S=15$) | 200M | 2 | 5.126 ± 0.088 | -0.357 ± 0.100 | -0.025 ± 0.092 | 3/5 | +0.0004 | 109K |
数据出处:论文 Table 1 与 Fig. 1
| 实验设置 | 评估种子数 | 无外部表 | 扁平表 | Engram 风格 | PageGram ($S=4$) | PageGram 相对扁平表成对差异 |
|---|---|---|---|---|---|---|
| 60M tokens 训练 | 5 | 5.484 | 5.151 | 5.225 | 5.084 | -0.067 ± 0.063 |
| 120M tokens 训练 | 3 | 4.220 | 4.159 | 4.125 | 4.136 | -0.024 ± 0.052 |
| 更大模型 ($d=512$), 60M | 1 | 5.567 | 5.417 | — | 5.473 | +0.056 |
数据出处:论文 Table 2
| N-gram 阶数 | 存储布局 | 每头行独立容纳数 ($\lambda$) | 行计数方差/均值 (Var/mean) | 外部噪声干扰比例 (Foreign) | 碰撞后额外共享头期望值 | 额外共享头发生概率 |
|---|---|---|---|---|---|---|
| Bigram | Engram 风格 | 25.3 | 0.993 - 1.003 | 0.669 | < 0.001 | < 0.01% |
| Bigram | PageGram ($S=15$) | 25.3 | 0.996 - 1.005 | 0.669 | 0.467 | 38.3% |
| Trigram | Engram 风格 | 61.7 | 0.993 - 1.005 | 0.894 | < 0.001 | < 0.01% |
| Trigram | PageGram ($S=15$) | 61.7 | 0.995 - 1.002 | 0.894 | 0.467 | 38.3% |
数据出处:论文 Table 3
| 槽位数 $S$ | 额外共享头理论期望值 $(K-1)/S$ | 评估种子数 | Held-out Loss | 相对扁平表差异 ($\Delta$) | 胜过扁平表的种子数 |
|---|---|---|---|---|---|
| 1 | 7.00 | 3 | 5.140 ± 0.041 | -0.023 ± 0.030 | 3/3 |
| 4 | 1.75 | 5 | 5.084 ± 0.052 | -0.067 ± 0.063 | 5/5 |
| 8 | 0.88 | 3 | 5.199 ± 0.074 | +0.036 ± 0.075 | 1/3 |
| 15 | 0.47 | 5 | 5.126 ± 0.088 | -0.025 ± 0.092 | 3/5 |
| 60 | 0.12 | 3 | 5.171 ± 0.103 | +0.008 ± 0.099 | 2/3 |
| $\infty$ (Engram-style) | 0.00 | 5 | 5.225 ± 0.075 | +0.074 ± 0.033 | 0/5 |
数据出处:论文 Table 4 与 Fig. 3
图 3:单页槽位数 $S$ 控制冲突相关性。固定 200M 参数表,展示 60M token 训练后 Held-out Loss 随 $S$ 的变化曲线。实心圆点代表单种子,空心圆点代表在稳定性分析中出现劣化的特殊种子 1,实线横条为均值。浅黄色区域为扁平表的均值与方差带。
双重力量平衡假说:
稳定性与推荐配置:在 Seed 1 测试中,弱相关布局($S \ge 8$ 及 Engram)从前 13M token 起便显著落后,最终停滞在 5.28 左右;而强相关布局($S=1$ 和 $S=4$)在所有种子上均表现出极强的鲁棒性,无一例外地维持领先。因此,$S = 4$ 是兼顾最优收敛均值与 100% 稳定性的工程设计。
| 实验分支 | 评估种子数 | Held-out Loss | 相对基准参考差异 ($\Delta$) |
|---|---|---|---|
| PageGram ($S=4$) 基准 | 5 | 5.084 ± 0.052 | 基准 |
| + Engram 上下文相关门控 (Context Gate) | 3 | 5.206 ± 0.044 | +0.140 ± 0.016 |
| 表规模缩减为 1/4 (50M 参数) | 3 | 5.272 ± 0.035 | +0.206 ± 0.086 |
| PageGram ($S=15$) 基准 | 5 | 5.126 ± 0.088 | 基准 |
| + Engram 上下文相关门控 (Context Gate) | 3 | 5.221 ± 0.041 | +0.062 ± 0.131 |
| 表规模缩减为 1/4 (50M 参数) | 3 | 5.324 ± 0.056 | +0.166 ± 0.063 |
数据出处:论文 Table 5
| 表规模 | 布局架构 | 4 KiB 块存储体积 | 零缓存单 token 离散块读取数 | 64 MiB 缓存下每 token 读取 | 256 MiB 缓存下每 token 读取 | 1 GiB 缓存下每 token 读取 | 4 GiB 缓存下每 token 读取 |
|---|---|---|---|---|---|---|---|
| 3.2B | PageGram ($S=4$) | 1.99 GiB | 2 | 1.29 | 1.06 | 0.50 | 0.03 |
| 3.2B | PageGram ($S=15$) | 1.59 GiB | 2 | 1.28 | 1.02 | 0.36 | 0.02 |
| 3.2B | Engram 风格 | 1.59 GiB | 16 | 11.35 | 9.26 | 3.59 | 0.02 |
| 10B | PageGram ($S=4$) | 6.21 GiB | 2 | 1.32 | 1.17 | 0.89 | 0.32 |
| 10B | PageGram ($S=15$) | 4.97 GiB | 2 | 1.32 | 1.16 | 0.85 | 0.18 |
| 10B | Engram 风格 | 4.97 GiB | 16 | 11.67 | 10.48 | 8.10 | 1.54 |
| 20B | PageGram ($S=4$) | 12.42 GiB | 2 | 1.33 | 1.20 | 0.99 | 0.63 |
| 20B | PageGram ($S=15$) | 9.93 GiB | 2 | 1.33 | 1.19 | 0.96 | 0.55 |
| 20B | Engram 风格 | 9.93 GiB | 16 | 11.75 | 10.77 | 9.18 | 5.27 |
数据出处:论文 Table 6 与 Fig. 4a
图 4:实际部署表的闪存开销评估。a:在 20M 测试 token 驱动下,针对 3.2B、10B 和 20B 规模的 4-bit 外部表,未命中 RAM LRU 页面缓存的每 token 随机闪存读取数(纵坐标在小于 1 时为线性刻度,大于 1 时为对数刻度)。b:针对 20B 参数表,在不同并发并发读取深度(In-flight Reads)下,使用直接 I/O 从真实 NVMe 驱动器实测的每秒查表吞吐量。
| 并发在途读取请求数 (In-flight Reads) | 1 并发 | 2 并发 | 16 并发 | 64 并发 |
|---|---|---|---|---|
| PageGram 查表吞吐 (Lookups/s) | 8,343 | 23,615 | 33,508 | 118,874 |
| Engram 风格查表吞吐 (Lookups/s) | 1,048 | 4,607 | 5,205 | 17,405 |
| PageGram 吞吐加速比 | 7.96× | 5.13× | 6.44× | 6.83× |
数据出处:论文 Table 6 与 Fig. 4b
| 参数表类型 | $\times 20$ 学习率倍率 | $\times 70$ 学习率倍率 | $\times 200$ 学习率倍率 |
|---|---|---|---|
| 扁平表 (Flat table) | 6.282 | 6.148 | 6.297 |
| Engram 风格 | 6.244 | 6.180 | 6.193 |
| PageGram ($S=15$) | 6.236 | 6.160 | 6.162 |
数据出处:论文 Table 8
| 实验分支配置 | Seed 0 | Seed 1 | Seed 2 | Seed 3 | Seed 4 |
|---|---|---|---|---|---|
| 无外部表基准 (No table) | 5.455 | 5.471 | 5.480 | 5.494 | 5.520 |
| 扁平表 (Flat table) | 5.175 | 5.164 | 5.150 | 5.188 | 5.078 |
| Engram 风格寻址 | 5.270 | 5.242 | 5.211 | 5.299 | 5.104 |
| PageGram ($S=1$) | 5.168 | 5.159 | 5.093 | — | — |
| PageGram ($S=4$) | 5.010 | 5.071 | 5.117 | 5.146 | 5.074 |
| PageGram ($S=8$) | 5.149 | 5.284 | 5.163 | — | — |
| PageGram ($S=15$) | 5.105 | 5.283 | 5.088 | 5.070 | 5.086 |
| PageGram ($S=60$) | 5.143 | 5.284 | 5.084 | — | — |
| $S=4$ + 上下文门控 | 5.156 | 5.223 | 5.239 | — | — |
| $S=4$ 缩减为 1/4 表 | 5.313 | 5.249 | 5.255 | — | — |
| $S=15$ + 上下文门控 | 5.268 | 5.197 | 5.198 | — | — |
| $S=15$ 缩减为 1/4 表 | 5.273 | 5.384 | 5.316 | — | — |
| 120M Token 长期训练 | |||||
| 无外部表基准 | 4.231 | 4.154 | 4.276 | — | — |
| 扁平表 | 4.146 | 4.157 | 4.175 | — | — |
| Engram 风格寻址 | 4.139 | 4.114 | 4.124 | — | — |
| PageGram ($S=4$) | 4.182 | 4.112 | 4.114 | — | — |
| 放大模型 ($d=512, 8$ 层) | |||||
| 无外部表基准 | 5.567 | — | — | — | — |
| 扁平表 | 5.417 | — | — | — | — |
| PageGram ($S=4$) | 5.473 | — | — | — | — |
数据出处:论文 Table 9
| 标号 | 完整文献信息 | 在方法/正文中的引用段落与原文描述 |
|---|---|---|
| [1] | Alizadeh et al. LLM in a flash: Efficient large language model inference with limited memory. In ACL, 2024. | 2.3 节与 9 节:指出数十亿参数规模的大表无法驻留在手机或笔记本电脑的 RAM 中,从闪存介质中按需读取是其标准替代范式。 |
| [2] | Berges et al. Memory layers at scale. arXiv preprint arXiv:2412.09764, 2024. | 9 节:讨论利用类似注意力机制检索参数的 Product-Key Memory 层,其地址依赖于运行时的隐层激活状态,无法在网络前向之前提前异步预取。 |
| [3] | Bloom. Space/time trade-offs in hash coding with allowable errors. Communications of the ACM, 1970. | 9 节:介绍利用多个独立哈希函数将全局碰撞拆解为局部部分碰撞的理论起源(Bloom Filter 原理)。 |
| [4] | Cheng et al. Conditional memory via scalable lookup: A new axis of sparsity for large language models. arXiv:2601.07372, 2026. | 1 节、2.2 节、7 节、9 节:阐述 Engram 架构,包括采用 $K=8$ 个头独立哈希到素数大小子表中,以及在其输出端配置动态上下文门控的做法。 |
| [5] | Cormode and Muthukrishnan. An improved data stream summary: The count-min sketch and its applications. Journal of Algorithms, 2005. | 9 节:作为利用多哈希函数缓解冲突干扰的经典数据流结构被引用。 |
| [6] | Dettmers et al. QLoRA: Efficient finetuning of quantized LLMs. In NeurIPS, 2023. | 3.3 节与 9 节:用于实际部署的 4-bit NormalFloat (NF4) 数据格式来源,每 64 个参数绑定一个 FP16 缩放因子。 |
| [7] | Hägele et al. Scaling laws and compute-optimal training beyond fixed training durations. In NeurIPS, 2024. | 4 节:用于指导 60M/120M 训练阶段的 Warmup-Stable-Decay (WSD) 学习率衰减调度策略。 |
| [8] | Hu et al. MiniCPM: Unveiling the potential of small language models with scalable training strategies. arXiv:2404.06395, 2024. | 4 节:同样作为 WSD 学习率衰减调度策略在大模型预训练中的成功依据被引用。 |
| [9] | Huang et al. Overtokenized transformer: Vocabulary is generally worth scaling. In ICML, 2025. | 1 节、2.2 节、5 节、9 节:阐述 Over-encoding 方法,即通过多头独立哈希扩增 N-gram 词表嵌入,并揭示了表容量与训练损失间的对数线性扩展定律。 |
| [10] | Jordan et al. modded-nanogpt: Speedrunning the NanoGPT baseline. GitHub repository, 2024. | 2.1 节、3.3 节、9 节:论文采用其提出的行级自适应 RMS 更新算法(包含跳过步数的权重衰减重放机制)以及致密学习率 70 倍的表更新设置。 |
| [11] | Lample et al. Large memory layers with product keys. In NeurIPS, 2019. | 9 节:作为依赖隐藏状态实时动态寻址的先驱记忆网络层被引用对比。 |
| [12] | Liu et al. Scaling embeddings outperforms scaling experts in language models. arXiv:2601.21204, 2026. | 1 节与 9 节:指出在大语言模型中直接扩展嵌入表(Embedding)的参数容量比盲目扩展 MoE 专家网络表现更为优越。 |
| [13] | Loshchilov and Hutter. Decoupled weight decay regularization. In ICLR, 2019. | 4 节:基础 Transformer 稠密参数优化所采用的标准 AdamW 算法出处。 |
| [14] | Putze et al. Cache-, hash- and space-efficient bloom filters. In WEA, 2007. | 9 节:提出 Blocked Bloom Filters 概念,即为了硬件缓存局域性而将一个 Key 的所有哈希位约束在一个 Cache Line 内,即便牺牲部分理论独立性也能大幅提高吞吐。 |
| [15] | Roy et al. N-Grammer: Augmenting transformers with latent n-grams. arXiv:2207.06366, 2022. | 9 节:早期将隐式 N-gram 特征嵌入向量融合入 Transformer 架构的代表性工作。 |
| [16] | Su et al. RoFormer: Enhanced transformer with rotary position embedding. arXiv:2104.09864, 2021. | 4 节:模型自注意力模块中所采用的 RoPE(旋转位置编码)技术出处。 |
| [17] | Svenstrup et al. Hash embeddings for efficient word representations. In NeurIPS, 2017. | 2.1 节与 9 节:作为自然语言处理中利用哈希共享权重机制压缩参数的先驱文献被引用。 |
| [18] | Weinberger et al. Feature hashing for large scale multitask learning. In ICML, 2009. | 2.1 节与 9 节:大规模机器学习领域通过哈希函数将高维稀疏特征映射到共享紧凑向量空间的早期基石文献。 |
| [19] | Yu et al. Scaling embedding layers in language models. In NeurIPS, 2025. | 2.3 节与 9 节:提出的 SCONE 框架将超大 N-gram 表外包存储在加速卡显存之外(如系统内存/NVMe),以此节省推断算力。 |
| [20] | Zhang and Sennrich. Root mean square layer normalization. arXiv:1910.07467, 2019. | 4 节:Transformer 块内部用于替换标准 LayerNorm 的高效 RMSNorm 归一化方法。 |
多头 N-gram 外部记忆模块通过解耦哈希头将严重的完全碰撞转化为局部碰撞,但在端侧落地时却因分散寻址而付出了每个头产生一次随机闪存读取的高昂代价。PageGram 打破了“多头必然离散”的思维定势,通过页面内槽位划分技术,将单个阶数下的所有多头行集中在同一个 4 KiB 物理页面中,成功将单 token 的闪存物理读取压减至与扁平表完全相同的 2 次。
理论分析与大量对照实验表明,多头哈希冲突的高度相关性非但没有损害模型质量,反而在中小规模预训练阶段提升了解码器的优化效率,实现了显著优于 Engram 风格和扁平表的收敛表现;而在长周期训练下,该结构依然能够无损继承多头机制的表征上限。配合 4-bit NF4 紧凑格式,PageGram 在实际 NVMe 硬件上提供了 5 至 8 倍的查表吞吐加速比,为大语言模型在端侧设备上高效调用超大规模稀疏记忆提供了实用可行的工程方案。