在应用机器学习算法时，我们通常采用梯度下降法来对采用的算法进行训练。其实，常用的梯度下降法还具体包含有三种不同的形式，它们也各自有着不同的优缺点。

下面我们以线性回归算法来对三种梯度下降法进行比较。

一般线性回归函数的假设函数为：

\(h_{\theta} = \sum_{j=0}^{n} \theta_{j} x_{j}\)对应的能量函数（损失函数）形式为：

\(J_{train}(\theta ) = \frac{1}{2m}\sum_{i=1}^{m}\left (h_{\theta }\left (x^{i} \right )-y^{i} \right )^{2}\)