论文笔记:OneBit: Towards Extremely Low-bit Large Language Models

202402 arxiv

1 背景

  • 模型量化主要通过把模型的线性层【nn.Linear】(Embedding 层和 Lm_head 层除外)转化为低精度表示实现空间压缩
    • 此前工作的基础是利用 Round-To-Nearest(RTN)方法把高精度浮点数近似映射到附近的整数网格
    • 然而基于 RTN 的方法在极低位宽时(3bit 以下)存在严重的精度损失问题,量化后的模型能力损失十分严重
    • 基于 RTN 的量化方法在 1bit 量化时几乎失效,难以有效地保留原模型的性能。
  • ------>论文提出OneBit 框架,包括全新的 1bit 层结构、基于 SVID 的参数初始化方法和基于量化感知知识蒸馏的知识迁移

2 论文方法

2.1 1bit 结构

  • OneBit 的终极目标是将 LLMs 的权重矩阵压缩到 1bit。
  • 真正的 1bit 要求每个权重值只能用 1bit 表示,即只有两种可能的状态。
    • 论文认为,在大模型的参数中,有两个重要因素都必须被考虑进来
      • 浮点数的高精度
      • 参数矩阵的高秩
    • ------>引入两个 FP16 格式的值向量以补偿由于量化导致的精度损失
      • 不仅保持了原始权重矩阵的高秩
      • 还通过值向量提供了必要的浮点精度,有助于模型的训练和知识迁移
  • 假设对一个 4096*4096 的线性层进行压缩
    • OneBit 需要一个 4096*4096 的 1bit 矩阵,和两个 4096*1 的 16bit 值向量
    • ------>总的位数为 16,908,288,总的参数个数为 16,785,408,平均每个参数占用仅仅约 1.0073 个 bit

2.2 基于 SVID 初始化量化模型

  • 为了使用充分训练好的原模型更好地初始化量化后的模型,进而促进更好的知识迁移效果,论文提出一种新的参数矩阵分解方法
    • 值 - 符号独立的矩阵分解(SVID)
      • 把符号和绝对值分开,并把绝对值进行秩 - 1 近似
        • 秩 - 1 近似可以通过常见的矩阵分解方式实现,例如奇异值分解(SVD)和非负矩阵分解(NMF)

2.3 通过知识蒸馏迁移原模型能力

  • 通过知识蒸馏从未量化模型(教师网络)中学习,实现能力向 量化模型(学生网络)的迁移

3 实验

3.1 效果

  • 从 1.3B 到 13B 不同大小、OPT 和 LLaMA-1/2 不同系列的模型来证明 OneBit 的有效性

3/2 效率

相关推荐
sauTCc9 分钟前
N元语言模型的时间和空间复杂度计算
人工智能·语言模型·自然语言处理
fantasy_arch17 分钟前
深度学习--softmax回归
人工智能·深度学习·回归
eqwaak024 分钟前
量子计算与AI音乐——解锁无限可能的音色宇宙
人工智能·爬虫·python·自动化·量子计算
Blossom.11829 分钟前
量子计算与经典计算的融合与未来
人工智能·深度学习·机器学习·计算机视觉·量子计算
跳跳糖炒酸奶1 小时前
第四章、Isaacsim在GUI中构建机器人(1): 添加简单对象
人工智能·python·ubuntu·机器人
扫地的小何尚1 小时前
NVIDIA工业设施数字孪生中的机器人模拟
android·java·c++·链表·语言模型·机器人·gpu
猿饵块1 小时前
机器人--ros2--IMU
人工智能
硅谷秋水1 小时前
MoLe-VLA:通过混合层实现的动态跳层视觉-语言-动作模型实现高效机器人操作
人工智能·深度学习·机器学习·计算机视觉·语言模型·机器人
LS_learner1 小时前
小智机器人关键函数解析,Application::OutputAudio()处理音频数据的输出的函数
人工智能·嵌入式硬件
2301_764441331 小时前
基于神经网络的肾脏疾病预测模型
人工智能·深度学习·神经网络