神说要有正态分布,于是就有了正态分布。

跟我一起机器学习系列文章将首发于公众号:月来客栈,欢迎文末扫码关注!

神说,要有正态分布,就有了正态分布。

神看正态分布是好的,就让随机误差服从了正态分布。

— 创世纪—数理统计

一个问题的出现

故事发生的时间是 18 世纪中到 19 世纪初。17、18 世纪是科学发展的黄金年代,微积分的发展和牛顿万有引力定律的建立,直接的推动了天文学和测地学的迅猛发展。这些天文学和测地学的问题,无不涉及到数据的多次测量、分析与计算。很多年以前,学者们就已经经验性的认为,对于有误差的测量数据,多次测量取算术平均是比较好的处理方法,并且这种做法现在我们依旧在使用。虽然当时缺乏理论上的论证,且也不断的受到一些人的质疑,但取算术平均作为一种直观的方式,已经被使用了千百年。 在多年积累的数据的处理经验中也得到相当程度的验证,被认为是一种良好的数据处理方法,但是在当时没人能给出为什么。

1805年,勒让德提出了一种方法来解决这个问题,基本思想就是认为测量中有误差,且让所有方程的累积误差为(观测值)2\sum(\text{观测值}-{理论值})^2,然后通过最小化累积误差来计算得到理论值。设真实值为θθ,同时x1,x2,xnx_1,x_2⋯,x_n分别为nn独立观测后的测量值,每次测量的误差为ei=xiθe_i=x_i–θ,按照勒让德提出的方法,累计误差为:
E(θ)=i=1nei2=i=1n(xiθ)2(1) E(\theta)=\sum_{i=1}^n e^2_i=\sum_{i=1}^n(x_i-\theta)^2\tag{1}
可以看出勒让德给出的方法其实就是最小二乘法(Least Square),且通过对E(θ)E(\theta)求导后并令其为0,求解θ\theta 得到的结果正是算术平均x=i=1nxin\overline{x}=\frac{\sum_{i=1}^nx_i}{n}。由于算术平均是一个历经考验的方法,而以上的推理说明,算术平均是最小二乘法的一个特例,所以从另一个角度说明了最小二乘法的优良性,使当时的人们对最小二乘法更加有信心。(从这里可以看出,这种做法的逻辑是:首先认为算术平均这种做法好但不知道为什么,然后有人提出了一种衡量误差的方法最小二乘,接着对误差最小化求解后发现其解正是算术平均,所以肯定了最小二乘的有用性。事实上就是既没有说清楚算术平均为什么好,反而用算术平均的结果来肯定最小二乘的厉害,有点像用公理来推定理的味道)

与此同时,伽利略在他著名的《关于两个主要世界系统的对话》中,对误差的分布做过一些定性的描述,主要包括: 误差是对称分布的; 大的误差出现频率低,小的误差出现频率高(这也很符合我们的认知常识)。用数学的语言描述,也就是说误差分布函数f(x)f(x)关于00对称分布,概率密度函数f(x)f(x)x|x|增加而减小。于是许多天文学家和数学家开始了寻找误差分布曲线的尝试,但最终没能给出什么有用的结果。

神说要有正态分布,于是就有了正态分布。

你们不行让我来

现在轮到高斯登场了,高斯在数学史中的地位极高,年轻的时候号称数学王子,后来被称为数学家中的老狐狸。数学家阿贝尔对他的评论是 :“高斯像一只狐狸,用尾巴将沙地上的足迹抹去 (He is like the fox, who effaces his tracks in the sand with his tail) 。” 在误差分布的处理中,高斯以极其简单的手法确立了随机误差的概率分布(即高斯分布),其结果成为数理统计发展史上的一块里程碑。
f(x)=12πσexp((xμ)22σ2)(2) f(x)=\frac{1}{\sqrt{2\pi}\sigma}\exp{\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)}\tag{2}
高斯的介入首先要从天文学界的一个事件说起。1801 年 1 月,天文学家朱塞普·皮亚齐发现了一颗从未见过的光度为8等的星在移动,这颗现在被称作谷神星(Ceres)的小行星在夜空中出现 6 个星期,扫过八度角后就在太阳的光芒下没了踪影,无法观测。而留下的观测数据有限,难以计算出他的轨道,天文学家也因此无法确定这颗新星是彗星还是行星,这个问题很快成了学术界关注的焦点。高斯当时已经是很有名望的年轻数学家了,这个问题引起了他的兴趣。高斯以其卓越的数学才能创立了一种崭新的行星轨道的计算方法,一个小时之内就计算出了谷神星的轨道,并预言了他在夜空中出现的时间和位置。1801 年 12 月 31 日夜,德国天文爱好者奥伯斯 (Heinrich Olbers, 1758-1840),在高斯预言的时间里,用望远镜对准了这片天空。果然不出所料,谷神星出现了!

