LoRA
ローラ / 低ランク適応
DEFINITION
Low-Rank Adaptation の略。2021 年に Microsoft の Hu 氏らが提案した、大規模言語モデルを効率的に fine-tuning する手法です。事前学習済みの重み行列 $W \in \mathbb{R}^{d \times k}$ を直接更新するのではなく、その変化分 $\Delta W$ を **低ランク分解** $\Delta W = B A$($B \in \mathbb{R}^{d \times r}, A \in \mathbb{R}^{r \times k}, r \ll \min(d, k)$)で表現し、$A$ と $B$ のみを訓練します。これにより訓練可能パラメータ数を **数千分の 1** に抑えながら、フル fine-tuning に匹敵する性能を得られます。GPU メモリ要求が劇的に下がるため、家庭用 GPU 1 台で大規模モデルを個別調整できる時代の幕開けでした。論理的には「変化が低ランク部分空間に集中する」という経験的観察に乗っかった工学的な手法ですが、Stable Diffusion のキャラクター学習など、生物学的研究者の自助行動を加速した功績は記録に値します。
§01 押さえるべき要点
- 重み更新 $\Delta W$ を低ランク分解 $BA$ で表現し $A, B$ のみ訓練
- 訓練可能パラメータ数が 1000 倍以上削減される(典型的に r=4〜32)
- 推論時は $W + BA$ を事前計算するので、追加レイテンシなし
- Stable Diffusion / LLM の個別 fine-tuning でデファクト標準
- QLoRA: 4-bit 量子化と組み合わせることでさらにメモリ削減