思维模型格栅

计算机与信息 · 7/7

过拟合Overfitting

把旧数据里的偶然细节当成规律,会让过去的高分变成未来的失分。

谷歌用搜索记录贴近了历史流感曲线,却未能可靠捕捉一场新疫情。2008 年,美国,杰里米·金斯伯格等研究者筛选搜索词组合,让估计曲线贴近疾控中心的历史记录。连“高中篮球”也因赛季与流感季节重叠而表现出关联,团队剔除了这类词。2009 年春季,H1N1 流感暴发,原版系统在第一波疫情中低估了流感样疾病活动。2011 年的评估未能确定失准的具体原因,季节不同、搜索行为和就医行为变化都在候选解释之列。这次落差暴露了贴合历史与预测新情境之间的距离。

为什么成立

贴合每个旧点,会把偶然偏差也学进去

三次测量得到的点接近一条直线,却有一个点因仪器误差偏高。直线会留下误差;允许弯曲的曲线能穿过全部三个点。曲线拿到满分,是因为它连那次测量偏差也照收了。把样本中的偶然细节学成可重复的规律,就是过拟合。

观测值可以写成:

这里, 是稳定关系, 是这次观测里的随机偏差。白话说,记录里既有值得学的关系,也有下一次不会原样出现的细节。模型追着这些细节调整后,旧数据上的误差下降,新数据上的误差反而上升。

试过多少条规则,比最后留下几条更关键

反复筛选也能让简单规则过拟合。从大量指标、时间窗口和例外中挑冠军,就给了偶然吻合许多胜出的机会。最后只剩一句简洁规则,也藏着此前所有尝试。人给过去编解释时,同样能通过不断补充条件,把任何结果讲得通。

没参与修改的数据,才能检验预测本领

**检验规律,要看它在未参与挑选和修改的数据上表现怎样。**先用一部分数据建立规则,再用另一部分选择方案,最后留下独立数据验收。预测未来时,验收数据应晚于建模数据。反复查看验收结果再改规则,就把验收题变成了练习题。限制参数、减少临时例外,都是让模型少追逐偶然细节;是否有效,仍由新数据上的成绩决定。

出处

过拟合来自统计建模,后来成为机器学习的核心问题,没有公认的单一提出者。1974 年,统计学家默文·斯通系统研究用交叉验证选择和评估预测规则。经典演示是多项式拟合:高阶曲线穿过带噪声的训练点,却在新点上输给更简单的曲线。

换个领域看

投资

黄油解释股市

大卫·莱因韦伯用农业数据展示了漂亮回测有多容易拼出来。他在 2007 年发表的文章中,用孟加拉国黄油产量拟合标普 500 的历史点位,再加入其他农业变量,提高拟合程度。这项演示揭示了一个陷阱:在同一段历史里不断挑变量,能把荒唐组合包装成投资依据,却没有提供独立的未来预测成绩。

商业

促销规则越补越细

运营经理若围着同一批订单反复补条件,就会把促销规则改成旧顾客的名单。他分析上月订单,先选周五发券,再加上年龄、城市和浏览次数,直到每次购买都能解释。规则上线后,新顾客却不买账。更可靠的做法是先固定规则,再让新一批顾客随机收到或不收到券,比较新增订单。

个人生活

把巧合写成习惯

只用几次顺利经历总结习惯,会把当天的巧合写进日常安排。求职者复盘三次成功面试,发现自己都穿了蓝衬衫、喝了咖啡,还提前十分钟到场,于是把三件事列成必胜流程。他可以保留有理由支持的准备动作,并提前记录后续面试的做法与结果,让新经历检验旧结论。

遇事时问自己

  1. 这条规律是在解释已经知道的结果,还是提前预测尚未发生的结果?
  2. 为找到它,我试过多少指标、时间窗口和例外条件?
  3. 我有没有留下一批完全没参与选规则的数据,最后只验收一次?
  4. 换到后续时期或另一批人,这条规则还能胜过一个简单的基准吗?
  5. 删掉几条临时补上的条件后,新数据上的成绩会变差,还是只有旧成绩变差?

边界与误用

过拟合针对的是从有限样本推向新情况;如果任务只是忠实记录已经发生的事,保存每个细节就是目标。复杂也不等于过拟合:数据充分、约束合适时,复杂模型能预测得更准;某些大模型的预测误差还会随规模继续下降。预测失灵也有另一种来源:原本稳定的关系被新制度、新人群或新环境改变了。前者学进了旧样本的偶然偏差,后者遇到了规则变化。最常见的误用,是看到复杂模型就要求删减,却始终不比较它们在新数据上的成绩。

练一练

工厂工程师用过去八周的记录,试了六百多种温度、班次和设备组合,找出一条很短的规则:夜班且室温超过26℃时,零件容易报废。它在这八周里比原有预警规则准得多,还没用于后续生产。

哪种判断最站得住?

一位投资者用前四年的行情开发交易策略,把第五年留作验收。他每看一次第五年的收益,就调整一次参数,二十轮后终于超过指数。现在,他准备据此投入资金。

接下来哪一步最能检验这项优势?

地方档案馆把一批老照片数字化。修复软件能自动去掉斑点,但有些斑点其实是原件上的批注和印章。项目要求忠实保存每张原件,供研究者日后查阅。负责人主张删掉这些难以归类的细节,让整批照片呈现更统一的样式。

哪种判断最站得住?