ファインチューニング(LLM)

Fine-tuning (LLM)

ファインチューニング(LLM)とは

ファインチューニング(Fine-tuning)とは、事前学習済みの大規模言語モデル(LLM)を、特定のタスクやドメインのデータセットで追加学習させることで、モデルの性能をカスタマイズする手法です。汎用モデルを特定の用途に最適化することで、プロンプトエンジニアリングだけでは達成できない精度や一貫性を実現できます。

表:ファインチューニング(LLM)の要点まとめ
ひとことで言うと学習済みのLLMに自社データを追加学習させ、専用モデルに仕立てること。
どこで使う自社の言い回しの再現、定型業務の精度向上、専門用語への対応。
注意点データ準備と費用がかかる。知識を足すだけならRAGの方が安く早い場合が多い。

ファインチューニングの種類

全パラメータを更新するフルファインチューニングは最も柔軟ですが、計算コストが非常に高くなります。これに対し、パラメータ効率的ファインチューニング(PEFT)と呼ばれるアプローチでは、モデルの一部のパラメータのみを更新します。代表的なPEFT手法にはLoRA(Low-Rank Adaptation)やQLoRAがあり、少ない計算リソースでも効果的なファインチューニングが可能です。

図:ファインチューニングの手順
1基盤モデル学習済みのLLMを用意
▶
2データを整える入力と理想の出力のペア
▶
3追加学習重みを少し更新する
▶
4精度を評価元モデルと比較
▶
5専用モデル運用自社業務に組み込む

※ 「文体や形式を覚えさせたい」ならファインチューニング、「最新知識を参照させたい」ならRAGが向きます。

ファインチューニングの実践

ファインチューニングを行う際は、高品質な学習データの準備、過学習の防止、評価指標の設定が重要です。RAGで十分な成果が得られる場合はファインチューニングの必要がないこともあります。一般的に、特定のスタイルやフォーマットでの出力が必要な場合、専門用語の正確な使用が求められる場合、応答速度の最適化が必要な場合にファインチューニングが有効です。OpenAI、Google、Anthropicなど主要なAPIプロバイダーもファインチューニング機能を提供しています。