「AIに追加学習(ファインチューニング)を行えば、あらゆる専門知識を完璧に記憶し、万能なAIになるのではないか」という期待は少なくありません。しかし実際のファインチューニングは、データベースに新しい記録を書き込む作業とは根本的に異なります。
ファインチューニングが直接変えるのは、AIの「記憶庫」ではなく、モデル内部にある計算パラメータ(重み)の結びつきの強さです。これによって変化するのは、AIの応答スタイル、専門用語の扱い、論理的な推論手順、出力形式の遵守といった「振る舞いや応答の様式」です。
本稿では、実務の中心である教師あり追加学習(SFT)の仕組み、LoRAをはじめとするパラメータ効率化技術、RAGやプロンプトとの役割分担、そして知識定着における限界を体系的に解説します。
ファインチューニングの基本原理:重み更新は何を変えるのか
現在の大規模言語モデル(LLM)は、膨大なテキストを読み込んで言語の基本構造や一般的な知識を学ぶ「事前学習(Pre-training)」を経て作られます。この基礎能力を土台とし、特定の用途や業務に合わせてモデルを適応させる手法が「転移学習(Transfer Learning)」であり、その代表例が「教師あり追加学習(SFT: Supervised Fine-Tuning)」です(Raffel et al., 2020)。
SFTでは、人間が作成した「指示や質問(入力文)」と「模範解答(出力文)」のペアをデータセットとしてモデルに与えます。モデルは入力文を受け取って次の単語(トークン)を予測する確率を計算し、模範解答とのズレを「損失(ロス)」として算出します。そして誤差逆伝播法(バックプロパゲーション)を用いてモデル内部の重み行列を少しずつ調整します。この最適化を繰り返すことで、指定された形式やタスクに沿った単語を高確率で出力できるようになります。
事前学習済みのTransformerモデルに対して下流タスクのデータセットを用いて重みを調整することで、要約、質問応答、文章分類、コード抽出といった特定課題に対する応答様式そのものを適応させることができます(Raffel et al., 2020)。
たとえば医療や法律などの専門分野において、一般的なモデルは専門用語を平易な日常語に置き換えて回答しがちです。しかし専門用語の定義や厳密な論理展開を含んだ入出力ペアで追加学習を行うと、モデルはその分野固有の文脈関係を反映した重み配置へと更新されます。その結果、プロンプトで長々と文体を指定しなくても、専門家としての一貫したトーンや推論ステップを再現できるようになります。
ただし、この処理は「新しい知識ファイルを安全に保存した」わけではありません。ファインチューニングが行っているのは、無数の計算パラメータの数値を微調整し、入力文に対して特定の単語が連鎖して出力される確率を高めることに過ぎません。この確率的な性質が、後述する知識定着の難しさやハルシネーションの要因となります。
プロンプト・RAG・追加学習の違いと相互補完
AIの出力を目的に合わせるアプローチには、「プロンプトエンジニアリング」「RAG(検索拡張生成)」「ファインチューニング」の3つがあります。これらは排他的な競合関係ではなく、作用する位置と得意領域が異なります。
推論時の入力側を工夫するアプローチ(プロンプトとRAG)と、訓練時にモデル内部の重みパラメータ自体を書き換えるアプローチ(ファインチューニング)の違いを下表に整理します。
| アプローチ | 主な作用位置 | 必要な計算資源 | 情報の更新性 | 最も得意とする役割 |
|---|---|---|---|---|
| プロンプト | 推論時の入力文 | 極めて小さい(即時実行) | 指示文の書き換えで即座に反映 | 文脈指定、一時的な役割付与、具体例(Few-shot)による誘導 |
| RAG | 推論時の検索と入力文脈付加 | 中程度(検索基盤の維持) | 外部データベースの更新で即座に反映 | 最新事実の参照、社内文書の引用、明確な根拠提示 |
| ファインチューニング | 訓練時のモデル内部重みパラメータ | 大きい(GPUによる学習計算) | モデルの再訓練と再配備が必要 | 出力形式の厳格な固定、応答トーンの統一、推論スタイルの定着 |
プロンプトエンジニアリングは、推論時に渡すテキストを工夫する手法です。モデルの内部構造には一切触れないため即座に試せますが、入力可能な文字数(コンテキスト長)には物理的上限があり、指示が長大・複雑化するほど見落としが生じやすくなります。
RAGは、ユーザーの質問に関連する情報を外部データベースからリアルタイムに検索し、プロンプトの文脈としてAIに与えて回答を生成させる技術です。RAGの原論文(Lewis et al., 2020)では検索器と生成器を一体で共同訓練する手法が提案されましたが、近年の実務では凍結された既存モデルに外部検索システムを接続するパイプライン構成が広く採用されています。
ただしRAGは、事実性や引用の正確性を100%保証する仕組みではありません。検索システムが適切な文書を取得できるか(検索再現率・適合率)、元資料自体に誤りや矛盾がないか、文書の分割(チャンキング)が文脈を壊していないか、インデックスの整合性が保たれているかといったデータ基盤の品質に精度が大きく左右されます。
一方、ファインチューニングはモデル内部のパラメータそのものを更新します。推論時のプロンプトに長大なマニュアルや出力例を毎回添える必要がなくなるため、入力トークン数を削減し、推論処理を高速化できる利点があります。