高斯为此名声大震,但是高斯当时拒绝透露计算轨道的方法,原因可能是高斯认为自己的方法的理论基础还不够成熟,而高斯一向治学严谨、精益求精,不轻易发表没有思考成熟的理论。直到1809年高斯系统地完善了相关的数学理论后,才将他的方法公布于众,而其中使用的数据分析方法,就是以正态误差分布为基础的最小二乘法。那高斯是如何推导出误差分布为正态分布的?让我们看看高斯是如何猜测上帝的意图的。

姜还是老的辣

同样设真实值为θθx1,x2,xnx_1,x_2⋯,x_n分别为nn独立观测后的测量值,每次测量的误差为ei=xiθe_i=x_i–θ,假设误差eie_i的密度函数为 f(e)f(e),则测量值的联合概率为nn个误差的联合概率,记为:
L(θ)=L(θ;x1,x2,,xn)=f(e1)f(e2)f(en)=f(x1θ)f(xnθ)(3) \begin{aligned} L(\theta)&=L(\theta;x_1,x_2,\cdots,x_n)\\[1ex] &=f(e_1)f(e_2)\cdots f(e_n)\\[1ex] &=f(x_1-\theta)\cdots f(x_n-\theta) \end{aligned}\tag{3}
高斯直接取使L(θ)L(\theta)达到最大值的θ^\hat{\theta}作为θ\theta的估计值,即
θ^=argmaxθL(θ)(4) \hat{\theta}= \arg\max_{\theta} L(\theta)\tag{4}
现在我们把L(θ)L(\theta)称为样本的似然函数,而得到的估计值θ^\hat{\theta} 称为极大似然估计。高斯首次给出了极大似然的思想,这个思想后来被统计学家费希尔系统的发展成为参数估计中的极大似然估计理论。(最大似然估计是指:在已知样本结果的情况下,推断出最有可能使得该结果出现的参数的过程。也就是说最大似然估计一个过程,它用来估计出某个模型的参数,而这些参数能使得已知样本的结果最可能发生

数学家波利亚 (George Pólya, 1887-1985) 说过:“要成为一个好的数学家,……, 你必须首先是一个好的猜想家 (To be a good mathematician,…, you must be a good guesser)。” 历史上一流的数学家都是伟大的猜想家。高斯接下来的想法特别牛,他开始揣度上帝的意图,而这充分体现了高斯的数学天才。高斯把整个问题的思考模式倒过来:既然千百年来大家都认为算术平均是一个好的估计,那我就认为极大似然估计导出的就应该是算术平均!所以高斯猜测上帝在创世纪中的旨意就是:误差分布导出的极大似然估计 = 算术平均值。

然后高斯去找误差密度函数 ff以迎合这一点。即寻找这样的概率分布密度函数ff, 使得极大似然估计正好是算术平均θ^=x\hat{\theta}=\overline{x}。而高斯应用数学技巧求解了这个函数ff,并证明所有的概率密度函数中,唯一满足这个性质的就是:
f(x)=12πσex22σ2(5) f(x)=\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{x^2}{2\sigma^2}}\tag{5}
瞧,正态分布的密度函数 N(0,σ2)N(0,\sigma^2)被高斯他老人家给解出来了!

