ファインチューニング(Fine-tuning)とは、事前学習済みモデルのパラメータを、新しいタスクのデータで追加学習して微調整するプロセスです。転移学習の最も一般的な実装方法であり、少量のデータでも高い性能を達成できます。
ファインチューニングの戦略
全層をファインチューニングする方法と、最終層のみ(またはいくつかの上位層のみ)をファインチューニングする方法があります。データが少ない場合は浅い層を固定して上位層のみ更新する方が過学習を防げます。
学習率の設定
ファインチューニングでは事前学習時よりも小さい学習率を使用するのが一般的です。層ごとに異なる学習率を設定する「差分学習率」(Discriminative Learning Rate)も有効な手法です。
LLMのファインチューニング
大規模言語モデル(LLM)では、LoRA、QLoRA、Prefix Tuning、Adapter Tuningなどのパラメータ効率的なファインチューニング(PEFT)手法が注目されています。全パラメータの更新が不要で、少ない計算資源でファインチューニングが可能です。