作者: Edward J. Hu, Yelong Shen, Phillip Wallis, Zeyuan Allen-Zhu, Yuanzhi Li, Shean Wang, Lu Wang, Weizhu Chen
提交/修订日期: 2021年6月17日提交,2021年10月16日修订 (v2)
摘要:
自然语言处理的一个重要范式包括在通用领域数据上进行大规模预训练,然后针对特定任务或领域进行适应。随着预训练模型变得越来越大,重新训练所有模型参数的完全微调变得不再可行。以 GPT-3 175B 为例——部署独立的微调模型实例,每个实例拥有 1750 亿参数,成本极其高昂。我们提出了低秩自适应(Low-Rank Adaptation, LoRA),该方法冻结预训练模型的权重,并将可训练的秩分解矩阵注入到 Transformer 架构的每一层中,从而极大地减少了用于下游任务的可训练参数数量。与使用 Adam 微调的 GPT-3 175B 相比,LoRA 可以将可训练参数数量减少 10,000 倍,GPU 内存需求减少 3 倍。尽管可训练参数更少,LoRA 在 RoBERTa、DeBERTa、GPT-2 和 GPT-3 上的模型质量与微调相当或更好,同时具有更高的训练吞吐量,并且与适配器(adapters)不同,不会引入额外的推理延迟。我们还对语言模型适应中的秩不足(rank-deficiency)进行了实证研究,这揭示了 LoRA 的有效性。我们发布了一个便于将 LoRA 与 PyTorch 模型集成的软件包,并在 https://github.com/microsoft/LoRA 提供了我们在 RoBERTa、DeBERTa 和 GPT-2 上的实现和模型检查点。
主题/分类:
- 主要: 计算与语言 (cs.CL)
- 其他: 人工智能 (cs.AI); 机器学习 (cs.LG)