LoRA(Low-Rank Adaptation)是一种用于微调大型预训练语言模型(如GPT-3、BERT等)的方法。它通过在预训练模型的特定层插入低秩矩阵来减少参数量,从而使微调更加高效。LoRA的核心思想是在不改变原有模型权重的情况下,通过添加少量新参数来进行微调。
LoRA 微调详解
-
背景:传统的微调方法需要对整个模型的参数进行更新,这对于大型模型来说代价高昂且容易导致过拟合。LoRA通过引入低秩矩阵来减少参数更新的数量,从而降低计算成本和存储需求。
-
原理:LoRA在预训练模型中的特定层(如Transformer层的注意力和前馈网络部分)添加了两个低秩矩阵 �A 和 �B。在前向传播过程中,原有的权重矩阵 W 被调整为W+BA。
-
公式:
假设 �W 是原始权重矩阵,输入为 �X。前向传播公式为