单纯形法求最小值的检验数_MIT-双变量微积分-08-最大值和最小值,最小二乘法...

这篇博客探讨了如何使用偏导数寻找二元函数的最大值和最小值,解释了求解局部极值点时偏导数为0的原因,并介绍了临界点的三种类型。此外,还详细阐述了最小二乘法的概念,通过实例展示了如何找到误差平方和最小的直线方程,以及最小二乘法在非线性问题如摩尔定律中的应用。
摘要由CSDN通过智能技术生成

上一节里,我们讲到了二元函数的偏导数。今天,我们主要利用偏导数来解决最大值和最小值的问题。

大致回顾下上节的内容:

一个二元函数,它有两个自变量x和y。所以,它就有两个不同的偏导数。分为对x求偏导(此时y视为常数);对y求偏导(此时把x视为常数)。

对x求偏导:

对y求偏导:

再此,再补充一点,如何去近似的估计二元函数在某一临近点的值。

告诉我们x发生微小变化时
会变化多少, 同理,
告诉我们y变化时,
的变化情况

如果我们同时对x和y都有所改变(微小的变化),那么他们的效果叠加在一起,可以近似的得到函数的改变后的值。

公式中“近似”的符号的意思是函数图像和切平面靠的很近。如果我们在平面上移动,这也就变成了等式。

下面我们来证明上面那个式子:

我们尝试用切平面逼近的方法来入手。关于函数

的一个切平面,我们看几张图片来方便我们理解

0fd1897fe36cb6bb3643335e9d9be37e.png

作为常量不变,横截了
,所得到的图形。这样
为自变量,
为因变量,这条曲线的斜率就是关于x的导数。

现在,如果我在另一个方向上再做一个平行于

的截面,截面上曲线的斜率就是
。这两种情况,我们都能找到一条与曲面相切的直线。现在假设曲面上有两条相交切线。

219dd68405004e87bce782d4d46a407e.png

那么这两条切线可以确定一个切平面。下面我们想办法来求这个切平面。

我们知道曲面上两条切线的斜率,我令

处对
的偏导数

同理,我令

处对
的偏导数

接着,我们用

来分别表示这两条切线。

第一条切线为:

第二条切线为:

这两条直线都在切平面里,它们都与函数

的曲面相切,所以他们决定了一个切平面,这个切平面的表达式为

的时候,表示的是第二条切线;当
时表示的是第一条切线。

下面来说如何求极小值和极大值。

我们要用到偏导数,当然不论是2个自变量还是多个,处理方法都是一样的

首先,我们来考虑在局部极值点处的偏导数,也就是

同时为0。

同时为0的原因:假设

,这意味着如果
变化,它的一阶函数不会跟着变化。此时函数在平行于
的平面上有极值,
但这点只是这个切平面上的极值点。如果
,那么当
的值改变时,函数值就可能变化。所以,我们需要知道在哪一点处
改变时函数值并不改变。这就是为什么要它俩的导函数同时为0的原因。

此时,如果
,很显然他们的函数值在一阶上不变,当然,函数的二阶项实际上是发生了变化的。函数并不是真的不变了,这只是说函数的变化量。

类似的情况是我们会发现函数图像的切平面是水平的

b855f6dd66f694f774c1625f8cf077c6.png

可以从这个公式看出,当他们的偏导数都为0时,
等于一个常数。这就是一个水平面。

当然也有

同时为零后,这个点(临界点)不是极值点。

临界点有3种

  • 极小值点
  • 极大值点
  • 鞍点

看一个例子:

我们分别对x和y求偏导:

解这个方程,我们得到临界点为

,那么我们如何判断他是不是极值点呢?

比如马鞍面

它的鞍点,就不是最小值点。

501ef757b79281a4299f1bb3b54409d3.png

如果是一元函数,我们可以继续求二阶导来判断。但是这里,如果求二阶导的话,我们会出来很多的偏导数。我们有另一种方法:把函数变为平方和,即

所以

函数最小值为

最后,来说一下极值的应用——最小二乘法。

在科学实验中,需要去测量一些数据。比如你在做化学实验,你可以把反应物的消耗量设为x,生成物的量设为y,然后一会得到一系列的数据

