AI Play とは

LoRA(Low-Rank Adaptation)とは

大きなAIモデルを、少ない追加パラメータで効率よく追加学習する手法

LoRA(ローラ、Low-Rank Adaptation)は、大規模なAIモデルを少ない計算資源で追加学習(ファインチューニング)するための手法です。もともとは大規模言語モデル向けに提案されましたが、画像生成AIの世界では「特定の画風やキャラクターを覚えさせた小さな追加ファイル」として広く知られるようになりました。

もとになった論文

LoRA は Microsoft の Edward J. Hu らが2021年6月に発表した論文「LoRA: Low-Rank Adaptation of Large Language Models」で提案されました。論文の要旨では、GPT-3 175B をAdamで全体ファインチューニングする場合と比べて、学習対象のパラメータ数を約1万分の1に、GPUメモリ使用量を約3分の1に減らせたと報告されています。

仕組み

通常のファインチューニングは、モデルの重み(パラメータ)全体を更新します。LoRA では次のように考えます。

  1. 元のモデルの重みは固定(凍結)して変更しない。
  2. 重みの「変化分」を、2つの小さな行列の積(低ランク分解)で表す。
  3. 学習するのはこの小さな行列だけ。

小さな行列の大きさを決めるのがランク(rank、r)です。ランクが小さいほど学習するパラメータは少なくなります。もう一つの代表的な設定値 alpha は、追加分をどれくらいの強さで反映させるかの調整に使われます。

推論時には、追加分を元の重みに合算(マージ)することもでき、その場合は推論速度が落ちないと Hugging Face の PEFT ドキュメントでも説明されています。

画像生成でのLoRA

画像生成AIの文脈では、ベースモデル(例:Stable Diffusion系の拡散モデル)に対して、数十枚程度の画像で学習させたLoRAファイルを組み合わせて使うのが一般的です。

使うときは「適用強度(重み)」を調整でき、強すぎると絵が崩れ、弱すぎると効果が出ません。複数のLoRAを同時に使うこともできますが、互いに干渉することがあります。なお、LoRAは学習時のベースモデルと組み合わせる前提で作られるため、系統の異なるモデルでは正しく動かないことが多い点に注意してください。

LLMでのLoRA

テキスト生成AIでも、社内の文体や特定タスク向けにモデルを調整する手段としてLoRAが使われます。量子化と組み合わせた QLoRA など派生手法もあります。ただし「社内文書の知識を答えさせたい」だけなら、追加学習より RAG のほうが更新も簡単で適していることが多いです。

メリットと限界

使うときの注意点

参考リンク

編集: AI Play 編集部 最終更新: 2026-10-25