---
title: "Low-Rank Adaptation (LoRA) — 低秩自适应"
source: "https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94"
wiki: "systems-analysis.info/int"
article: "Low-Rank_Adaptation_(LoRA)_—_低秩自适应"
language: "zh"
categories:
  - "Category:Chinese"
  - "Category:Large language models"
  - "Category:Machine learning"
revision_id: 3940
wiki_created_at: 2026-09-06T23:28:15Z
wiki_modified_at: 2026-09-06T23:28:15Z
downloaded_at: 2026-09-07T22:59:48Z
---

# Low-Rank Adaptation (LoRA) — 低秩自适应

**Low-Rank Adaptation** (**LoRA**) 是一种参数高效微调 (Parameter-Efficient Fine-Tuning, PEFT) 方法，它能够以最小的计算成本使大型语言模型 (LLM) 适应新任务。该技术由**Edward Hu**及其同事于2021年首次提出<sup>[\[1\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-hu2021-1)</sup>。

对 LLaMA 或 GPT 等大型模型进行全量微调 (*full fine-tuning*) 需要巨大的资源，这使得大多数研究人员和开发人员无法承担。LoRA 通过只微调模型的一小部分参数来解决这个问题，同时保持了与全量微调相媲美的高质量和性能<sup>[\[2\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-mao2024-2)</sup>。

## 工作原理

LoRA 的核心思想是不改变预训练模型的原始权重，而是为其增加一个小的“校正”矩阵。LoRA 并不直接训练巨大的权重矩阵 \`W\`，而是将其变化量表示为两个低秩小矩阵的乘积。

形式上，如果原始层权重矩阵 \`W_0\` 的维度为 \`d × k\`，其更新量可以表示为 \`ΔW = BA\`，其中 \`B\` 是一个 \`d × r\` 维的矩阵，\`A\` 是一个 \`r × k\` 维的矩阵。秩 \`r\` 是一个超参数，且远小于 \`d\` 和 \`k\` (\`r \<\< d, k\`)。在微调过程中，原始权重 \`W_0\` 被**冻结**，只有矩阵 \`A\` 和 \`B\` 参与训练。最终的权重矩阵计算公式为 \`W = W_0 + BA\`。

这使得可训练参数的数量减少了数千倍。例如，在微调 **GPT-3**（1750亿参数）时，LoRA 将可训练参数数量减少了10000倍，并将GPU显存需求降低了3倍<sup>[\[1\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-hu2021-1)</sup>。

## 关键优势

- **节省资源**：显著减少可训练参数的数量（高达90%或更多），从而大幅降低显存（VRAM）消耗并加速训练过程。
- **无推理（inference）延迟**：训练完成后，矩阵 \`B\` 和 \`A\` 可以通过计算 \`W = W_0 + BA\` 与主权重矩阵 \`W_0\`“合并”。这样，在模型推理期间不会增加任何额外的计算或延迟<sup>[\[1\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-hu2021-1)</sup>。
- **模块化与任务快速切换**：训练好的 LoRA 适配器是小文件（仅几MB大小）。这使得为不同任务存储数十个适配器并快速切换变得容易，而无需更改基础模型<sup>[\[3\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-ibm_lora-3)</sup>。

## 局限性与变体

尽管 LoRA 非常高效，但其低秩特性对于需要记忆大量新信息的任务可能成为一个限制。为了解决这个问题以及其他挑战，研究人员提出了多种变体。

### QLoRA

**QLoRA** (Quantized Low-Rank Adaptation) 是最流行的变体之一，于2023年被提出。它将 LoRA 与基础模型的**4位量化**相结合<sup>[\[4\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-dettmers2023-4)</sup>。这可以进一步降低内存需求，使得在单个消费级GPU上微调拥有数百亿参数的模型（例如65B模型）成为可能。基于QLoRA技术，研究人员创建了**Guanaco**模型，其表现可与ChatGPT相媲美。

### 其他变体

- **MoRA** (High-Rank Updating): 针对LoRA因秩限制而性能不佳的任务而提出。MoRA采用的方法可以在保持参数效率的同时实现高秩权重更新<sup>[\[5\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-jiang2024-5)</sup>。

## 实现与应用

LoRA 技术因其高效性和易于集成而得到广泛应用。**Hugging Face** 公司的 **PEFT** (Parameter-Efficient Fine-Tuning) 库在其推广中发挥了关键作用。PEFT 提供了一个统一的接口，可将 LoRA 和其他 PEFT 方法应用于 Transformers 生态系统中的模型<sup>[\[6\]](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_note-hf_peft-6)</sup>。

LoRA 被广泛用于：

- 适配聊天机器人和对话系统（例如微调 LLaMA、Mistral）。
- 在特定领域创建用于文本分类和生成的模型。
- 根据特定风格或数据格式对模型进行个性化定制。

## 外部链接

- <a href="https://huggingface.co/docs/peft/index" class="external text" rel="nofollow">Hugging Face PEFT 库官方文档</a>

## 参考文献

- Hu, E.J. et al. (2021). *LoRA: Low-Rank Adaptation of Large Language Models*. <a href="https://arxiv.org/abs/2106.09685" class="external text" rel="nofollow">arXiv:2106.09685</a>.
- Dettmers, T. et al. (2023). *QLoRA: Efficient Finetuning of Quantized LLMs*. <a href="https://arxiv.org/abs/2305.14314" class="external text" rel="nofollow">arXiv:2305.14314</a>.
- Zhang, Q. et al. (2023). *AdaLoRA: Adaptive Budget Allocation for Parameter-Efficient Fine-Tuning*. <a href="https://arxiv.org/abs/2303.10512" class="external text" rel="nofollow">arXiv:2303.10512</a>.
- Chen, Y. et al. (2023). *LongLoRA: Efficient Fine-Tuning of Long-Context Large Language Models*. <a href="https://arxiv.org/abs/2309.12307" class="external text" rel="nofollow">arXiv:2309.12307</a>.
- Mao, K. et al. (2024). *A Survey on LoRA of Large Language Models*. <a href="https://arxiv.org/abs/2407.11046" class="external text" rel="nofollow">arXiv:2407.11046</a>.
- Jiang, T. et al. (2024). *MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning*. <a href="https://arxiv.org/abs/2405.12130" class="external text" rel="nofollow">arXiv:2405.12130</a>.
- Liu, Z. et al. (2024). *ALoRA: Allocating Low-Rank Adaptation for Fine-Tuning Large Language Models*. <a href="https://arxiv.org/abs/2403.16187" class="external text" rel="nofollow">arXiv:2403.16187</a>.
- Liu, J. et al. (2025). *RoRA: Efficient Fine-Tuning of LLM with Reliability Optimization for Rank Adaptation*. <a href="https://arxiv.org/abs/2501.04315" class="external text" rel="nofollow">arXiv:2501.04315</a>.
- Albert, P. et al. (2025). *RandLoRA: Full-Rank Parameter-Efficient Fine-Tuning of Large Models*. <a href="https://arxiv.org/abs/2502.00987" class="external text" rel="nofollow">arXiv:2502.00987</a>.
- Tastan, N. et al. (2025). *LoFT: Low-Rank Adaptation That Behaves Like Full Fine-Tuning*. <a href="https://arxiv.org/abs/2505.21289" class="external text" rel="nofollow">arXiv:2505.21289</a>.

## 注释

1.  <span id="cite_note-hu2021-1">↑ <sup>[1.0](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-hu2021_1-0)</sup> <sup>[1.1](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-hu2021_1-1)</sup> <sup>[1.2](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-hu2021_1-2)</sup> Hu, E.J., et al. «LoRA: Low-Rank Adaptation of Large Language Models». *arXiv:2106.09685*. <a href="https://arxiv.org/abs/2106.09685" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-mao2024-2">[↑](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-mao2024_2-0) Mao, K., et al. «A Survey on LoRA of Large Language Models». *arXiv:2407.11046*. <a href="https://arxiv.org/abs/2407.11046" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-ibm_lora-3">[↑](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-ibm_lora_3-0) Noble, Joshua. «What is LoRA (Low-Rank Adaption)?». *IBM Technology*. <a href="https://www.ibm.com/think/topics/lora" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-dettmers2023-4">[↑](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-dettmers2023_4-0) Dettmers, T., et al. «QLoRA: Efficient Finetuning of Quantized LLMs». *arXiv:2305.14314*. <a href="https://arxiv.org/abs/2305.14314" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-jiang2024-5">[↑](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-jiang2024_5-0) Jiang, Z., et al. «MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning». *arXiv:2405.12130*. <a href="https://arxiv.org/abs/2405.12130" class="external autonumber" rel="nofollow">[5]</a></span>
6.  <span id="cite_note-hf_peft-6">[↑](https://systems-analysis.info/int/Low-Rank_Adaptation_(LoRA)_%E2%80%94_%E4%BD%8E%E7%A7%A9%E8%87%AA%E9%80%82%E5%BA%94#cite_ref-hf_peft_6-0) «LoRA (Low-Rank Adaptation)». *Hugging Face LLM Course*. <a href="https://huggingface.co/learn/llm-course/en/chapter11/4" class="external autonumber" rel="nofollow">[6]</a></span>
