梯度下降法公式推导
梯度下降法梯度下降法是求解无约束最优化问题的一种最常用的方法,是一种迭代算法,每一步需要求解目标函数的梯度向量。梯度的定义:某一函数沿着某点处的方向导数可以以最快速度到达极大值,该方向导数我们定义为该函数的梯度。其中θ是自变量,f(θ)...
梯度下降法
梯度下降法是求解无约束最优化问题的一种最常用的方法,是一种迭代算法,每一步需要求解目标函数的梯度向量。
梯度的定义:
某一函数沿着某点处的方向导数可以以最快速度到达极大值,该方向导数我们定义为该函数的梯度。
其中θ是自变量,f(θ)是关于θ的函数,▽表示梯度。 所要研究的梯度下降式子可以写为:
其中η是步长,θ是由θ0按照上述式子更新后的值。
梯度是微积分中一个很重要的概念。
- 在单变量的函数中,梯度其实就是函数的微分,代表着函数在某个给定点的切线的斜率
- 在多变量函数中,梯度是一个向量,向量有方向,梯度的方向就指出了函数在给定点的上升最快的方向
梯度的方向是函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向。
其中:
步长:梯度下降迭代过程中每一步沿负方向前进的长度。
步长选择:
- 步长太大,会导致迭代过快,错过最优解;
- 步长太小,迭代速度太慢,耗时间太长。
公式推导:
一阶泰勒展开式
一阶泰勒展开式利用的是函数的局部线性近似这个概念
其中, 是微小矢量,它的大小就是我们之前讲的步进长度 ,为标量,而的单位向量用表示,则可以表示为:。
在泰勒公式中,我们为了保证该式成立,最重要的一点是要保证θ和θ0的差距要足够小,只有这样才能够应用泰勒公式的基本思想“以直代曲”,即
即推导得到了梯度下降算法中的更新表达式。
原:https://zhuanlan.zhihu.com/p/36503663
比较详细的介绍:https://blog.csdn.net/pxhdky/article/details/82430196
更多推荐
所有评论(0)