LoRA(Low-Rank Adaptation of Large Language
Models,大型语言模型的低秩适应)是微软研究员提出的一种新颖技术,旨在解决微调大型语言模型的问题。具有数十亿参数的强大模型,如GPT-3,要对其进行微调以适应特定任务或领域的成本非常高。LoRA提议冻结预训练模型的权重,并在每个Transformer块中注入可训练层(称为秩分解矩阵)。这大大减少了可训练参数的数量和GPU内存需求,因为大部分模型权重不需要计算梯度。研究人员发现,通过专注于大型语言模型的Transformer注意力块,LoRA的微调质量与完整模型的微调相当,同时速度更快,计算需求更低。
尽管LoRA最初是为大型语言模型提出的,但这种技术也可以应用在其他地方。在Stable
Diffusion微调的情况下,LoRA可以应用于与描述它们的提示相关的图像表示之间的交叉注意力层。LoRA微调的优点包括:
* 训练速度更快
* 计算需求更低
* 训练权重更小,因为原始模型被冻结,我们注入新的可训练层,可以将新层的权重保存为一个约3MB大小的文件,比UNet模型的原始大小小了近一千倍。
LoRA可以与其他技术结合使用,例如Dreambooth,使训练更快、只需少量图像即可实现目标学习,还可以调整文本编码器以获得更高的主题保真度。总之,LoRA为微调大型语言模型提供了一种快速、低成本的解决方案,使模型能够更容易地适应新的领域或数据集。