AI・機械学習
中級

Learning Rate Schedule(ラーニングレートスケジュール)

LLMの学習過程で学習率を動的に変更するスケジューリング戦略。訓練の安定化と最終性能の向上を両立させる重要なハイパーパラメータ制御手法。

0 回閲覧
0 いいね

Learning Rate Schedule(学習率スケジュール)とは

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

Warmup + Cosine Decayの標準パターン

現代の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 ScalingSQRT Scaling
256(基準)lr = 3e-4lr = 3e-4
1024(4倍)lr = 1.2e-3lr = 6e-4
4096(16倍)lr = 4.8e-3lr = 1.2e-3

FAQ

Q1: 学習率スケジュールなしでLLMを訓練できますか?

技術的には可能ですが、実用的ではありません。固定学習率では訓練の後半でlossが下がりにくくなり、スケジュールを使用した場合と比較して最終perplexityに大きな差が出ます。

Q2: WarmupなしのCosine Decayだけではダメですか?

Warmupなしでは訓練初期にloss spikeが発生しやすく、最悪の場合訓練が発散します。特にAdam系オプティマイザでは、初期のmomentum推定が不安定なため、Warmupが安定化に不可欠です。

Q3: 訓練途中でスケジュールを変更できますか?

可能です。checkpoint再開時にスケジュールを変更する手法(Re-warmup)は、追加訓練やドメイン適応で使用されます。Continual Pre-trainingでは元のスケジュールの終端から再度Warmupを行うのが一般的です。