勾配降下法の理論
1. 非凸最適化
1.1 深層学習の損失地形
- 多数の局所最小点
- 鞍点(saddle points)が支配的
- それでもSGDはうまく動く
1.2 鞍点の問題
高次元では:
- 局所最小点より鞍点がはるかに多い
- ∇L = 0 の点の大部分は鞍点
- 勾配消失で学習が停滞
解決策:
- モメンタム: 鞍点を乗り越える
- 適応的学習率(Adam等): 曲率を考慮
2. 収束保証
2.1 凸関数の場合
SGD with learning rate η:
E[L(w_T)] - L(w*) ≤ O(1/√T)
収束は保証されるが遅い
2.2 非凸の場合
勾配ノルムの収束:
min_t E[||∇L(w_t)||²] ≤ O(1/√T)
「勾配が0に近い点」には到達
ただし大域最小点とは限らない
3. 暗黙的正則化
3.1 現象
明示的な正則化なしでもSGDは「良い」解を見つける。
観察:
- 過パラメータ化モデルでも汎化
- 訓練誤差0でも良いテスト性能
- SGDが特定の解を「選好」
3.2 メカニズム
| 要因 | 効果 |
|---|---|
| SGDノイズ | 鋭い極小点からの脱出 |
| 学習率 | 暗黙的なL2正則化効果 |
| 初期化 | 原点近傍からの開始 |
| アーキテクチャ | 特定の関数クラスへのバイアス |
3.3 最小ノルム解
線形回帰の場合、勾配降下は最小ノルム解に収束:
min ||w||₂² subject to Xw = y
過パラメータ化でも「単純な」解を選ぶ
4. 損失地形の構造
4.1 平坦な極小点
- シャープな極小点: 汎化が悪い傾向
- 平坦な極小点: 汎化が良い傾向
- SGDは平坦な極小点を選好
4.2 Mode Connectivity
異なる局所最小点が低い損失の経路で接続
→ 局所最小点の「谷」は連結している可能性
5. 参考文献
- Zhang et al. (2017). "Understanding deep learning requires rethinking generalization" ICLR
- Keskar et al. (2017). "On Large-Batch Training for Deep Learning" ICLR
- Li et al. (2018). "Visualizing the Loss Landscape of Neural Nets" NeurIPS