梯度的一些笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/whgyxy/article/details/89450012

梯度的一些笔记

导数、偏导数、方向导数、梯度的含义
导数

表示函数 f ( x ) f(x) 在该点的变化率。函数值在增量与在该点的自变量的增量的比值的极限存在的话,导数就存在,反应的是变化率的大小,导数的绝对值越大,说明变化幅度越大,变化越剧烈。如果是一元函数,表示的是函数在某一点的切线的斜率,斜率绝对值越大,表示越陡峭,即变化的幅度越大。
如果是时间 t t 是自变量,位移 s ( t ) s(t) 是时间 t t 的函数,那么某一时刻的导数 s ( t ) s\prime(t) 就是这一时刻的瞬时速度。

偏导数

是个向量,多元函数 f ( x , y ) f(x,y) 在点 ( x 0 , y 0 ) (x_0,y_0) 对各个坐标轴方向上的导数,例如向量 ( f x ( x 0 , y 0 ) , f y ( x 0 , y 0 ) ) (f_x(x_0,y_0),f_y(x_0,y_0))

方向导数

是偏导数概念的推广,是个向量,函数在某点沿着方向向量l的导数,方向向量l的指向有无数种

梯度

梯度也是个向量,数值为方向导数的最大值,方向地偏导数的方向

函数沿着梯度下降的方向,函数值下降的最快,这是很多梯度下降优化的基础。

为什么沿着梯度的反方向是下降最快的方向?

可以参考附录的链接地址,需要理清方向导数和梯度的关系,实际当目标函数 f ( x , y ) f(x,y) 对直线 l : ( c o s α , c o s β ) l:(cos\alpha,cos\beta) 的导数的方向与梯度方向一致时,即方向导数与梯度的方向的方向完全一致,目标函数的方向导数取得最大值,即目标函数 f ( x , y ) f(x,y) 沿着梯度方向值增长的最快,也就是说,按照梯度的反方向值下降的最快。

应用到机器学习

通常我们要优化的目标函数是一个损失函数 L o s s ( θ 1 , θ 2 , . . . , θ M ) Loss(\theta_1,\theta_2,...,\theta_M) ,极小化这个目标函数,参数是我们要学习的机器学习参数 θ 1 , θ 2 , . . . , θ M \theta_1,\theta_2,...,\theta_M

我们首先计算出目标函数的梯度,然后按梯度反方向更新梯度,这样就可以使得目标函数的函数值以最快的方式下降到极小值。
θ i = θ i λ L o s s ( θ 1 , θ 2 , . . . , θ M ) θ i \theta_i = \theta_i - \lambda \frac{\partial Loss(\theta_1,\theta_2,...,\theta_M)}{\partial \theta_i} λ \lambda 是学习率
特别地,如果目标函数是凸函数,那么得到的极小值就是全局最小,此时得到的参数即为全局最优的参数解

参考
  1. 全微分
  2. 方向导数与梯度
  3. 元函数的极值及其求法
  4. 为什么梯度方向是函数值增大最快的方向
  5. 理解梯度下降——NiuLiangtao
  6. 理解梯度下降——LIU-CHENG XU
  7. 机器学习的数学基础 - 导数、偏导数、方向导数、梯度

猜你喜欢

转载自blog.csdn.net/whgyxy/article/details/89450012