4.6 最適化手法(SGD、Adam、学習率調整、ハイパーパラメータ探索)

G検定

ディープラーニングの学習において、モデルの重みを更新するために利用されるのが 最適化手法(Optimization Methods) です。
どのように勾配を利用して重みを更新するか、学習率をどう調整するか、ハイパーパラメータをどう選ぶかによって、学習効率と性能は大きく変わります。


最適化の基本 ― 勾配降下法

勾配降下法(Gradient Descent)

  • 誤差関数の勾配に基づいて重みを更新し、損失を最小化する手法。
  • 更新式: wi ← wi - η ∂L/∂wi
    • wi:重み
    • η:学習率(Learning Rate)
    • L:損失関数

👉 学習率 η の設定が重要。大きすぎると発散、小さすぎると収束が遅い。


確率的勾配降下法(SGD)

特徴

  • データ全体ではなく「ミニバッチ」に分けて勾配を計算。
  • 計算効率が高く、大規模データにも適用可能。

改良手法

  • Momentum:過去の勾配方向を考慮し、収束を加速。
  • Nesterov Momentum:更新を一歩先読みして精度を高める。

👉 試験ポイント:「SGDは確率的に勾配を更新する」ことを押さえる。


Adam(Adaptive Moment Estimation)

特徴

  • SGDの改良版で、現在最も広く使われる最適化手法。
  • モーメント推定を用いて学習率を自動調整。

メリット

  • 学習が安定しやすい。
  • 初期の学習率設定に敏感でない。
  • 非定常なデータでも適応的に更新。

デメリット

  • 汎化性能がやや低い場合もある(SGDより過学習しやすい)。

👉 試験頻出:「AdamはSGDを改良した最適化手法」。


学習率調整(Learning Rate Scheduling)

学習率は固定せず、状況に応じて変化させることが多い。

主なスケジューリング手法

  • ステップ減衰:一定エポックごとに学習率を下げる。
  • 指数減衰:学習率を徐々に指数的に減少。
  • Cosine Annealing:コサイン曲線のように減少。
  • Warm-up:初期学習率を小さくして徐々に上げる。

👉 ポイント:「学習率は固定ではなく調整が重要」。


ハイパーパラメータ探索

最適化手法自体の性能は ハイパーパラメータ設定 に大きく依存する。

主な探索手法

  • グリッドサーチ(Grid Search)
    • 候補値を網羅的に試す。シンプルだが計算コスト大。
  • ランダムサーチ(Random Search)
    • 候補範囲からランダムに試行。効率的に良い値を発見しやすい。
  • ベイズ最適化(Bayesian Optimization)
    • 過去の探索結果を利用して、より良い候補を効率的に探索。

👉 試験で狙われる:「グリッドサーチとランダムサーチの違い」。


まとめ

  • 勾配降下法:最適化の基本、学習率の設定が重要。
  • SGD:確率的に勾配を更新、Momentumなどで改良。
  • Adam:学習率を適応的に調整、安定性が高い。
  • 学習率調整:スケジューリングで効率的に収束。
  • ハイパーパラメータ探索:Grid, Random, Bayesian Optimization。

出題傾向

  • 「SGDとAdamの特徴の違い」
  • 「学習率が大きすぎる/小さすぎるとどうなるか?」
  • 「ハイパーパラメータ探索手法の代表例」

練習問題(例題)

問題:ハイパーパラメータ探索において、候補範囲からランダムに値を選んで試行する手法はどれか?

  1. グリッドサーチ
  2. ランダムサーチ
  3. ベイズ最適化
  4. モンテカルロ法

👉 正解:2

タイトルとURLをコピーしました