缘起:高尔顿的豌豆与回归的诞生
1885年的一个冬日午后,伦敦肯辛顿区的一间私人书房里,68岁的弗朗西斯·高尔顿爵士正对着一张密密麻麻的数据表格陷入沉思。这位维多利亚时代最杰出的科学家之一、英国皇家学会的传奇人物,此刻正在审视一份看似平凡的家族身高记录。他的手指沿着表格中的数字缓缓移动,眉宇间渐渐浮现出一种难以言喻的兴奋——他隐约感觉到,这些数字背后隐藏着一个自然界最基本的法则。
二十多年前,高尔顿在种植甜豌豆时偶然发现了一个奇怪的现象:那些从最大颗豌豆种子培育出来的植株,其后代的平均大小总是比父代要小;而从最小颗种子培育出来的植株,其后代的平均大小却比父代要大。这种现象仿佛冥冥之中有一股力量,将极端的个体拉回到某个"正常"水平。他在1877年将这一发现命名为"向均值的回归"(regression to the mean),这个后来被简称为"回归"的词汇,将永远改变科学的进程,也将成为机器学习这座大厦最初的基石之一。
要理解高尔顿这一发现的重要性,我们需要将目光投向19世纪中后期那个科学飞速发展的时代。达尔文的《物种起源》在1859年出版后,整个欧洲的知识界为之震动。自然选择理论不仅解释了物种如何演化,更在思想层面引发了一场革命:原来,生物界的规律可以通过系统的观察和推理来揭示,而非仅仅依赖宗教教义或哲学思辨。高尔顿正是这场思想革命的直接受益者——他是达尔文的表弟,从小就浸润在科学探索的氛围中,对用数据揭示自然规律抱有近乎狂热的好奇心。
高尔顿的研究兴趣广泛得令人惊叹。他早年从事气象学研究,建立了第一个天气预报系统;他发明了指纹鉴定技术,为现代刑侦科学奠定了基础;他对优生学的研究虽然在后来的历史中带有争议的阴影,但客观上推动了遗传学的早期发展。然而,在他所有的科学成就中,最具深远意义的无疑是关于遗传与变异的研究,而这一研究的起点,正是那个看似简单的豌豆实验。
在详细介绍高尔顿的实验之前,我们需要澄清一个常见的误解。高尔顿在1877年发表的研究中使用的豌豆有两类:甜豌豆(sweet peas,学名*Lathyrus odoratus*)和花园豌豆(garden peas,学名*Pisum sativum*)。甜豌豆的实验更加广为人知,这是因为它更好地展示了"向均值回归"的现象。实验的设计极具巧思:高尔顿从一位供应商那里获得了九组甜豌豆种子,每组种子的平均大小相近,但组内的变异程度不同——有些组的种子大小非常均匀,而有些组的种子大小差异很大。
他将每一组种子分别种植,然后测量收获的所有豌豆种子的平均大小。当他把这些数据绘制成图表时,一个清晰的规律浮现出来:从平均大小较大但变异也较大的那组种子培育出的后代,平均大小并没有达到父代的水平;而从平均大小较小的那组种子培育出的后代,平均大小则有所增加。换言之,极端的父代倾向于产生不那么极端的后代——这就是"向均值回归"的本质。
这个发现看似简单,但它揭示的却是统计学和遗传学中一个极其深刻的现象:高变异群体中的极端个体,其后代的平均值会系统性地向总体均值靠拢。这种现象并非因为遗传机制有任何"智能"或"目的性",而仅仅是因为统计学上的必然——极端值本身包含了更多的随机波动,当我们将父代选择为极端值时,实际上是选择了一个幸运地(或不幸地)获得了极端观测值的个体,而其后代则倾向于回归到更典型的水平。
高尔顿敏锐地意识到,这一现象不仅存在于豌豆实验中,很可能也适用于人类的各种特征。1885年,他将目光投向了人类最直观可测量的体质特征之一——身高。他收集了数百对父子身高的数据,将父亲的身高作为自变量,儿子的身高作为因变量,试图寻找两者之间的数量关系。当他用这些数据绘制散点图并拟合一条直线时,一个令人惊讶的发现呈现在眼前:这条直线的斜率小于1。
这是一个极其重要的数学发现。如果父亲的身高比平均身高高出1英寸,儿子身高比平均身高高出多少呢?按照直觉,很多人可能会认为也是1英寸,毕竟"虎父无犬子"嘛。但高尔顿的数据告诉我们,儿子的身高增幅通常只有0.5到0.6英寸——不到父亲增幅的一半。这就是回归效应的数学体现:儿子身高相对于均值的偏离程度,总是倾向于小于父亲身高相对于均值的偏离程度。高尔顿将这条拟合直线的斜率称为"回归系数"(regression coefficient),这个名字一直沿用至今。
为了更精确地理解这一现象背后的数学原理,我们需要引入几个关键概念。首先是协方差(covariance),它衡量的是两个变量一起变化的趋势。如果高个子父亲倾向于有高个子儿子,那么父亲身高与儿子身高之间就存在正的协方差。协方差的计算公式是:
$$\text{Cov}(X, Y) = \frac{1}{n}\sum_{i=1}^{n}(X_i - \bar{X})(Y_i - \bar{Y})$$
其次是相关系数(correlation coefficient),它是对协方差的标准化处理,取值范围在-1到1之间。相关系数为1表示完全正相关,为-1表示完全负相关,为0表示完全不相关。高尔顿计算得到的人类父子身高相关系数大约为0.5,这意味着两个变量之间存在中等程度的正相关。
更重要的是回归直线的概念。假设父亲身高的均值为$\bar{x}$,儿子身高的均值为$\bar{y}$,两者之间的相关系数为$r$,父亲身高的标准差为$\sigma_x$,儿子身高的标准差为$\sigma_y$,那么儿子身高$Y$对父亲身高$X$的回归方程可以表示为:
$$Y - \bar{y} = r \cdot \frac{\sigma_y}{\sigma_x} \cdot (X - \bar{x})$$
其中,$r \cdot \frac{\sigma_y}{\sigma_x}$就是回归系数。当我们用标准化变量(均值为0、标准差为1)来表达时,回归方程简化为:
$$Y' = r \cdot X'$$
这里的回归系数就是相关系数$r$本身。由于$|r| \leq 1$,我们立刻可以看出,标准化后的儿子身高偏离均值的程度,永远不会超过标准化后的父亲身高偏离均值的程度——这就是回归效应的数学本质。
高尔顿在1889年出版的《自然遗传》(*Natural Inheritance*)一书中详细阐述了他的发现。他在书中写道:"一种奇怪的自我修正平衡机制在起作用,使得整个种族趋向于某种中等类型,而不管个体的极端程度如何。"这段话虽然带有19世纪科学家特有的精英主义色彩,但它准确捕捉到了回归效应的核心特征:从统计学角度看,极端现象之后往往会出现不那么极端的结果,这并非因果关系中的某种神秘力量,而仅仅是概率规律的自然体现。
然而,高尔顿的贡献远不止于提出"向均值回归"这一概念。他实际上开创了一种全新的研究范式:用定量方法研究遗传规律。在此之前,人们对遗传的认识大多停留在定性描述和主观猜测的层面。高尔顿则坚持,只有通过系统收集数据、建立数学模型、验证理论预测,才能真正理解自然界的运行规律。这种方法论上的革新,为后来统计学的诞生和发展奠定了基础,也为现代机器学习提供了方法论上的启示。
让我们暂时从历史叙事中抽离,思考一下高尔顿的发现对于我们理解机器学习意味着什么。机器学习的核心问题之一,是如何从历史数据中学习规律,并对新数据进行预测。高尔顿在19世纪末面对的问题,从本质上说与此并无不同:他拥有父亲身高的历史数据,希望预测儿子身高的大致范围;他拥有豌豆种子大小的数据,希望理解后代与亲代之间的关系。两者都是从已知的样本出发,推断未知的规律,并据此做出预测——这正是统计学习和机器学习的基本逻辑。
具体来说,高尔顿的工作涉及了机器学习中几个核心的概念和方法。首先是监督学习的基本框架:高尔顿用父亲的身高(自变量)来预测儿子的身高(因变量),这与今天我们用历史数据训练模型、用模型预测新数据的流程如出一辙。其次是回归分析的技术:高尔顿拟合的回归直线,本质上就是今天线性回归模型的雏形。再次是正则化的思想雏形:回归系数小于1这一事实,实际上反映了一种对极端预测的"惩罚"——我们不会过度相信极端的父代信息,而是会将预测值拉向均值,这正是防止过拟合的朴素思想。最后是泛化能力的考量:高尔顿真正关心的不是样本内的拟合效果,而是模型能否捕捉到跨代遗传的稳定规律,这要求模型具有一定的泛化能力。
为了更直观地理解这些概念与现代机器学习的联系,让我们用Python来模拟一下高尔顿的数据,并实际运行一个简单的线性回归分析:
```python import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression
模拟高尔顿的父子身高数据(基于19世纪英国男性身高分布)
np.random.seed(42) n_samples = 200
假设父亲身高的均值约为170cm,标准差约为7cm
father_height = np.random.normal(170, 7, n_samples)
儿子身高 = 0.5 * (父亲身高 - 均值) + 均值 + 噪声
回归系数0.5体现了"向均值回归"的效应
son_height = 170 + 0.5 * (father_height - 170) + np.random.normal(0, 5, n_samples)
使用线性回归拟合
X = father_height.reshape(-1, 1) y = son_height model = LinearRegression() model.fit(X, y)
输出结果
print(f"回归系数(斜率): {model.coef_[0]:.4f}") print(f"截距: {model.intercept_:.4f}") print(f"相关系数: {np.corrcoef(father_height, son_height)[0,1]:.4f}") ```
运行这段代码,我们通常会得到回归系数约为0.5的结果,这正是高尔顿在19世纪末发现的"向均值回归"效应。这个简单的模拟实验说明,虽然我们已经有了更加精密的统计工具和机器学习算法,但高尔顿发现的基本规律至今依然成立。
高尔顿的工作还揭示了统计学中一个容易被忽视但至关重要的洞见:样本选择会影响我们的推断。如果我们仅仅选择那些身高特别高的父亲来研究,那么预测的儿子身高应该比父亲矮一些;反之,如果仅仅选择身高特别矮的父亲,预测的儿子身高应该比父亲高一些。这不是因为存在某种神秘的"回归力量",而仅仅是因为我们已经用非随机的方式选择了样本——我们选择的是极端个体,而极端个体本身往往是极端环境和运气共同作用的结果,其后代很难完全复制这种极端条件。
这个洞见在今天的大数据时代依然具有重要的现实意义。当我们分析用户行为数据时,如果样本本身就是通过某种筛选机制得到的(比如只有活跃用户的数据、只有付费用户的数据),那么基于这些数据训练的模型在推广到全量用户时可能会产生系统性偏差。高尔顿在19世纪末发现的问题,在21世纪的人工智能应用中依然以不同的形式存在。
现在,让我们将目光投向更广阔的历史背景,看看高尔顿的研究如何与更宏大的科学叙事相连接。在高尔顿之前,统计学主要关注的是描述性任务——如何总结和呈现已有的数据。高尔顿的工作则开创了推断统计学的传统:如何从样本推断总体,如何评估我们的推断有多可靠,如何在不确定性中做出决策。这一转向的重要性再怎么强调都不为过——它将统计学从一门描述性的学问转变为一门推断性的学问,而推断性恰恰是现代机器学习和人工智能的核心能力。
从优生学到卡尔·皮尔逊的统计学革命,从罗纳德·费希尔的实验设计到埃贡·伯利的因果推断,高尔顿的工作如同一颗种子,催生了20世纪整个统计科学的发展图景。这些后来的发展远远超出了高尔顿本人的想象——费希尔的显著性检验、皮尔逊的卡方检验、计量经济学中的联立方程模型、时间序列分析中的自回归方法——所有这些都可以追溯到高尔顿最初对豌豆和身高的研究。
同时,高尔顿的工作也暴露了维多利亚时代科学的局限性。作为一名坚定的优生学倡导者,高尔顿相信可以通过控制人类繁殖来"改善"人口质量,这在后来被纳粹德国利用,造成了人类历史上最黑暗的悲剧之一。今天,当我们回顾这段历史时,应该明确认识到:高尔顿在统计学和遗传学上的贡献是客观存在的,但他的优生学观点是错误和有害的。科学的发展应该服务于人类的福祉,而非成为歧视和压迫的工具。这一教训在人工智能快速发展的今天依然值得深思——技术本身没有价值观,但使用技术的方式有,我们应该始终保持对技术滥用的警惕。
让我们再次回到1885年高尔顿书房里的那张数据表格。他当时不知道的是,他即将发现的"向均值回归"只是冰山一角。沿着这条思路深入下去,人们将逐渐认识到:不仅儿子的身高会向均值回归,豌豆的大小会向均值回归,几乎所有受到随机因素和遗传因素共同影响的特征都会表现出类似的规律。这种普遍性使得回归分析成为科学研究中最有用的工具之一——从经济学中的供需关系到心理学中的测量误差,从医学中的治疗效果到金融学中的资产收益率,回归分析无处不在。
进入20世纪后半叶,随着计算机技术的发展,回归分析和其他统计方法得到了极大的扩展和深化。广义线性模型允许我们处理二元结果和计数数据;混合效应模型可以分析具有层次结构的数据;惩罚回归方法如LASSO和岭回归可以处理高维数据和进行变量选择;分位数回归可以刻画条件分布的不同分位点;非参数回归和半参数回归放宽了对函数形式的假设。所有这些发展,都可以视为对高尔顿最初洞见的丰富和深化。
而当21世纪的机器学习浪潮席卷而来时,回归分析又获得了新的生命力。线性回归作为最基础的模型之一,几乎出现在每一个机器学习课程的起点。更重要的是,回归思想——从数据中学习函数关系、预测新数据的值——构成了机器学习范式的核心。无论是支持向量机的最大间隔思想,还是神经网络的层次表示,还是梯度提升树的集成学习,其根本目标都可以概括为:从历史数据中提取有意义的规律,并据此对新数据进行预测。从这个角度看,高尔顿在1885年提出的核心问题——"如何从数据中学习规律并做出预测"——至今依然是机器学习研究的核心问题。
现在,让我们展望一下本书将要展开的旅程。高尔顿的回归分析只是机器学习智慧之旅的起点。这条道路上还有许多其他的里程碑:卡尔·皮尔逊和费希尔将统计推断系统化,使得我们可以在小样本情况下评估结论的可靠性;丹尼尔·卡尔纳鲁维克和亚伯拉罕·瓦尔德将决策论引入统计,形成了贝叶斯统计和频率派统计两大流派;亚瑟·塞缪尔在下棋程序中首次使用了"机器学习"这个词;唐纳德·赫布提出了著名的Hebb学习规则;弗兰克·罗森布拉特发明了感知机,开启了神经网络研究的序幕;杰弗里·辛顿提出了反向传播算法,使得训练深层神经网络成为可能;扬·勒昆等人发明的卷积神经网络彻底改变了计算机视觉领域;约书亚·本吉奥、扬·勒昆和杰弗里·辛顿获得了2018年图灵奖,表彰他们在深度学习领域的开创性贡献。
每一步进展都建立在前人工作的基础之上,同时又为后来者提供了新的工具和思路。这种知识积累的过程本身就体现了一种"向均值回归"的模式——极端的创新往往会带来一定程度的回归,但正是这种回归使得知识体系得以稳定和沉淀,为下一次突破积蓄能量。机器学习的发展史告诉我们,革命性的进步往往不是凭空出现的,而是在长期积累的基础上,在适当的时机以适当的方式呈现出来。高尔顿在1885年播下的种子,经过一百多年的生长,终于在今天开花结果,长成了参天大树。
在结束本章之前,让我们再深入思考一下高尔顿的发现对于机器学习实践的指导意义。回归效应告诉我们,预测值往往应该比极端的观测值更加"保守"。在机器学习中,这一原则体现为多种技术手段。正则化通过对模型参数施加惩罚,防止模型过于复杂和过度拟合训练数据;集成学习通过组合多个模型的预测,降低单一模型的预测偏差;交叉验证通过反复在不同的数据子集上进行训练和测试,评估模型的泛化能力;早停(early stopping)在验证集上的性能开始下降时停止训练,防止过拟合。所有这些技术,在某种意义上都可以被视为"向均值回归"思想的工程化实现。
另一个值得注意的教训是关于因果关系和统计相关的区别。高尔顿发现父子身高之间的统计关联,但他很清楚,这种关联并不意味着身高本身会"直接传递"。儿子从父亲那里继承的不是某个精确的身高数值,而是影响身高的基因以及影响身高的环境因素,这些因素的复杂相互作用才最终决定了儿子的身高。在今天的大数据分析中,我们同样需要警惕:仅仅因为两个变量在数据中表现出相关性,并不能直接得出因果关系的结论。随机对照实验、工具变量方法、倾向得分匹配、断点回归设计——这些因果推断方法的出现,正是为了在观察性研究中尽可能地识别因果效应。
高尔顿的豌豆实验也提醒我们,数据的收集方式会影响我们能够发现什么样的规律。他选择甜豌豆而非其他植物,是因为甜豌豆是自花授粉的,这使得每一组种子在遗传上相对一致;他在实验中使用了九组不同变异程度的种子,这使得他能够观察到"向均值回归"的强度与变异程度的关系。这些看似简单的实验设计决策,实际上体现了一种深刻的科学思维:好的实验设计应该能够将我们感兴趣的现象从背景噪声中分离出来。
在机器学习项目中,数据收集和预处理往往占据了大部分的工作量。高尔顿的实验提醒我们,在收集数据之前,应该首先明确我们想要回答什么问题,以及什么样的数据能够帮助我们回答这个问题。同时,我们还需要考虑数据是否存在选择性偏差、是否具有代表性、是否能够推广到我们关心的目标人群。这些在数据科学领域被称为"数据质量"的问题,在高尔顿的时代就已经被敏锐的科学家注意到了。
让我们用一个具体的例子来说明这些问题在现代机器学习中的表现。假设一家医院想要开发一个预测病人再入院风险的模型。他们使用了医院电子病历系统中的历史数据来训练模型,模型在训练数据上的准确率很高。然而,当模型被部署到实际应用中时,发现预测效果远不如预期。调查后发现,问题出在数据的选择偏差上:医院的电子病历系统只包含了实际就诊的病人,而那些有风险但最终没有来就诊的病人从未被记录。在统计学术语中,这是一个典型的"删失"(censoring)问题——我们观察到的数据并不能完全代表我们想要研究的总体。
高尔顿如果在世,一定会对此类问题感到熟悉。因为他当年在分析人类遗传数据时,也面临着类似的选择性问题:他的数据来源于英国特定地区、特定阶层的人群,不一定能够代表全人类的情况。他在解释自己的结论时也承认了这种局限性。这种对数据局限性的清醒认识,是高尔顿作为一名科学家的可贵品质,也是我们在应用机器学习时应该学习的。
回顾高尔顿的研究生涯,我们可以总结出几个对机器学习实践者依然有价值的原则。第一,从具体问题出发。高尔顿之所以能够发现回归效应,是因为他对遗传问题有具体、深入的了解,而不是泛泛地研究"变量之间的关系"。第二,重视实验设计。他选择甜豌豆、设置不同的变异组、收集大量数据——这些设计决策使得他的实验能够有效地回答他