形象化举例,由上图所示,假如最开始,我们在一座大山上的某处位置,因为到处都是陌生的不知道下山的路,所以只能摸索着根据直觉,走一步算一步。在此过程中,每走到一个位置的时候,都会求解当前位置的梯度,沿着梯度的负方向,也就是当前最陡峭的位置向下走一步,然后继续求解当前位置梯度,向这一步所在位置沿着最陡峭最易下山的位置走一步。不断循环求梯度,就这样一步步地走下去,一直走到我们觉得已经到了山脚。
当然这样走下去,有可能我们不能走到山脚,而是到了某一个局部的山势低处。由此,从上面的解释可以看出,梯度下降不一定能够找到全局的最优解,有可能是一个局部的最优解。当然,如果损失函数是凸函数,梯度下降法得到的解就一定是全局最优解。
核心思想归纳:
- 初始化参数,随机选取取值范围内的任意数;
- 迭代操作:
a) 计算当前梯度;
b) 修改新的变量;
c) 计算朝最陡的下坡方向走一步;
d) 判断是否需要终止,如否,返回a) - 得到全局最优解或者接近全局最优解。