ReALLM:LLM 压缩与微调的通用框架
我们提出了一种简单的方法来对预训练语言模型进行内存高效的适应。我们的方法使用迭代算法将每个预训练矩阵分解成高精度低秩部分和内存高效的量化部分。在微调过程中,量化部分保持固定,只有低秩部分被更新。我们提出了量化部分的整数线性规划形式,可以在总体存储器预算的情况下动态配置量化参数(例如,位宽,块大小)给每个矩阵。我们进一步探索了数据感知版本的算法,该算法使用 Fisher 信息矩阵的近似来加权矩阵分解过程中的重构目标。在适应 RoBERTa 和 LLaMA-2(7B 和 70B)的实验中,我们的低秩加量化矩阵分解方法(LQ-LoRA)优于 QLoRA 和 GPTQ-LoRA 基准,并且能实现更激进的量化。例如,在 OpenAssistant 基准测试中,LQ-LoRA 能够学习一个 2.5 位的 LLaMA-2 模型,与使用 4 位 QLoRA 微调的模型竞争。在语言建模校准数据集上微调时,LQ-LoRA 还可以用于模型压缩;在这种情况下,我们的 2.75 位 LLaMA-2-70B 模型(考虑了低秩部分的平均位数,并且需要 27GB 的 GPU 内存)与原始模型在全精度上竞争。
Nov, 2023
通过自适应通道重组技术,QLLM 提出了一种准确高效的低精度模型量化方法,实现了对大规模语言模型的低精度量化,并在 LLaMA-2 上相较于之前最先进的方法提高了 7.89% 的平均准确率。
Oct, 2023
通过将细调的大语言模型进行分解和压缩,并采用混合精度的方法,我们提出了一个保持模型性能的增量量化方法,实验证明其在各种细调的语言模型中表现出与完整模型相当的性能,在低秩和低比特方法上也表现出明显优势,并且与其他基础语言模型兼容。
Jun, 2024
通过降阶建模和重参数化,本文提出了一种创新的大规模语言模型压缩方法,可在对内存和时间有严格限制的条件下,以逐层方式对十亿级模型进行压缩,与当前流行的结构化修剪方法相比,展现出卓越的效果。
Dec, 2023
为了解决大型语言模型在实际应用中的内存需求和推断成本的问题,我们提出了一种高效的仅权重量化方法,通过减少内存消耗和加速推断来实现。我们引入了一种简单而有效的启发式方法,仅利用预训练模型的模型权重来确保最小质量降低。该方法适用于混合专家模型和密集模型,并且无需额外的微调。通过分析量化大型语言模型的挑战和问题,并采用自适应的量化粒度进行解决,我们展示了我们提出的方法的有效性。此外,我们实现了高效的 GPU 矩阵乘法和解量化算法,支持 fp16 或 bf16 激活与 int8 或 int4 权重的乘法。我们在 OPT-175B 和内部混合专家模型等大规模开源模型上评估了我们的方法,展示了最小的准确性损失,并在相同数量的 GPU 上实现了高达 3.65 倍的吞吐量。
Aug, 2023
大规模语言模型的压缩方法如量化和参数修剪在减小模型的内存占用和流量上进行了积极探索,本研究通过对低秩分解方法,特别是 Tucker 分解,在近期语言模型上的研究,包括一个开源的语言模型 Llama 2,详细分析和评估了准确性和效率之间的平衡,结果表明在模型减小 9% 的情况下,最小的准确率下降为 4% 到 10%,此研究表明低秩分解可以成为大规模语言模型应用的有前途的方向。
May, 2024
基于大型语言模型的权重分解以及压缩方法,通过新的无需语料库参与、保持正交性的数据无关联 Rank-k 近似方法,成功压缩了 80% 的参数并保留了原始性能的 93.43%。同时,对经过 Rank-k 近似的权重矩阵进行了深入研究以验证假设。
Feb, 2024
在这项研究中,我们展示了通过增加量化维度可以显著改善神经网络量化的大小和准确性之间的权衡。我们提出了 GPTVQ 方法,一种新的快速方法,用于对大型语言模型(LLMs)进行训练后的向量量化(VQ),并在多列的量化和未量化权重更新之间交错使用每层输出重建 MSE 的 Hessian 信息。通过使用数据感知的 EM 算法的高效版本初始化码本,然后使用整数量化和基于 SVD 的压缩来进行进一步压缩。GPTVQ 在诸如 Llama-v2 和 Mistral 之类的各种 LLMs 上建立了新的最先进的大小与准确性权衡状态。此外,我们的方法高效:在单个 H100 上处理 Llamav2-70B 模型需要 3 到 11 个小时,具体取决于量化设置。最后,通过对移动 CPU 上的 VQ 解压缩进行设备上的计时,我们显示 VQ 相比于使用 4 位整数格式可以提供改进的延迟。
Feb, 2024