本文介绍Coursera-Deep Learning-Course2-Week2:Optimization algorithms的内容:深度学习的优化,主要是如何加速梯度下降。
梯度下降的优化
这部分主要介绍了三种梯度下降方法:Batch Gradient Descent, Mini-batch Gradient Descent和Stochastic Gradient Descent,这些内容已经在之前的文章(大规模机器学习)中已经解释的很清楚了,本文不再具体阐述。
先回顾下之前的梯度下降公式:
$$
\theta_{j} := \theta_{j} – \alpha \frac{1}{m}\sum_{i=1}^{m}\left ( h_{\theta}\left ( x^{(i)}\right )- y ^{(i)}\right ) x_{j}^{(i)}
$$
上面这个公式代表的是全批量的梯度下降(batch gradient descent),是梯度下降最原始的形式,也就是说梯度每下降一步都要把所有的样本数据算一遍,这个代价是非常昂贵的,如果m是百万级别的话(实际工程中很常[……]