数学-最小二乘法

转载 2018-03-23 16:54 阅读(121)次

我这里转载知乎上 司马懿 的回答,我个人认为通俗易懂,写得非常好。原文地址在 知乎-最大似然估计和最小二乘法怎么理解?的回答

设想一个例子,教育程度和工资之间的关系。我们观察到的数据无非就是一个教育程度,对应着一个工资。我们希望的自然是找到两者之间的规律:如果把教育程度的初中、高中、大学、研究生及博士定义为1234的话,我们希望找到类似于工资=1000 +2000x教育程度  的这种规律,其中1000和2000是我们需要从数据里面发现的,前者称之为底薪,后者称之为教育增量薪水。
如果我们就观察到两个数据,那解起来很简单,直接把两个数据带进去,二元一次方程组,就得到底薪和教育程度增量薪水之间的关系。这个在图上就体现为两点决定一条直线:





但是如果现在有三个数据,怎么办呢?如果这三个点不在一条线上,我们就需要作出取舍了,如果我们取任意两个点,那么就没有好好的利用第三个点带来的新信息,并且因为这三个点在数据中的地位相同,我们如何来断定应该选用哪两个点来作为我们的基准呢?这就都是问题了。这个时候我们最直观的想法就是『折衷』一下,在这三个数据,三条线中间取得某种平衡作为我们的最终结果,类似于图中的红线这样:



那怎么取平衡呢?那我们现在必须引入误差的存在,也就是我们要承认观测到的数据中有一些因素是不可知的,不能完全的被学历所解释。而这个不能解释的程度,自然就是每个点到红线在Y轴的距离。
但是我们尽管痛苦的承认了有不能解释的因素,但是我们依然想尽可能的让这种『不被解释』的程度最小,于是我们就想最小化这种不被解释的程度。因为点可能在线的上面或者下面,故而距离有正有负,取绝对值又太麻烦,于是我们就直接把每个距离都取一个平方变成正的,然后试图找出一个距离所有点的距离的平方最小的这条线,这就是最小二乘法了,简单粗暴而有效。

最小二乘法的核心是权衡,因为你要在很多条线中间选择,选择出距离所有的点之和最短的

从上面转载内容可以看出,其实这就是机器学习里SVM算法和线性回归问题的cost function的思路。



上一篇:数学-arg
下一篇:Lamport signature