上の図は、これらの作用位置の違いを整理したものです。推論時に入力側へ文脈を添えるプロンプトやRAGに対し、ファインチューニングは学習段階でモデル内部の計算パラメータへ直接作用します。さらに図の右側では、ファインチューニングにおける「全パラメータの直接更新」と「LoRAによる低ランク行列を用いた効率的更新」の構造的な違いを対比しています。なお本図は作用原理を整理した概念図であり、実際のニューラルネットワーク層の接続配線や個別ツールの操作画面を示したものではありません。
実務では、これら3つの手法を組み合わせる「相互補完」が最も効果的です。たとえば企業向け問い合わせAIにおいて、「LoRAで敬語表現やJSONフォーマットの遵守を定着させ」「最新の製品仕様や在庫情報はRAGで社内データベースから検索・引用させ」「直前の対話履歴はプロンプトで与える」という構成をとることで、各手法の長所を活かし短所を補い合うことができます。
パラメータ効率的ファインチューニング(PEFT)とLoRAの数学的仕組み
従来のファインチューニングでは、モデルの全パラメータを更新する「全パラメータ更新(Full Fine-Tuning)」が行われていました。しかしモデルの大規模化に伴い、莫大な計算資源が必要となっています。
たとえば700億パラメータ(70B)のモデルを標準的な16ビット浮動小数点(FP16)で保持すると、重みだけで約140ギガバイト(GB)のメモリを消費します。全パラメータ更新を行う場合、この140GBに加えて、学習時の勾配、最適化アルゴリズム(AdamWなど)が保持する内部状態(重みの2倍以上のメモリを消費)、順伝播時の中間データである活性化値(Activations)をGPUメモリ上に同時に展開しなければなりません。そのため、数百GBからテラバイト級の大規模GPUクラスタが必要となり、多大なコストが発生します。
こうした課題を解決するために体系化されたのが「パラメータ効率的ファインチューニング(PEFT: Parameter-Efficient Fine-Tuning)」です。PEFTは特定の手法だけを指すのではなく、訓練対象パラメータを限定することで計算負荷、メモリ消費、保存容量を抑える手法群の総称です(Szep et al., 2026)。
PEFTは主に以下の3つに分類されます。
- 選択的更新手法(Selective):モデルの大部分を固定し、バイアス項など特定のパラメータ層のみを訓練する手法(BitFitなど)。
- プロンプト調整手法(Prompt-based):入力の埋め込み空間に仮想的な連続ベクトルを付加し、そのベクトルのみを更新する手法(Prompt Tuningなど)。
- アダプタ手法(Adapter-based):元のモデルの内部や隣接位置に小さな追加モジュールを挿入して学習させる手法。
PEFTの各手法は計算資源、データ量、課題の性質に応じて選択され、全パラメータ更新とパラメータ効率的更新には適応性能とコストのトレードオフが存在します(Szep et al., 2026)。
このアダプタ手法の中で広く普及しているのが「LoRA(Low-Rank Adaptation)」です(Hu et al., 2021)。LoRAは、「モデルが新タスクに適応する際の重み変化量(\Delta W)は、元の巨大な重み行列に比べて本質的な次元(内在的ランク)がはるかに小さい」という着眼点に基づいています。
元の重み行列を W_0 \in \mathbb{R}^{d \times k} とします。全パラメータ更新では W_0 と同寸法の更新行列 \Delta W を直接学習しますが、LoRAでは事前学習重み W_0 を完全に固定(凍結)し、更新量 \Delta W を2つの低ランク行列 A と B の積として学習します。
W = W_0 + \Delta W = W_0 + \frac{\alpha}{r} BA
代表的な隠れ層の重み行列(d = 4096, k = 4096)を例にとります。LoRAのランクを r = 8、スケーリング係数を \alpha とした場合、各行列の寸法とパラメータ数は次の通りです。
- 元の固定重み行列 W_0:4096 \times 4096(約1,677万個)
- 低ランク行列 A:8 \times 4096(32,768 個)
- 低ランク行列 B:4096 \times 8(32,768 個)
行列 B と A の積 BA の寸法は (4096 \times 8) \times (8 \times 4096) = 4096 \times 4096 となり、元の重み行列 W_0 とまったく同じ形状に戻ります。
実際に学習が必要なパラメータ数は、A と B を合わせた 65,536 個に過ぎません。元の約1,677万個と比較すると、わずか約0.39%(約256分の1)のパラメータを更新するだけで済みます。
このように、PEFTでは更新パラメータを限定し、例えばLoRAでは事前学習重みを固定して低ランク分解行列のみを更新します(Hu et al., 2021)。
ただし、LoRAの実務適用には2つの重要な技術的条件があります。
第1に、「学習対象パラメータが約256分の1になっても、必要なGPUメモリ全体が256分の1になるわけではない」という点です。勾配やオプティマイザ状態のメモリは激減しますが、計算を行うためには凍結された元の重み(70Bモデルなら約140GB)や順伝播時の活性化値をGPU上に保持し続ける必要があります。市販PCの小型GPU1枚でどのような巨大モデルでも学習できるわけではありません。
第2に、「推論時の追加遅延(レイテンシ)がゼロになる」という利点は、学習完了後に差分行列 \Delta W = \frac{\alpha}{r} BA を元の重み W_0 に加算統合(マージ)して配備する場合に限定されます。マージを行えばモデル構造は元と同一になるため遅延は生じません。しかし、1台の基盤モデルに対して用途ごとに複数のLoRAアダプタを動的に切り替えて運用する場合は静的マージができないため、推論ごとに行列積 BA を計算する追加処理と遅延が発生します。
ファインチューニングの限界:知識の記憶とハルシネーション
ファインチューニングにおける最大の誤解の一つが、「未知の事実知識を追加学習させれば、AIがそれを完全に記憶し、ハルシネーション(もっともらしい嘘)が解消する」という期待です。しかしファインチューニングは、確定的な知識の保存場所としては不向きです。
ここで重要なのは、「知識を正確に保存できないこと」と「新しい知識を一切学べないこと」を区別して理解する点です(Gekhman et al., 2024)。追加学習によって未知の単語や専門用語を出力させることは可能です。しかし、SQLクエリに対して常に確定したデータを返すリレーショナルデータベースとは異なり、言語モデルの重み更新は単語の「統計的出現確率の再配分」を行っているに過ぎません。
この性質について、Gekhmanら(2024)はGoogleの言語モデル「PaLM 2-S」を用い、外部資料を参照させない閉じた知識質問応答(Closed-book QA)の環境下で、新知識の追加学習が及ぼす影響を調査しました。
その結果、事前学習で触れていなかった新しい事実知識をファインチューニングで学習させようとすると、既知知識の学習に比べて損失が収束するまでに極めて多数の学習ステップを要することが判明しました。さらに、新しい事実を無理に学習させようとステップを重ねるにつれて、事前学習ですでに正しく答えられていた「既知の事実」に対する誤答率が有意に上昇し、ハルシネーションが発生しやすくなる傾向が観測されたのです。
追加学習は新しい事実知識の完全な暗記やハルシネーションの解消を保証せず、学習条件によっては既知の事実に対する誤答が増加する場合があります(Gekhman et al., 2024)。これはあらゆる学習方式で必ずハルシネーションが増加するという普遍的法則ではありませんが、重みに事実を無理に詰め込もうとすると既存の知識バランスが崩れるリスクを客観的に示しています。
さらに、追加学習には「破滅的忘却(Catastrophic Forgetting)」のリスクが常に伴います。特定分野のデータだけを集中的に学習させた結果、元々持っていた汎用的な対話力や一般的な推論能力が著しく損なわれる現象です。
「LoRAを使えば破滅的忘却を防げる」という言説も正確ではありません。元モデルの重みファイルがそのまま残るため元の状態に戻すことは容易ですが、LoRAアダプタを適用して推論しているモデル自身においては、特定タスクへの過度な適応によって汎用スコアが下がるリスクは全パラメータ更新と同様に存在します。
これを防ぐには、専門データの学習時に一般的な対話データを一定割合混ぜる「リプレイ手法」の導入や、学習の前後で汎用ベンチマークテストを実施して基礎能力を監視する体制が必要です。
失敗を防ぐデータセット設計と多面的な評価設計
ファインチューニングの成否を分けるのは、アルゴリズムの選定以上に「データセットの品質」と「評価設計の厳密さ」です。
データセット設計の原則
データセット作成では、まず「データ分割(Split)」を適切に行う必要があります。機械学習で一般的な「学習用80%、検証用10%、テスト用10%」という比率は固定的な規則ではなく、データ総量や課題の性質に応じた一つの典型例に過ぎません(Szep et al., 2026)。数百件程度の小規模データでは、より慎重な分割設計が求められます。
最も警戒すべき失敗要因は「データ漏洩(データリーク)」です。これは評価用テストデータの情報が学習プロセスに混入してしまう現象を指します。同一の質問文が混ざる単純なケースだけでなく、同一文書から切り出した前後の文が別々のセットに振り分けられていたり、時系列データで未来の情報が学習データに含まれていたり、テスト結果を見ながらハイパーパラメータを過度に調整したりすることも実質的なデータ漏洩に該当します。これが起きるとテスト上の見かけの数値だけが高くなり、本番環境で機能しないモデルになってしまいます。
またアノテーションにおいて統一すべきは「出力文字数」ではありません。「どのような条件のときに、どのような論理構造、敬語レベル、JSONスキーマで回答するか」という正解基準の一貫性です。基準にブレがあると学習効率が大幅に低下します。
安全性対策として回答拒否(「その質問には回答できません」など)を学習させる際も注意が必要です。拒否データの比率が高すぎたり適用基準が曖昧だったりすると、無害な日常的質問にまで回答を拒絶する「過剰拒否(Over-refusal)」を引き起こします。
多面的な評価指標の選択
モデルの性能を正しく測るには、タスクに応じた評価指標の設定が不可欠です。「完全一致(Exact Match: EM)」は自由対話の評価には不向きですが、文章分類、短答式の事実確認、プログラムコードからの特定関数の抽出などでは、T5の原論文(Raffel et al., 2020)をはじめ現在でも標準的で信頼性の高い指標として機能します。
一方、自然言語生成の品質評価では「LLM-as-a-Judge(大規模モデルを用いた自動評価)」が普及しています。しかし評価モデル特有のバイアスを考慮しなければなりません(Zheng et al., 2023)。
- 位置バイアス(Position Bias):2つの回答を比較させる際、内容に関わらず先(または後)に提示された選択肢を高く評価しやすい傾向。
- 冗長性バイアス(Verbosity Bias):内容が薄くても、文章が長く丁寧な回答に対して不当に高い評価をつける傾向。
LLM-as-a-Judgeを活用する際は、採点基準(ルーブリック)をシステムプロンプトで具体的に定め、提示順序を入れ替えて複数回採点させ、さらに人間による手動評価との相関を定期的に検証する運用設計が求められます。
実務における技術選定ロードマップとFAQ
限られた開発期間と計算資源の中で成果を出すには、客観的な基準に基づいて段階的に技術を選定する必要があります(Szep et al., 2026)。
【課題の発生】
│
▼
[ステップ1: プロンプトエンジニアリング]
│・プロンプトの工夫やFew-shotで目標精度を達成できるか?
├─ YES ──> 実装完了(最小コスト・即時運用)
▼ NO
[ステップ2: RAGの導入検討]
│・課題は「最新情報の参照」や「社内文書の引用」か?
├─ YES ──> RAG基盤を構築(文書の検索・文脈付加で解決)
▼ NO
[ステップ3: PEFT(LoRA等)による追加学習]
│・課題は「出力形式の厳格な固定」「専門トーンの統一」「プロンプト短縮」か?
├─ YES ──> 高品質な入出力ペアを整備し、LoRAを実施
▼ NO
[ステップ4: 全パラメータ更新の検討]
│・語彙や概念体系が根本から異なる超大規模タスクか?
└─ YES ──> 計算資源・コストとのトレードオフを精査して実施よくある疑問(FAQ)
Q1: 社内マニュアルをAIに教え込みたい場合、まずファインチューニングから着手すべきですか? A1: いいえ、原則としてまずはRAG(検索拡張生成)から着手することを推奨します。 業務規定やマニュアルは定期的に更新されます。ファインチューニングで事実を覚えさせようとすると更新のたびに再学習が必要になり、事実の確実な記憶や引用元の明示も保証されません。マニュアルはデータベースに格納してRAGで参照させ、回答の形式やトーンの調整が必要な場合に限ってLoRAを併用するのが合理的です。
Q2: LoRAでファインチューニングを行う場合、学習データは何件程度必要ですか? A2: 出力形式の調整であれば数百〜数千件、複雑な推論の定着には数千〜数万件が目安です。 JSON形式の遵守や口調の調整であれば、ノイズのない洗練された数百件のデータで顕著な効果が出ます。一方、複雑な業務判断や推論ステップを定着させるには数千件から数万件規模のデータが求められます。件数以上に「正解基準の一貫性」を保つことが重要です。
Q3: OSSモデルをLoRAで微調整したモデルは、商用環境で安全に運用できますか? A3: 基盤モデルのライセンス規約と、自社インフラ運用の責任範囲に依存します。 多くのオープンソースモデルは商用利用を認めていますが、利用規模に応じた制限や派生モデルの公開義務が課される場合があります。また自社サーバーで運用する場合、外部APIへの情報漏洩を防げる反面、サーバーの可用性担保、遅延管理、セキュリティ対策などの運用保守責任がすべて自社に発生するトレードオフを考慮する必要があります。
結び
ファインチューニングは、AIにあらゆる知識を記憶させる魔法の辞書ではありません。その本質は、基盤モデルが持つ表現力を特定の業務課題に向けて引き出すための「内部パラメータの最適化技術」です。
最新情報の参照や正確な引用はRAGに委ね、一時的な指示はプロンプトで与え、形式の固定や専門的な応答スタイルの定着にファインチューニング(LoRAなど)を活用する。それぞれの特性と限界を正しく捉え、品質の高いデータセットと厳密な評価指標のもとで相互補完させることが、信頼性の高いAIシステムを構築する鍵となります。
出典・参考資料
- Raffel, C., Shazeer, N., Roberts, A., Lee, K., Narang, S., Matena, M., Zhou, Y., Li, W., & Liu, P. J. (2020). *Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer*. Journal of Machine Learning Research (JMLR). https://arxiv.org/abs/1910.10683
- Lewis, P., Perez, E., Piktus, A., Petroni, F., Karpukhin, V., Goyal, N., Küttler, H., Lewis, M., Yih, W., Rocktäschel, T., Riedel, S., & Kiela, D. (2020). *Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks*. Advances in Neural Information Processing Systems (NeurIPS). https://arxiv.org/abs/2005.11401
- Hu, E. J., Shen, Y., Wallis, P., Allen-Zhu, Z., Li, Y., Wang, S., Wang, L., & Chen, W. (2021). *LoRA: Low-Rank Adaptation of Large Language Models*. International Conference on Learning Representations (ICLR). https://arxiv.org/abs/2106.09685
- Zheng, L., Chiang, W.-L., Sheng, Y., Zhuang, S., Wu, Z., Zhuang, Y., Lin, Z., Li, Z., Xing, E. P., Zhang, H., Gonzalez, J. E., & Stoica, I. (2023). *Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena*. Advances in Neural Information Processing Systems (NeurIPS). https://arxiv.org/abs/2306.05685
- Gekhman, Z., Yona, G., Aharoni, R., Eyal, M., Feder, A., Reichart, R., & Herzig, J. (2024). *Does Fine-Tuning LLMs on New Knowledge Encourage Hallucinations?* https://arxiv.org/abs/2405.05904
- Szep, J., et al. (2026). *Parameter-Efficient Fine-Tuning: A Comprehensive Survey*. Transactions of the Association for Computational Linguistics (TACL), 14:341–377. https://aclanthology.org/2026.tacl-1.17/
