多元函数的向量表示_梯度的方向为什么是函数值增加最快的方向?

写在前面

上周末和一位学金融的师兄吃饭回来的路上,偶然间聊到了深度学习中的梯度下降方法,于是便有了下述的对话。

师兄:为什么要沿着梯度的反方向更新参数?
我:因为我们的目标是使损失函数值最小,而梯度的方向是函数值增加最快的方向,因此要沿着梯度的反方向更新参数。
师兄:为什么梯度的方向是函数值增加最快的方向?
我:。。。

说来惭愧,本人已入门机器学习近三年了,竟连这样一个基础的问题都没有回答上来,真的需要好好面壁一段时间了。当然,面壁归面壁,问题还是需要解决的。遂查阅相关资料,寻找到一篇讲解很清晰的博文:为什么梯度反方向是函数下降最快的方向?,然后在其基础上结合高数课本以及其余的一些博文、问答,整理出自己的一些见解,并以此记录之。余在此向网络上无私分享知识的前辈表以深深的感谢!PS:下文所述内容仅为个人见解,供大家参考。若有错误或不当之处,欢迎批评指正!

一元函数的导数

仅拥有一个自变量的函数称为一元函数,简记为

。在实际生活中,人们想要了解函数
在点
处的变化率。例如,一个非匀速运动的质点在某一时刻的瞬时速度;或者一条曲线上某一点的斜率。此时涉及到一个问题:
如何求出函数在某一个点的变化率呢?一般情况下,人们可以很容易求出函数在自变量变化某一段的变化率。例如,当自变量在
处产生一个增量
时,函数
也会产生一个增量
,此时
即为函数在自变量从
变化到
时的变化率。那么,
如何求出函数
在点
处的变化率呢?

为了解决上述问题,需要借助极限的概念(极限非此博文讨论的内容,若不太了解可自行查阅相关资料)。若了解极限的概念,便可十分容易理解下面的叙述:当

趋于
时,若
的极限存在,则此极限值即为函数
在点
处的变化率,
也将其称之为函数
在点
处的导数。具体过程如下图所示(图片来自于博文函数的导数概念),数学上可描述如下:

ebb1a0c9e2352dd17c43ca778a783d47.gif
求导变化过程图

至此,一元函数导数的基本概念已介绍完毕。由于一元函数仅仅具有一个自变量

,因此这类函数仅且只能反应函数沿
轴方向的变化率。进一步讲,当点
确定后,函数在该点的变化率有且仅有一个,数值上为过该点的切线的斜率。当其大于
时,表明函数在该点有上升趋势;当其小于
时,表明函数在该点有下降趋势。

多元函数的偏导数

拥有多个自变量(

)的函数称为多元函数。这里以二元函数
为例讲解偏导数,其余情况以此类推(下文与此一致)。

由于二元函数具有两个自变量

,因此函数图像为一个曲面。与一元函数类似,
如何计算二元函数对曲面上一点
的变化率呢?此处需要注意的是, 因为过曲面上一点可以作出无数条切线,因此函数在该点也具有无数个变化率。为了简单起见,可以先考虑函数沿着两个坐标轴(
轴,
轴)方向的变化率。
  • 当自变量
    固定在
    ,函数在点
    处的变化率称为函数在点
    处对
    的偏导数,记作
  • 当自变量
    固定在
    ,函数在点
    处的变化率称为函数在点
    处对
    的偏导数,记作

cf0f0181056877823c085ae2b0d899b3.png
二元函数图示例

多元函数的方向导数

当了解了多元函数的偏导数后,细心的读者可能会发现偏导数仅仅描述了函数在点

处沿两个坐标轴(
轴,
轴)方向的变化率,然而实际上函数在该点具有无数个变化率(在几何上表现为函数在该点具有无数个切线的斜率)。因此,
如何求出函数在点
处沿某一方向的变化率呢?万变不离其宗,此时仍然按照变化率的定义去求解,即只需求出 函数的增量与自变量沿着某一方向增量比值的极限即可。

1234c4cf99aa5cc906e632b203621954.png
二元函数在某点沿着某一方向的变化率

假设某一方向的单位向量为

为此向量与x轴正向夹角,显然
根据
的不同,此向量可以表示任意方向的单位向量。当点
沿着该方向产生一个增量
到达点
时(终点的坐标可以根据向量运算法则求出),函数
也会产生一个增量
。此时函数沿此方向的变化率为:

1af9afa3c648168813487c6aa9b617b4.png
向量运算法则

上述公式的证明可参阅:方向导数公式的证明。至此,多元函数的方向导数概念已讲解完毕。

多元函数的梯度

在了解了多元函数的方向导数之后,一个很自然的问题是:既然函数在点

处沿着任意的方向都有一个变化率,那么
沿着哪个方向(
)函数的变化率最大呢?

0b042d7e9352f8eda4ab024d6318548e.png
二元函数在某点具有无数个变化率

根据上节的介绍,函数

沿着任意方向(
取任意值)的变化率为:
,因此接下来只需求得使其达到最大值时的
便可解决上述问题。由于上式可以看成两个向量的内积,令
,则:

其中,

的夹角。根据上式,可得出如下结论:
  • 时,即
    方向相同时,函数变化率最大,且在点
    处呈上升趋势;
  • 时,即
    方向相反时,函数变化率最大,且在点
    处呈下降趋势;

最后,当点

确定后,向量
也随即确定。由于向量
的方向为函数值增加最快的方向,而此方向经常被用于实际生活中,因此为便于表述,人们为其取了一个名字—梯度。换而言之,
多元函数在某一点的梯度是一个非常特殊的向量,其由多元函数对每个变量的偏导数组成(这即是为什么求梯度的时候需要对各个变量求偏导的原因),其方向为函数在该点增加最快的方向,大小为函数在该点的最大变化率。

总结

写到这里,即对为什么梯度是函数值增加最快的方向有了一个全面的了解,同时也明白了为什么在机器学习中,使用梯度下降方法去寻找损失函数的最小值。基于此事,也使得自己懂得,凡事既要知其然更要知其所以然的重要性。

参考贴

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值