機械学習における最適化アルゴリズムは、損失関数の最小化を通じてモデルのパラメータ(重み)を調整する役割を担っています。ここでは、勾配降下法の改良版として広く用いられている以下の4つの手法について詳しく説明します。
1. モメンタム(Momentum)
概要:
モメンタムは、従来の勾配降下法に「慣性」の概念を導入することで、局所的な凸部(凹凸)に囚われずに滑らかに収束を目指す手法です。
仕組み:
過去の勾配情報を指数移動平均として保持し、それに基づいて現在の更新方向を決定します。
数式:
-
v_t:過去の勾配の加重平均(速度) -
β:モメンタム係数(例:0.9) -
η:学習率 -
∇L(θ_t):現在のパラメータに対する損失関数の勾配
特徴:
-
振動を抑えながら加速的に収束
-
鞍点(saddle point)付近での停滞を緩和
2. AdaGrad(Adaptive Gradient)
概要:
AdaGradは、パラメータごとに学習率を調整することで、頻繁に更新されるパラメータの学習率を下げ、まれに更新されるパラメータの学習率を維持・上げるアルゴリズムです。
数式:
-
r_t:勾配の2乗の累積 -
ε:ゼロ除算を防ぐための微小値(例:1e-8)
特徴:
-
スパースデータに適している
-
時間と共に学習率が単調減少し、収束が止まりやすい
3. RMSprop(Root Mean Square Propagation)
概要:
AdaGradの欠点(学習率が急激に減衰しすぎる)を改善するために提案された手法で、勾配の2乗の「指数移動平均」を利用します。
数式:
-
γ:減衰率(例:0.9) -
E[g^2]_t:勾配の2乗の指数移動平均
特徴:
-
学習率の減衰を制御し、安定した更新が可能
-
LSTMなどのRNNに特に有効
4. Adam(Adaptive Moment Estimation)
概要:
Adamは、モメンタムとRMSpropの利点を組み合わせた手法で、1次モーメント(平均)と2次モーメント(分散)を用いてパラメータを更新します。
数式:
-
β1,β2:モーメントの減衰率(通常 β1=0.9, β2=0.999) -
m̂_t,v̂_t:バイアス補正後の1次・2次モーメント
特徴:
-
初期段階から安定した収束が可能
-
多くのタスクで高性能を示すため、デフォルトで使用されることが多い
まとめ比較表:
| アルゴリズム | 特徴 | 弱点 |
|---|---|---|
| モメンタム | 加速的な収束、鞍点脱出に強い | 最適なβの調整が必要 |
| AdaGrad | スパース特徴に有効 | 学習率が時間とともに減少しすぎる可能性 |
| RMSprop | AdaGradの改良、安定した学習が可能 | ハイパーパラメータ調整が必要 |
| Adam | モメンタム+RMSpropの統合、収束が早い | 非凸問題で最適性が保証されないことも |
生成日:2025/06/01