,把他们放到坐标轴上,你可能会观察到x与y的关系也许是线性的,也许是指数关系的等等。

我们先举一个呈线性的例子。

7c225e9d16b4b192874e5000d1fb0635.png

这条直线(假设为

)夹在了实验数据所给出的一系列点
中,那么我们就想问,什么样的直线与这些点的近似程度更高。

z当然还有一点需要注意,直线

中,变量不是x和y,而是a和b。

所以,我们要注意的就是什么样的a和b能够使得直线方程更好的逼近这些点。

什么又是“更好的”呢?

就是这组a和b使误差总和最小。即这些点到直线有多远。

我们可以这样来算误差,即直接算点到直线垂直的距离。或者,你也可以计算同一x值上,实验数据和直线所对应的的y值之间的误差(

)(这也是最常用的方法!)。

在一组数据中,可能有的数据点离直线距离很远,这是因为实验数据经常不是很准确,所以,不要对误差非常大的点做过多的关注,另一方面,你可能会想测量误差的平均值或者你其实更加关注其他的因素,所以你不想这样测量误差。

所以,才有了最小二乘法!它给出了求a和b的公式,给出了最好的a和b,这个方法应用最广。

“最好”的意思实际上是使总误差的平方最小或者误差的平方和最小。误差为

接下来要做的是最小化这个函数D
D是所有数据误差的平方和。

下面,我们要算的就是

的那一点。这就是我们找临界值的方法。

我们先把式子里的2去掉。

这些方程是关于a和b的,我们只需关注这些a和b的系数就行了,如果你的眼光足够好,你可以看出,这是一个关于a和b的一个线性方程组。只是有很多的x,y放在了这里。

下面,我们把它展开,这样看起来更明显。

再整理一下

这些系数看起来很吓人,不过它们只是数而已,你可以通过数据来算这个2×2的线性方程组。

上面讲的是如何找到最合理直线的方法。为什么这个就是最好的而不是最坏的?我们只是解出了一个临界点,这可能会令函数D的误差达到最大,对于这一点,我们下次就有了答案,如果你用二阶导数来验证这个问题,其实验证不是那么简单的,不过你会知道,这的确是个最小值。我们会看到这的确是最小值。

上面这个例子是线性的粒子,实际上,最小二乘法可以应用得更广。因为除了直线形式,不同的形式,数据可能对应了很多种不同形式的函数。

我们用图片来说明一下。

在计算机科学领域,有一个定律——摩尔定律。他告诉我们电脑芯片的运行速度随着时间发展变得越来越快。这个定理里电脑芯片运行速度是其所能容纳晶体管的数量决定的。

这里有一些数据——标准PC晶体管数量。

8d27501c1a217ff82bf9f0948efc0eed.png

我们先用直线来拟合下,显然,这看上去不像是呈直线趋势的;另一方面,如果你把这个图形放到对数分度坐标下,也就是对晶体管数量就对数,那么你会得到一条好得多的直线。

1c0637d16eadae327d9f3a67ab6614de.png

事实上,这说明晶体管数量和时间的关系是指数关系,这就是摩尔定律的内容,它告诉我们晶体管的数量,每两年或三年就会翻倍。

我们怎么能找到最好的指数拟合?指数拟合就是像

,这个是我们关注的形式,我们可以试着最小化这个平方误差,就像前面做过的那样,那其实根本没用,你得到的方程会及其复杂,你解不了它,不过还记得我们刚才看的在对数坐标下的图形,如果你把y的对数看作关于x的函数,这就变成了一个线性关系,

8d27501c1a217ff82bf9f0948efc0eed.png

可以看出,这可以化成

的形式,而这是线性拟合问题,你要做的就是找到和
最相近的直线。

比如说,我们有更复杂的情形,如

,此时我们要找到拟合度最高的抛物线,我们需要得到a,b,c。所求的函数D也即
现在你有一个关于a,b,c的函数等于数据点相对函数的误差平方和,在你解临界点的时候, 就是要解三个关于a,b,c的方程,实际上你会得到一个3×3的线性方程组,它的原理是一样的。

总而言之,最佳拟合问题,实际上就是一个极小值问题的应用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值