LLMの学習過程で学習率を動的に変更するスケジューリング戦略。訓練の安定化と最終性能の向上を両立させる重要なハイパーパラメータ制御手法。
LLMの訓練では、学習率(Learning Rate)が最終モデル性能を左右する最重要ハイパーパラメータの一つです。Learning Rate Scheduleは、訓練の各段階で学習率を計画的に変更する手法で、固定学習率では到達できない高い性能を実現します。
固定学習率による訓練には本質的な矛盾があります。高い学習率は序盤の収束を速めますが、終盤ではloss minimum周辺での振動を引き起こします。低い学習率は安定的ですが、収束に時間がかかりローカルミニマムに陥りやすくなります。スケジュールはこの矛盾を解消し、各段階に最適な学習率を適用します。
| 手法 | 特徴 | 代表的な使用例 |
|---|---|---|
| Linear Decay | 線形に減衰 | BERT、RoBERTa |
| Cosine Annealing | コサイン曲線で減衰 | GPT-3、LLaMA |
| Step Decay | 一定ステップごとに段階的減衰 | ResNet(CV由来) |
| Inverse Square Root | 逆平方根で減衰 | Transformer原論文 |
| Warmup + Decay | 漸増後に減衰 | ほぼ全ての大規模LLM |
現代のLLM訓練では、Warmup期間で学習率を0から最大値まで線形に増加させ、その後Cosine Annealing等で緩やかに減衰させるパターンが事実上の標準です。GPT-3では2,000ステップのWarmupを使用し、その後Cosine Decayで学習率を最大値の10%まで減衰させました。
Warmup期間はモデルの重み初期化が不安定な序盤を安定させるために必要で、総ステップ数の0.1-3%が目安です。最大学習率はモデルサイズに依存し、パラメータ数が増えるほど小さくする傾向があります。GPT-3 175Bでは最大lr=0.6e-4、LLaMA 7Bでは3e-4が使用されました。
学習率スケジュールはバッチサイズと密接に関連します。Linear Scaling Ruleに従い、バッチサイズをk倍にする場合は学習率もk倍にするのが基本です。ただし大規模モデルではSQRT Scalingルール(√k倍)がより安定することが報告されています。
| バッチサイズ | Linear Scaling | SQRT Scaling |
|---|---|---|
| 256(基準) | lr = 3e-4 | lr = 3e-4 |
| 1024(4倍) | lr = 1.2e-3 | lr = 6e-4 |
| 4096(16倍) | lr = 4.8e-3 | lr = 1.2e-3 |
技術的には可能ですが、実用的ではありません。固定学習率では訓練の後半でlossが下がりにくくなり、スケジュールを使用した場合と比較して最終perplexityに大きな差が出ます。
Warmupなしでは訓練初期にloss spikeが発生しやすく、最悪の場合訓練が発散します。特にAdam系オプティマイザでは、初期のmomentum推定が不安定なため、Warmupが安定化に不可欠です。
可能です。checkpoint再開時にスケジュールを変更する手法(Re-warmup)は、追加訓練やドメイン適応で使用されます。Continual Pre-trainingでは元のスケジュールの終端から再度Warmupを行うのが一般的です。