QLoRA 量化参数与秩的平衡艺术

📚 共计 30 章节
01
QLoRA 概述
什么是 QLoRA?为什么需要它?与 LoRA、全参数微调的核心区别。
基础对比
02
量化基础
模型量化的基本原理(FP16、INT8、NF4),量化对模型精度的影响。
原理精度
03
NF4 数据类型
NF4 的数学原理、分布特性,为什么它适合 LLM 权重。
NF4分布
04
双重量化
QLoRA 中的双重量化机制,如何进一步压缩显存占用。
显存压缩
05
LoRA 原理回顾
低秩分解的本质,秩 r 如何影响参数量和表达能力。
低秩参数
06
秩 r 的直觉理解
秩 r 与模型容量的关系,低秩假设在 LLM 中的有效性。
容量假设
07
秩 r 的选择策略
常见选择(r=8, 16, 32, 64),不同任务对秩的敏感度。
策略敏感度
08
量化参数与秩的交互
量化精度与秩 r 如何共同影响最终模型性能。
交互性能
09
显存占用分析
不同量化级别(NF4, INT8)与不同秩 r 下的显存占用公式。
显存公式
10
训练速度权衡
量化与秩对前向/反向传播速度的影响,计算瓶颈分析。
速度瓶颈
11
精度-速度-显存三角
如何在三者之间找到最优平衡点。
平衡三角
12
实验设计方法论
如何设计对比实验来寻找最佳 (量化, 秩) 组合。
实验方法论
13
案例研究 1:7B 模型
在 7B 模型上微调,寻找性价比最高的配置。
7B性价比
14
案例研究 2:13B 模型
在 13B 模型上微调,显存受限场景下的妥协方案。
13B显存受限
15
案例研究 3:70B 模型
在 70B 模型上微调,极低资源下的极限配置。
70B极限
16
任务类型的影响
指令跟随、文本分类、代码生成等任务对 (量化, 秩) 的偏好。
任务偏好
17
数据集大小的影响
小数据集 vs 大数据集,如何调整秩和量化策略。
数据量策略
18
学习率与秩的联动
高秩需要更低学习率?量化噪声与优化器行为。
学习率联动
19
目标模块的选择
在哪些模块上应用 LoRA(Q, K, V, O, FFN)与秩的配合。
模块配合
20
合并与推理
量化 + LoRA 权重合并时的精度损失,推理时的反量化开销。
合并推理
21
工具与框架
Hugging Face PEFT、Bitsandbytes、TRL 中的 QLoRA 实现细节。
框架实现
22
常见错误 1
梯度量化误差累积,如何通过 warmup 缓解。
错误warmup
23
常见错误 2
秩设置过高导致过拟合,低秩反而泛化更好。
过拟合泛化
24
常见错误 3
量化参数与秩不匹配,导致训练不稳定。
不匹配稳定
25
高级技巧 1:动态秩
动态秩调整,在训练过程中根据 loss 变化调整秩。
动态loss
26
高级技巧 2:混合精度量化
不同层使用不同量化级别。
混合层级
27
高级技巧 3:秩的初始化
正交初始化 vs 随机初始化。
初始化正交
28
评估指标
PPL、下游任务准确率、显存峰值等评估方法。
评估指标
29
未来趋势
4-bit 以下量化、自适应秩、硬件感知的量化配置。
趋势自适应
30
总结与最佳实践
决策流程图,帮助根据自身资源选择最佳配置。
总结流程图