モデル・技術

LoRAとは?低ランク適応・効率的ファインチューニング

読み:ろーら / 英:LoRA(Low-Rank Adaptation)

更新日: 読了目安:約6分

LoRA(Low-Rank Adaptation/低ランク適応)は、巨大なLLM少ない追加パラメータで用途に合わせて調整するファインチューニング技法です。本記事はプロンプト設計の話ではなく、モデル重みをどう更新するか——全パラメータ更新とのコスト比較——に焦点を当てます。

試験で問われる見方

G検定では、「LoRAは全パラメータを必ず完全更新する」は×です。低ランク行列を追加して学習する効率的な適応手法であり、計算量・保存容量を抑えやすい点が特徴です(TF-177)。

ファインチューニング全般として、事前学習済みモデルを特定用途に追加調整する方法である、という定義も押さえておきます(TF-0164TF-0127)。

LoRAとは

LoRAは、大規模な事前学習済みモデルの元の重みを固定したまま、層に小さな低ランク行列を足し込み、その追加部分だけを学習する手法です。Full Fine-tuning(全パラメータ更新)より、GPUメモリや学習時間を大幅に抑えられることが多いです。

PEFT(Parameter-Efficient Fine-Tuning/パラメータ効率的ファインチューニング)の代表的な一つとして、オープンソースのLLMを社内データに合わせて調整する場面で広く使われています。

ざっくり仕組み

試験レベルでは、次のイメージで十分です。

  • 巨大な重み行列 Wはそのまま凍結(更新しない)
  • 小さな行列 A・Bを追加し、ΔW ≈ A×B の形で変化分を表現
  • 学習するのは A・B などの追加部分だけ
  • 推論時は W + ΔW として元モデルにマージするか、アダプタを載せる

「低ランク」とは、行列の情報を圧縮した近似で更新を表す、という理解で試験には足ります。数学の詳細はG検定の範囲外であることが多いです。

手法の比較

手法 更新対象 コスト感 試験での注意
プロンプトのみ モデル重みは変更しない 最も低い ファインチューニングではない
LoRA 低ランクの追加パラメータ 中程度(FTより軽い) 全パラメータ更新ではない
Full Fine-tuning モデルの重み全体 高い データ・計算が大量に必要
アライメント(RLHF等) 振る舞い・価値観の調整 目的が異なる 社内ドメイン適応とは別文脈も

使われる場面

  • 社内文書のトーンに合わせたチャットボット
  • 特定業界用語・フォーマットへの適応
  • 複数用途ごとにアダプタを切り替え(ベースモデルは共通)

一方、RAGで外部知識を渡せる場合は、ファインチューニングなしで要件を満たすこともあります。LoRAは万能ではなく、データ量・更新頻度・コストで選びます。

限界・注意点

LoRAは効率的ですが、学習データの品質・権利・偏りの問題は残ります。また、ベースモデルの能力を超える知識を「学習し足す」わけではなく、振る舞いや表現の適応が中心です。

機密データで学習する場合は、個人情報や社内規程の確認が別途必要です。技法の話とコンプライアンスは切り分けて考えてください。

よくある質問

LoRAは全パラメータを更新する?

いいえ。追加の低ランクパラメータを学習する手法です(TF-177)。

LoRAとファインチューニングは同じ?

LoRAはファインチューニングの一手法です。ファインチューニングには全パラメータ更新など別方式もあります。

LoRAとRLHFの違いは?

LoRAは主にドメイン適応などの重み調整、RLHFは人間フィードバックによる振る舞い調整の手法です。アライメントの記事も参照。

生成AIパスポートでも出る?

LoRA単独の問題は少ないですが、ファインチューニングの定義(第2章)は頻出です。本記事と第2章一問一答を併用してください。