一、梯度下降算法背景
梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。
其实,梯度下降算法理解起来很简单,我们在训练模型时,随机初始化的参数肯定不是最优的,这样的参数会导致预测结果和真实结果存在一定的偏差,我们根据预测与真实之间的差异构造Loss Function,我们的任务就是找到Loss Function的最低点对应的参数(损失函数是Loss随参数变化而变化的图像),下图展示了2D和3D情形下损失函数的示意图。
二、梯度下降算法
1. 梯度下降 / 批量梯度下降(BGD)
(ps:我的理解是GD和BGD是一种算法&