为什么梯度的反方向是函数下降最快的方向?

  数学 数值计算 最优化    浏览次数:5150        分享
5

梯度下降法是用梯度的反方向作为下降方向,那么为什么函数在梯度的反方向上下降是最快的呢?

 

niiii   2018-08-15 10:42



   4个回答 
18

先以一个二元函数为例,$f(x,y)$

我们知道梯度是函数在各坐标轴方向上的变化率,比如梯度$\nabla f(x_0,y_0)$是函数在$(x_0,y_0)$上关于$x$轴和$y$轴的变化率

$$\nabla f(x,y)=\begin{pmatrix}f_x(x,y) \\ f_y(x,y)\end{pmatrix}$$

对于一个任意单位方向$u$,假设$\alpha$是$u$和$x$轴的夹角,那么函数$f(x,y)$在$u$这个方向上的变化率为

$$f_x(x,y) \cos \alpha + f_y(x,y) \sin \alpha=\nabla f(x,y)^T\begin{pmatrix}f_x(x,y) \\ f_y(x,y)\end{pmatrix}=\nabla f(x,y)^Tu$$

也就是两个向量的点积。我们知道向量点积的结果和向量本身的大小以及两者夹角相关,假设$\nabla f(x,y)$和$u$的夹角为$\theta$,那么函数$f(x,y)$在$u$这个方向上的变化率可以写成

$$\nabla f(x,y)^Tu=\|\nabla f(x,y)\|_2 \|u\|_2 \cos \theta=\|\nabla f(x,y)\|_2\cos \theta$$

$\cos \theta$的取值范围为$[-1, 1]$。当$\cos \theta = 1$时,函数变化率最大(上升最快),此时$u$和梯度$\nabla f(x,y)$同方向;当$\cos \theta = -1$时,函数变化率最小(下降最快),此时$u$是梯度$\nabla f(x,y)$的反方向。


推广到$n$元函数,函数$f$在单位方向$u$的变化率为

$$\nabla f^T u$$

假设$\nabla f(x,y)$和$u$的夹角为$\theta$,同样函数$f$在$u$这个方向上的变化率可以写成

$$\nabla f^Tu=\|\nabla f\|_2\|u\|_2 \cos \theta=\|\nabla f\|_2\cos \theta$$

变化率由$\cos \theta$决定。$u$和梯度$\nabla f(x,y)$同方向,上升最快;$u$和梯度$\nabla f(x,y)$反方向,下降最快。


SofaSofa数据科学社区DS面试题库 DS面经

u_u   2018-08-22 01:59

醍醐灌顶,茅塞顿开! - robin_he   2019-05-09 05:45
赞! - zzzz   2019-09-07 15:22
6

因为这个时候$cos\theta=-1$,最小。

$\theta$是梯度和$\Delta x$之间的夹角

SofaSofa数据科学社区DS面试题库 DS面经

nobodyoo1   2018-08-16 00:37

4
梯度即在局域内导数取最大值的方向,因此梯度的方向也是函数最快增大的方向,而梯度的反方向也就是函数下降的最快的方向SofaSofa数据科学社区DS面试题库 DS面经

jing   2018-08-16 09:03

4

假设$v$为任意方向的单位向量,$f(x)$在$x$可导,沿$v$的方向导数

$$\nabla_vf(x)=\lim_{h\to 0} \frac{f(x+hv)-f(x)}{h}=\nabla f(x) \cdot v=|\nabla f(x)|cos\theta$$

$\theta$是$\nabla f(x)$和$v$夹角。左边表示当$x$变化$hv$时,$f(x+hv)-f(x)$的变化量,它等于梯度$\nabla f(x)$和$v$的内积。当二者方向相反时, $\theta=\pi$,此时$f(x)$改变的绝对值最大。

也可以从泰勒级数展开来看$f(x+\delta v)=f(x)+\delta \nabla f(x) \cdot v+\cdots$ , $\delta$是很小的步长。第二项就是一阶增量,正比于方向导数。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2019-05-09 13:04

嗯,有道理 - x1y7o   2020-04-15 09:09


  相关主题

对于小批量随机剃度下降法(mini-batch SGD),如何选择每批样本的数量?   2回答

nesterov’s momentum和momentum的区别?   1回答

RMSProp的直白解释   1回答

Newton–Raphson和牛顿法区别?   1回答

用SGD时陷入局部最优解的解决方法   3回答

学习率不当会导致sgd不收敛吗?   5回答

随机平均梯度法(Stochasitc Average Gradient)和随机梯度下降(SGD)有什么区别   3回答

随机梯度下降(sgd)的收敛问题   4回答

Adam优化算法   1回答

最速下降法与梯度下降法   1回答

牛顿法到底是一阶优化算法还是二阶优化算法?   3回答

梯度上升算法是什么?   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!