If you're seeing this message, it means we're having trouble loading external resources on our website.

如果你被网页过滤器挡住,请确保域名*.kastatic.org*.kasandbox.org 没有被阻止.

主要内容

最大值、最小值和鞍点

了解多元函数的局部最大值 (最小值) 概况。

背景知识

我们要做的是什么

  • 直觉上,当你用图形来思考时,多变量函数的局部极大值是峰值,就像单变量函数一样。
  • 多变量函数在最大点处的梯度为零向量,对应于具有平面切平面的图形。
  • 正式地说,当我们输入多变量函数f时,局部极大值点是输入空间中的一个点,该点附近的一个小区域中的所有其他输入产生的值都比他小。

高维优化

微积分最重要的应用之一是它能解出函数的最大值或最小值。
  • 也许你自己经营一个公司,你想出一些函数去衡量你可以赚取多少钱,基于一些参数:如员工工资、原材料成本,等等。你要找到正确的资源组合来最大化你的收入。
  • 也许你正在设计一辆车,希望能让它更符合空气动力学。你想出一个函数,去衡量基于众多参数下的总的风阻,从而来设计你汽车的外形,将风的阻力降低到最小值。
  • 在机器学习和人工智能中,计算机“学习”如何做某事的方法通常是最大限度的减少程序员制定的一些“成本函数”。

视觉上局部最大值和最小值

让我们从那些我们可以画出的多变量函数开始:那些具有二维输入和标量输出的函数,像这样:
f(x,y)=cos(x)cos(y)ex2y2
我选择这个函数是因为它有很多漂亮的起伏和波峰。我们称其中一个峰值为局部极大值,复数表达为为局部极大值
峰值
  • 在输入空间的峰值(在本例中是指xy-平面)下面的点(x0,y0)称为局部最大值点
  • 函数在局部极大值点处的值,也就是图像在该点上方的高度,就是局部极大值本身。
“局部”一词用来区别这些值和函数的全局最大值,后者是函数能够实现最大值。如果你在一山的顶峰上,这是一个局部的最大值,但是除非那座山是珠穆朗玛峰,否则它不是全球的最高峰。
在本文的最后,我将给出局部极大值点的正式定义。直观地说,它是输入空间中的一个特殊点,在这个点上,向任何方向迈出一小步都只会降低函数的值。
类似地,如果图上某一点有一个倒置的峰值,我们说函数在xy-平面上的这一点上/下处有一个局部最小值点,函数在这一点上的值是一个局部最小值。直观地说,在这些点上,任何方向的步进都只能增加函数的值。
低谷

一个变量中的稳定点(回顾)

在局部极值处的切线斜率为0
在局部极值处的切线斜率为0
你可能还记得单变量微积分中的局部极大/极小的概念,在这个概念中你会遇到很多类似的问题:
概念检查: x取什么值时,函数f(x)=(x2)2+5能得到最大值?最大值是多少?
x=
函数 f的最大值是

通常,函数f的局部极大值和极小值是通过输入值a 的求导函数f(a)=0来计算的。这是因为只要函数是连续的及可微的,切线在最大值和最小值时就会变平,其斜率是0
这一点a有不同的名称:
  • 稳态点
  • 临界点
  • 平稳点
所有这些都意味着相同的内容:f(a)=0
要求f是连续的和可微分的是很重要的,因为如果它不是连续的,则不连续点可以是局部最大值:
如果f是连续的但不可微分的,那么局部最大值可能是这样的:
在这两种情况下,讨论这些最大值点的切线都没有意义,对吧?
然而,即使 f 是连续可微的,即使导数为0,该点也可能不是最值,因为这也发生在拐点:
在拐点处的切线
这意味着找到稳定的点是开始寻找最大值的好方法,但这个不一定是结果。

两个变量中的稳定点