进一步,高斯基于这个误差分布的密度函数对最小二乘法给出了一个很漂亮的解释。对于最小二乘公式中涉及的每个误差eie_i, 由于误差服从概率分布N(0,σ2)N(0,\sigma^2) 则其对应是似然估计为:
L(θ)=i=1nf(ei)=1(2πσ)nexp{12σ2i=1nei2}(6) \begin{aligned} L(\theta) =& \prod_{i=1}^nf(e_i)\\[1ex]=&\frac{1}{(\sqrt{2\pi}\sigma)^n}\exp\left\{-\frac{1}{2\sigma^2} \sum_{i=1}^n e_i^2 \right\} \end{aligned}\tag{6}
而要使得L(θ)L(\theta)最大化,则必须同样使得i=1nei2\sum_{i=1}^ne^2_i取值最小,这就正好就是最小二乘法的要求了。(可以看出,高斯这种做法的初始动机仍旧是以算术平均作为一种“公理”;然后以此为基础作出假设找到一种符合人们常识的误差密度函数,即正太分布;接着高斯又提出了最大似然估计来推导得出了最小二乘法。但是其仍旧没有解决算术平均为何优良。)

高斯所拓展的最小二乘法成为了 19 世纪统计学的最重要成就,它在 19 世纪统计学的重要性就相当于 18 世纪的微积分之于数学。而勒让德和高斯的关于最小二乘法的发明权之争,成了数学史上仅次于牛顿、莱布尼茨微积分发明权的争端。相比于勒让德 1805 年给出的最小二乘法描述,高斯基于误差正态分布的最小二乘理论显然更高一筹,高斯的工作中既提出了极大似然估计的思想,又解决了误差的概率密度分布的问题,由此我们可以对误差大小的影响进行统计度量了。高斯的这项工作对后世的影响极大,而正态分布也因此被冠名高斯分布。

17、18 世纪科学界流行的做法,是尽可能从某种简单明了的准则 (first principle) 出发进行逻辑推导。高斯设定了准则“最大似然估计应该导出优良的算术平均”,并导出了误差服从正态分布,并且推导的形式上非常简洁优美。但是高斯给的准则在逻辑上并不足以让人完全信服,因为算术平均的优良性当时更多的是一个经验直觉,缺乏严格的理论支持。高斯的推导存在循环论证的味道:因为算术平均是优良的,推出误差必须服从正态分布;反过来,又基于正态分布推导出最小二乘法和算术平均,来说明最小二乘法和算术平均的优良性。这陷入了一个鸡生蛋蛋生鸡的怪圈,逻辑上算术平均的优良性到底有没有自行成立的理由呢?

解铃还须系铃人

高斯的文章发表之后,拉普拉斯很快得知了高斯的工作。拉普拉斯看到,正态分布既可以从抛钢镚产生的序列和中生成出来,又可以被优雅的作为误差分布定律,这难道是偶然现象?拉普拉斯不愧为概率论的大牛,他马上将误差的正态分布理论和中心极限定理联系起来,提出了元误差解释。他指出如果误差可以看成许多微小量的叠加,则根据他的中心极限定理,随机误差理所应当是高斯分布。而 20 世纪中心极限定理的进一步发展,也给这个解释提供了更多的理论支持。因此以这个解释为出发点,高斯的循环论证的圈子就可以打破。 估计拉普拉斯悟出这个结论之后一定想撞墙,自己辛辛苦苦寻寻觅觅了这么久的误差分布曲线就在自己的眼皮底下,自己却长年视而不见,被高斯占了先机。

至此,误差分布曲线的寻找尘埃落定,正态分布在误差分析中确立了自己的地位,并在整个 19 世纪不断的开疆扩土,直至在统计学中鹤立鸡群,傲世其它一切概率分布;而高斯和拉普拉斯的工作,为现代统计学的发展开启了一扇大门。本次要介绍的内容就到此结束,青山不改,绿水长流,月来客栈见!

引用

  • 详细内容参见(强烈推荐阅读):https://cosx.org/2013/01/story-of-normal-distribution-1/

更多内容欢迎扫码关注公众号月来客栈!
神说要有正态分布,于是就有了正态分布。