学習率を最大値から最小値まで一定の割合で直線的に減衰させるスケジュール手法。BERTやRoBERTaで採用され、実装のシンプルさと十分な効果を両立する。
Linear Decay Scheduleは、学習率を訓練の進行に伴って最大値から最小値(通常は0)まで直線的に減少させる手法です。Cosine Annealingが主流になる以前の標準的なDecay方式であり、BERTの成功により広く普及しました。現在でもそのシンプルさからFine-tuningや中規模モデルの訓練で頻繁に使用されています。
η(t) = η_max × (1 - t / T)
η_minを指定する場合:
η(t) = η_max - (η_max - η_min) × (t / T)
Linear Decayの最大の特徴は、減衰率が訓練全体を通じて一定であることです。
| 訓練段階 | 学習率の挙動 | 効果 |
|---|---|---|
| 序盤(0-30%) | 急速に減少 | 探索範囲の縮小 |
| 中盤(30-70%) | 一定速度で減少 | 安定した収束 |
| 終盤(70-100%) | さらに減少 | 精密な最適化 |
Cosine Annealingとの最大の違いは、序盤での減衰速度です。Linear Decayは訓練開始直後から一定速度で学習率が下がるため、Cosine Annealingと比較して高い学習率での探索期間が短くなります。
BERTの事前学習では、Linear Warmup + Linear Decayの組み合わせが使用されました。
この設定がBERTの原論文で報告され、後続のRoBERTa、ALBERT、ELECTRA等でも類似の設定が採用されました。
事前学習済みモデルのFine-tuningでは、Linear Decayが現在でも標準です。HuggingFace Transformersのデフォルトスケジューラはlinear(Linear Warmup + Linear Decay)であり、多くの実践者がこの設定を変更せずに使用しています。
| パラメータ | 推奨範囲 | 根拠 |
|---|---|---|
| 最大学習率 | 1e-5〜5e-5 | BERTの報告値 |
| Warmup割合 | 6-10% | 安定性確保 |
| 最終学習率 | 0 | 原論文準拠 |
| Epoch数 | 2-4 | 過学習防止 |
複数の研究で両手法の比較が報告されています。大規模事前学習ではCosine Annealingがやや優位ですが、差は0.1-0.5%程度のperplexity改善にとどまります。Fine-tuningでは両者の差はほぼ見られません。
大規模事前学習ではCosine Annealingが推奨されますが、Fine-tuningではLinear Decayで十分です。実装の手軽さと結果の再現性を重視する場合はLinear Decayが実用的です。
Fine-tuningでは0で問題ありません。事前学習では、訓練後の追加学習(Continual Pre-training)を想定して小さな正の値(η_maxの1-10%)を残す方が有利な場合があります。
学習率が速く下がりすぎている可能性があります。Warmup期間を延長するか、最大学習率を上げることで改善できます。改善しない場合はCosine Annealingへの切り替えを検討してください。