对于多变量函数,情况非常类似。当函数是连续的可微分的,所有偏导数 在局部最大值或最小值点处为0
fx(x0,y0,)关于 x 的偏导=0fy(x0,y0,)关于 y 的偏导=0
对于函数的图形,这意味着它的切平面在局部最大值或最小值处是平坦的。例如,这是一个具有许多局部极值和平面切面的图:
可汗学院视频播放器
说所有的偏导数在某一点上都是零,就等于说那个点的梯度是零向量:
=f(x0,y0,)=[fx(x0,y0,)fy(x0,y0,)]=[00]
人们通常这样写得更简洁:
f(x0)=0
我们约定,粗体的变量是向量。因此,x0是输入值(x0,y0,) 的一个向量,而0 是带有所有0的向量。
这有一个在一个单变量函数中,输入x0的的名称与函数相同。
  • 稳态点
  • 稳态点
  • 临界点
“稳定”和“平稳”这两个词背后的思想是,当你稍微靠近这个输入时,函数的值不会发生显著变化。在我看来,“临界”这个词总是有些夸张,就好像函数即将在这些点附近死去。
与单变量函数一样,保证一个点是局部最大值或最小值,仅使梯度为零是不够的。首先,仍然有类似于拐点的东西:
拐点
但也有一种全新的可能性,这种可能性是多变量函数所独有的。

鞍点

考虑函数f(x,y)=x2y2。我们观察一下原点(0,0)周围的情况。
  • 两个偏导数在这一点的值都是 0
x(x2y2)=2x2(0)=0y(x2y2)=2y2(0)=0
因此(0,0) 是一个稳定的点。
  • 当你在这个点 在x 方向移动,函数可以写成f(x,0)=x202=x2。变量函数f(x)=x2x=0时有一个局部最小值
  • 当你在这个点 在y 方向移动,函数可以写成f(0,y)=02y2=y2。变量函数f(y)=y2y=0时有一个局部最大值
换句话说,对于这个输入应该是最大值还是最小值, xy 方向存在分歧。因此,即使(0,0)是一个稳定的点,但它不是一个拐点,它也不能是局部最大值或局部最小值!
这是这个图形在空间中旋转的视频:
可汗学院视频播放器
(0,0,0)附近的区域不是有点像马鞍?
数学家们也是这么想的,他们很少见地决定为某样东西取一个好名字: 鞍点。根据定义,这些是稳定的点,函数在一个方向上有局部最大值,但在另一个方向上有局部最小值。

测试最大值/最小值

"好吧,"
我听到你说
“因此,梯度为 0是不够的,因为你可能有一个拐点或鞍点。但是你怎么知道一个稳定点是局部最大值还是最小值呢?
我很高兴你问了这个问题!这是下一篇文章关于二阶偏导数检验的主题。现在,让我们用局部极大值的正式定义来结束。

正式定义

我之前已经说过了,但是学习正式定义的原因,即使你已经有了一种直觉,是为了让你自己了解如何精确地捕捉到直观的数学思想。这是清晰思考的好练习,也有助于理解直觉与现实的不同。
在定义局部最大值时,让我们使用向量表示输入,将其写成x
局部最大值的正式定义:一个标量值函数fx0 处有一个局部最大值,如果存在一个正数 r>0,想象它是一个半径,那么下面的语句为真:
f(x)f(x0) 对所有的x ,有 ||xx0||<r
这有点拗口,让我们来分解一下:
说"||xx0||<r"意味着变量x与最大点x0之间的距离小于r。当x是二维的,这就相当于说x位于以x0为圆心的半径r的圆内。
图翻译 ||xx0||<r
更进一步,如果xn维的,那么所有x的集合使得||xx0||<r形成一个以x0为圆心,半径为rn维的球。
三维球体
然后我们可以把这个定义从数学语言翻译成更类似于英语的东西如下:
  • x0f的最大值,如果在点x0附近的输入空间中有一个小的(球状的)区域,那么您可以在点x0处获得该区域点上的f值的最大值。
测试你的理解:写出局部最小值的正式定义,并在写下它时思考每个组件的含义。(不要只是想把上面定义的单词抄下来。)

总结

  • 直觉上,当你用图形来思考时,多变量函数的局部极大值是峰值,就像单变量函数一样。
  • 多变量函数在最大点处的梯度为零向量,对应于具有平面切平面的图形。
  • 正式地说,当我们输入多变量函数f时,局部极大值点是输入空间中的一个点,该点附近的一个小区域中的所有其他输入产生的值都比他小。

想加入讨论吗?

尚无帖子。
你会英语吗?单击此处查看更多可汗学院英文版的讨论.