BitNet 蒸馏

发表
HUANG SHAOHANHUANG SHAOHAN 提交
作者: Xun Wu, Shaohan Huang, Wenhui Wang, Ting Song, Li Dong, Yan Xia, Furu Wei

摘要

AI 生成总结
BitNet Distillation 使用 SubLN、多头注意力蒸馏和持续预训练将大型语言模型微调到 1.58 位精度,在显著提高内存和推理速度的同时,实现了可比的性能。
在本文中,我们提出了 BitNet Distillation(BitDistill),一个轻量级的流水线,它将现成的全精度 LLM(例如 Qwen)微调到 1.58 位精度(即三元权重 {-1, 0, 1})以用于特定的下游任务,从而以最低的计算成本实现了强大的特定任务性能。具体来说,BitDistill 结合了三项关键技术:BitNet 中引入的 SubLN 模块;基于 MiniLM 的多头注意力蒸馏;以及作为关键热身步骤的持续预训练,以减轻在特定任务上微调的全精度 LLM 和 1.58 位 LLM 性能差距的可扩展性问题。实验结果表明,BitDistill 在模型大小方面取得了与全精度对应模型相当的性能,同时实现了高达 10 倍的内存节省和 2.65 倍的 CPU 推理速度。代码可在 https://github.com/microsoft/BitNet 获取。
查看 arXiv 页面查看 PDF
BitNet 蒸馏

评论

HUANG SHAOHANHUANG SHAOHAN
论文提交者

在这篇论文中,我们提出了 BitNet Distillation (BitDistill),这是一个轻量级的流程,可以将现成的全精度 LLM(例如 Qwen)针对特定下游任务微调为 1.58 位精度(即三元权重 {-1, 0, 1}),以极低的计算成本实现了强大的任务特定性能。具体来说,BitDistill 包含三种关键技术:BitNet 中引入的 SubLN 模块;基于 MiniLM 的多头注意力蒸馏;以及持续预训练,它作为重要的预热步骤,以减轻性能差距在微调全精度和 1.58 位 LLM 在特定任务上的可扩展性问题。实验结果表明,BitDistill 在模型尺寸上达到了与全精度对应模型相当的性能,同时实现了高达 10 倍的内存节省和 2.65 倍的 CPU 推理速度提升。

OleksiiOleksii

有没有办法将这些1.58位的精炼权重之后转换为GGUF格式?我很想尝试一下,但是我需要在llama.cpp上部署:o