確率的勾配降下法
2015年に Diederik P. Kingma らが発表した方法。AdaGrad, RMSProp, AdaDelta の変形。AdaGrad や Sum of Functions Optimizer よりも収束が速くなった。ハイパーパラメータは α = 0.001 , β 1 = 0.9 , β 2 = 0.999 , ε = 10 − 8 {\displaystyle \alpha =0.001,\beta _{1}=0.9,\beta _{2}=0.999,\epsilon =10^{-8}} を推奨。イテレーション回数 t は 1 から始める。
http://arxiv.org/abs/1311.2115.
↑ Diederik Kingma; Jimmy Ba (2015). “Adam: A Method for Stochastic Optimization”. Proceedings of the 3rd International Conference for Learning Representations, San Diego. http://arxiv.org/abs/1412.6980.
↑ Luo, Liangchen and Xiong, Yuanhao and Liu, Yan and Sun, Xu (2019). “Adaptive Gradient Methods with Dynamic Bound of Learning Rate”. Proceedings of the 7th International Conference on Learning Representations, New Orleans, Louisiana. https://www.luolc.com/publications/adabound/.
↑ Stephane Ross; Paul Mineiro; John Langford (2013). “Normalized Online Learning”. Proceedings of the Twenty-Ninth Conference on Uncertainty in Artificial Intelligence. http://arxiv.org/abs/1305.6646.
確率的勾配降下法(オンライン学習)では、Q(w) の勾配は、1つの訓練データから計算した勾配で近似する。
上記の更新を1つ1つの訓練データで行い、訓練データ集合を一周する。収束するまで訓練データ集合を何周もする。一周するたびに訓練データはランダムにシャッフルする。AdaGrad などの適応学習率のアルゴリズムを使用すると収束が速くなる。
擬似コードでは、確率的勾配降下法は下記になる。
全てではないが複数の訓練データで勾配を計算する方法をミニバッチと言う。この方法は、コンピュータのSIMDを有効活用でき計算を高速化できる。また、複数の訓練データを使うので収束がよりなめらかになる事もある。
確率的勾配降下法の収束性は凸最適化と確率近似の理論を使い解析されている。目的関数が凸関数もしくは疑似凸関数であり、学習率が適切な速度で減衰し、さらに、比較的緩い制約条件を付ければ、確率的勾配降下法はほとんど確実に最小解に収束する。目的関数が凸関数でない場合でも、ほとんど確実に局所解に収束する。これは Robbins-Siegmund の定理による。
Q i {\displaystyle Q_{i}} (訓練データ)がランダムにシャッフルされる事により、確率的に局所解にはまりにくくなる効果がある。