返回文章列表
推理与部署

小模型的Embedding太贵了?冻结式词表将模型压缩到46MB

阅读约 3 分钟

导语

在小型语言模型中,Embedding词表往往不是“配角”,而是最大的参数和存储负担。以Gemma 3 270M为例,词表包含约1.68亿个参数,占模型总参数的很大比例;而在其他模块被量化后,Embedding通常仍保留更高精度,因此会继续占据模型文件的大部分空间。

Hugging Face Daily Papers收录的一项研究提出了一个直接的问题:小模型是否真的需要一张可训练的Embedding表?研究者用每个词元一个512位的固定编码替代传统词表。编码来自预训练Embedding,经过主成分投影和符号二值化生成;完成初始化后,词表不再参与训练。

核心结果

  • 参数显著减少:研究使用与普通版本相同的Gemma形状模型,并在同样的20.5亿个词元上从头训练。冻结词表模型的可训练参数约少至原方案的相应水平,而学习词表带来的验证损失优势只有0.20 nat,却需要约2.6倍的可训练参数。
  • 多数基准不落后:在LAMBADA、HellaSwag和PIQA上,冻结词表模型表现更好或持平;ARC-Easy则由可训练词表占优。这说明平均验证损失并不能完全代表下游任务表现。
  • 长尾词元更稳健:在罕见词测试中,冻结方案领先约1.7至2.3 nat。加入训练结束后才出现的1万个新词元时,冻结模型的性能代价约为3%,而可训练词表模型下降约43%。
  • 端侧部署更具吸引力:将冻结词表与BitNet b1.58三值化主体结合后,完整模型文件约46MB。在笔记本CPU上,报告的生成速度为每秒615至740个词元,运行时内存约62MB;相比llama.cpp中的浮点模型8位GGUF版本,速度提升约5至6倍,内存占用约降至七分之一。

意义与限制

这项工作的价值不只是把Embedding压缩成更小的文件,更在于重新审视了小模型中“词元表示必须持续学习”的默认设计。固定编码可以把大量存储预算留给Transformer主体,也能在词表扩展和罕见词处理上提供更稳定的行为,因此尤其适合手机、笔记本等离线设备。

不过,结果不应被解读为Embedding在所有模型中都“定价过高”。现有实验聚焦于小规模模型和特定训练预算;当模型变大、训练数据更多时,主体网络是否会更依赖可调整的词元表示,仍需要进一步验证。研究讨论中也提出,应按语言、字符集和领域拆分评测,而不能只看平均损失;新词元的编码成本、跨语言表现,以及更大训练规模下冻结词表是否成为瓶颈,都是后续关键问题。

总体而言,这是一种面向端侧推理的实用设计:它未必取代可训练Embedding,却为小型、低比特语言模型提供了一个低存储、可扩展的默认选项。

来源:Hugging Face Daily Papers

评论

正在确认登录状态……

正在加载评论……

相关文章

CCTest · Blog
DLite:面向智能体长上下文的无历史投机解码
推理与部署
cctest.ai
推理与部署

DLite:面向智能体长上下文的无历史投机解码

DLite 针对智能体应用中上下文持续增长、多轮交互频繁导致的投机解码效率下降问题,提出一种不显式维护历史上下文的草稿生成框架。它复用目标模型的上下文隐藏状态,并结合轻量级顺序预测头提升候选 token 的可接受长度。

阅读全文