LoRA,英文全称Low-Rank Adaptation of Large Language Models
,直译为大语言模型的低阶适配
,是微软的研究人员为了解决大语言模型微调而开发的一项技术。
例如,GPT-3有1750亿参数,为了让它能干特定领域的活儿,需要做微调,但是如果直接对GPT-3做微调,成本太高。
就像给一个“学霸”补课,让它从“通才”变成某个领域的“专家”
LoRA的做法是,冻结预训练好的模型权重参数,然后在每个Transformer(Transforme就是GPT的那个T)块里注入可训练的层,由于不需要对模型的权重参数重新计算梯度,所以,大大减少了需要训练的计算量。
测试发现,LoRA的微调质量与全模型微调相当。
如果比喻的话,就好比是大模型的一个插件。
QLoRA 是 LoRA 的升级版,结合了量化技术。它将大模型压缩为低位(如 4-bit)格式后再应用 LoRA,实现更低的内存占用。
项目 | LoRA | QLoRA |
---|---|---|
是否量化 | 否 | 是(4-bit) |
显存需求 | 中等(8-bit、16-bit) | 更低(可在一张消费显卡上运行) |
训练方式 | 加入可训练低秩矩阵 | 先量化后加低秩矩阵 |
优点 | 简单、高效 | 极致压缩、适合本地微调 |
用途 | 多任务、多领域微调 | 本地/低资源环境微调大模型 |