分享

物理实验之最小二乘法 | 怎样学习大学物理小组 | 果壳网 科技有意思

 盛夏流年闪耀 2014-11-05

物理实验中,数据处理经常用到最小二乘法。当然最小二乘法用手算的话好麻烦啊。

大家可能已经知道最小二乘法是什么了,这里也不多说了,就简单提一下。

一、最小二乘法原理

线性的最小二乘法是用来产生最能代表一组数据的一个一次函数,这里说的是最好的拟合,而不是完美的拟合。

例如这样一个例子:

这里有三个数据点,A(x1,y1),B(x2,y2),C(x3,y3)。我们要找一条最能够代表这三个点的直线。那如何找呢?

我们的想法是要使得误差最小。可是什么是误差?怎么代表误差?

假设我们现在已经把这条线找到了,比如是 y = f(x)。那么如果 A 点相对于直线的误差是不是可以用 A' 和 A 的纵坐标之差来表示?这样我们把所有的三个点的这些误差加起来,是不是就可以代表所有点的总的误差呢?

这里有个问题,但看一个点,这个方法没有问题,但是如果是很多点,那么这个差值有正有负,加起来就可能会有相互抵消的。所有呢,我们的办法是求这些误差的平方和。

那么最小二乘法就是要这个误差最小。Least squares 就是说要这个带 squares 的式子最小。

至于如何使得这个最小,至少有两种方法。一种是直接用微积分的知识,对所有未知的参量求偏导数并设为零,就可以求出参量了。另一种方法是用线性代数的方法,就是利用往空间上投影的方法。

当然,两种方法都是课本上的公式了,具体求解的话,也就是要带公式了。

不过呢,要是这个帖子只说这点内容,就没啥意义了对吧。

所以最好能讨论一下从线性代数的角度,或者说从几何的角度来看最小二乘法。

最小二乘法是要找到一条直线, y = c + d x。这样的话,我们把数据带进去,就会形成系列方程组,可以写成矩阵的样子:


但是,要知道,我们只有两个待定系数,所以这是过度确定的。一般是无解的。这就是我们前面说最小二乘法是在找最好的拟合,而不是完美的拟合的原因。

那么我们要怎么做呢?

现在有一组纵轴的数据,

这组数据呢,就是一个 n 维空间的一个矢量。
而系数矩阵

呢,就像一个参考空间。
我们要做的呢,就是要把这个 n 维空间的矢量的末端到这个参考空间上的投影,这个投影就是最合适的拟合,也就是我们的最小二乘法的精要。
做个比喻。这就好比说我们有个平面,如果我们的数据是完全线性的,那么所有的数据都会落在这个平面内,但是,实际情况可能有所偏差,是的代表所有数据的点脱离了这个平面,那我们要找的那条曲线是什么呢?那自然是代表所有数据在这个点(或者说从起点出发的矢量)在这个平面内的投影啦!

但,这不能算啊?我们要找到的是 c,d 的值啊?怎么算呢?

我们还有个

里面我们给 c 和 d 加了帽了~ 有帽表示这个只是个最好的拟合,但不一定是完美的~

那这些之间有什么关系呢?我们可以看前面的等式,比如用 A 表示系数矩阵,用 M 表示要求解的两个参数(戴帽子哦)矩阵,还有一个 b 表示所有的代表纵坐标的数据矩阵。

好啦,书上说我们要求解的方程是

为嘛呢?我们做个变化

好嘛,这样就可以理解几何意义了。因为这里面右边的是

一个投影算符作用在了 b 上!太好了,投影算符的作用就是把 b 在 A 空间内投影!这样数学就跟我们上面的意义的描述结合起来啦。所以对于最小二乘法,我们要做的是解这样一个矩阵方程


不过这个跟用微积分做是一样的,方程组一样,结果更一样。只是这样可以看到一点从微积分来理解看不到的东西。


二、软件处理


好了,最实用的部分。如何用软件快速的来做最小二乘法的拟合呢?

我想大学里面可能教大家最多的是用 Origin,Sigmaplot 甚至 Excel 之类的软件来做的。挺好的,总之能做出来就成。这些软件里面呢,用的最广的应该是 Origin,但是我更喜欢 Sigmaplot,因为 Sigmaplot 做出来的图不需要做很大的调整就挺好看的,多图排版什么的也很容易。作图嘛,漂亮太重要了。

但是这里我们要说的不是 Sigmaplot,而是一款很多人听说过但是没用过的软件,Mathematica。

可能有人要问,为什么我要用 Mathematica 这么专业的软件啊?

说实话,Mathematica 这几年发展下来,已经不算是一款专业软件了,它上手快,用起来简单而优雅。甚至 Mathematica 都有了 Home 版了!(这…… )

关于 Mathematica 的函数f作图呢?参考 高数也要用 Mathematica —— 作图一 这篇文章。

但数据处理这部分需要比较长的篇幅,所以请看怎样学高数小组的这篇吧:
http://www./post/449185/





REFERENCE:
http://v.163.com/movie/2010/11/J/U/M6V0BQC4M_M6V2AJLJU.html
http://v.163.com/movie/2010/8/R/1/M6TUC9K75_M6TUHRTR1.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多