最小二乘法
通俗描述
在现实世界中,我们发现世间万物是相互联系的,大家都听说过“蝴蝶效应”,它说的也是这个道理。一个(或一组)因素(自变量)的变化会引起另外一组因素(因变量)的变化。可是现实世界中总是存在一些微乎其微的影响因素对上述的这个变化过程造成干扰,因此,这个变化过程总是存在一定的误差。此时,我们就想如何通过给定一组自变量和因变量的集合,计算得到他们之间的关系(函数),当然其中的重点就是要尽量排除掉误差的干扰。
专业描述(自编):给定一组存在误差的由自变量和因变量组成的集合。预测真实的自变量与因变量之间的映射关系。
举例
案例摘自马同学线性代数
推荐看马同学的线性代数,图文讲解真的挺棒的。
啰嗦两句:因为我们生活的空间非常有限,只有3维,因此大多数时候我们要举例的时候都会用二维的案例来讲,因为二维的案例我们可以图形化,便于理解。但是通常一个经典的数学运算是与维度无关的,也就是能够运用到任意维的空间上,只是,我们可能很难在我们的脑海中“想象”而已。
背景:我们都知道气温和冰淇淋的销量应该有一个对应关系。此时我们就想通过我们的知识,来得出这样一个映射关系(函数)。傻子都知道,在这件事情上,“气温”是自变量,“冰淇淋销量”是因变量。
好的,假设楼下小卖部的老板老王是你的朋友,因为他经常趁你不在的时候上你家串门。你和老王要到这样一组数据
都说了之所以用二维的数据来举例是因为我们可以画出来:
嗯,他们的关系看起来像是最简单的线性关系。呵呵,初中毕业的你也见过这种图形。但是,这些点毕竟都和这条直线有一定的举例(误差),那么,这条线究竟应该怎么画才是最准确的呢?
首先强调一点,没有绝对的准确,即使我们请数学家使出浑身解数计算得到一个“准确”的映射关系,那其实也仅仅是基于你给出的这组数据而言的,不过,当这组数据量足够大的时候,这个映射关系的“准确性”理所应当的会越来越高,至少,会越来越具有可信度。这就是“大数据”的意义,它能够帮助我们找到这个世界的本真(很装逼)。
好的,还要强调一个设想,那就是:所谓误差总是在真值附近上下波动。我们这样理解,比如我们得出一个结论说当气温为30度的时候,楼下老王的店能卖100根冰淇淋。那么因为误差的存在,所以,他卖出的冰淇淋数量应该是在100根上下波动,有时候卖九十几根,有时候卖一百多根。可如果他每次都卖超过100根,那只能说明你对“真值”的计算有问题,也可能是外部环境的改变,比如他竟然搞了优惠促销活动!
OK,终于我们要进入正题,什么是最小二乘法了,那就是先设一个函数。没错!既然我们看出了应该是一个线性函数,那们就假设函数为:
此时,我们可以给出每组数据的误差的计算公式:
然后,再求解总误差的平方
注意,这里a和b就是我们要求解的东西。还记得我们的目的吗,我们是要让误差最小!!所以根据上式,总有那么一个a和b能够让总误差取得最小值!!
怎么求?根据多元微分,分别对a和b求偏导数,当两个偏导数都=0时,就是取得最小值的时候!
好的,此时又变成了初中毕业的你能够解答的二元一次方程组了。很高兴,解得
大功告成,真实的直线我们可以画出来了
结论
那么什么是最小二乘法?
就是一种使得误差的平方(二乘)取得最小值的一种用于拟合现实世界中的映射关系(函数)的方法!
聪明的注意到了,如果全面一点,他应该叫做最小误差二乘法,或者是最小误差平方法!
没错,都可以!只是这么说没办法装逼。
对了,多维的数据可不可以?当然可以!计算过程一毛一样,只是最后求的会是N元一次方程组!加油!