微調整
SFT · supervised fine-tuning · LoRA
ひとことで
ファインチューニングは、事前に学習したモデルを小さなタスク固有データセットでさらに学習し、重みを調整して特定の形式やトーン、限定的なスキルを安定して出力できるようにします。しかし、事実を教える手段としては不向きで、変化する情報は要求時に取得すべきです。
ファインチューニングは、すでに言語を話せるモデルから開始し、その重みを特定の振る舞いに向かって微調整します。開始前に尋ねるべき適切な質問は、「私の問題は知識か、それとも振る舞いか?」です。
モデルがあなたの製品カタログを知らない場合、ファインチューニングは間違ったツールです。カタログは毎週変更されますが、再トレーニングはそうではありません。検索を使用してください。
モデルが多くのことを知っているが、JSONスキーマを一貫して出力しない、ハウススタイルを採用しない、または内部分類タクソノミーを適用しない場合は、ファインチューニングがそれをうまく、かつ安価に実行します。
フルファインチューニングはすべてのパラメータを更新します。これは高価であり、ホストするための完全なモデルコピーを生成します。LoRAおよび同様のパラメータ効率の良い方法は、凍結されたベースモデルの横に小さなアダプターをトレーニングします。これは劇的に安価であり、ほとんどの目的に十分です。
3つの実用的な注意点。ファインチューニングされたモデルは、トレーニングセットが無視した領域で一般的な能力を失う可能性があります。これは通常、破滅的忘却と呼ばれます。基盤となるモデルは最終的に非推奨になり、アダプターもそれに伴って失われるため、作業のやり直しのために予算を計上してください。そして、その努力はしばしば不要です。チームは、より明確なプロンプトとコンテキスト内のいくつかの例で午後に解決できた問題を解決するために、日常的にファインチューニングしています。まずそれを試してください。
よくある質問
- ファインチューニングに必要な例の数はどれくらいですか?
- フォーマットやトーンについては、数百の高品質な例が数万件のノイジーな例よりも効果的であることが多いです。訓練セットの一貫性はボリュームよりも重要です。
- LoRAとは何か?
- Low‑Rank Adaptationは、モデル全体を更新する代わりに少数の追加パラメータを学習します。はるかに低コストで、フルモデルのコピーではなく小さなアダプターファイルを生成し、ほとんどのカスタマイズ作業に適しています。