统计学进阶 · 拟合与残差

图表上那条趋势线
到底在优化什么?

复习时间越长,分数越高——散点大致往上走。
画一条直线「概括」这种关系,谁说了算?

向下探索
第一步 · 现象

散点图里,总有人会画一条线

1 复习时间与考试成绩

班里 8 个同学各自报了「本周复习小时数」和「数学小测分数」。点在图上大致从左下往右上——直觉是:练得多,分往往更高。

老师或新闻稿接下来常做一件事:穿过这些点画一条直线,叫「趋势线」「拟合线」,用来概括「平均来说,多练 1 小时大概多几分」。

2 生活里到处都是

广告投入 vs 点击量、身高 vs 体重、气温 vs 冰淇淋销量——只要两件事一起变,就有人画线、算斜率、预测「再多投一点会怎样」。

但线可以画很多种:连第一个点和最后一个点?用眼睛「差不多」?还是有一套统一规则?这就是回归要回答的事。

核心问题

给定一堆散点,哪一条直线算「最合适」?「合适」又是什么意思?

第二步 · 概念

拟合、预测与残差

1 线性回归在干什么

回归(regression)在这里的意思很朴素:找一条(通常先假设是直线)来代表 x 与 y 的大致关系。

ŷ = a·x + b
ŷ(读作 y 帽)是直线上对应 x 的预测值;a 是斜率,b 是截距

真实数据很少正好落在一条直线上——每个点都有自己的真实 y,和直线上的预测 ŷ之间会有差距。

2 残差:差了多少

某个点上,残差(residual)= 真实值 − 预测值 = y − ŷ。在图上看,就是竖直方向从点到直线的距离(有正有负)。

残差大 → 这条线在这个点上猜得偏;把所有点的残差整体看小,就是「拟合得好」的直觉来源。

3 最小二乘:把误差平方再相加

最常用的规则叫最小二乘(least squares):让残差平方的和尽量小。

贴合分 SSE = 把每个点的「竖直偏差」平方后加总
偏差 = 真实 y − 直线预测值。偏得越远,平方罚得越重。SSE 越小,线整体越贴点云(人话:贴合分越低越好)

为什么平方而不是直接加绝对值?平方让「偏得很远」的点更醒目,数学上也更好算——和前面「标准差里用平方」是同一族思路。

第三步 · 为什么

「最合适」可以量化

1 瞎连 vs 拟合线

瞎连:首尾两点

把最左、最右两个点一连——简单,但中间点可能离得很远,SSE 往往很大。

最小二乘拟合

让全体点的平方误差之和最小——兼顾每一个点,不是只照顾两端。

下面 Demo 里可以切换两种线,直接比 SSE——数字不会骗人。

2 斜率在说什么

拟合得到 ŷ = a·x + b 后,斜率 a 回答:x 每增加 1 个单位,y 平均变化多少。

复习 1 小时多 3.5 分、每多投 1 万广告多 200 次点击——都是同一套读法。注意:这是相关意义上的平均趋势,不等于因果(那又是另一篇的话题)。

一句话

回归 = 用一条简单曲线(这里先讲直线)压缩散点信息;最小二乘 = 用 SSE 这个分数选出「整体最贴」的那条线。

第四步 · 常见误解

别踩这些坑

1 「有拟合线 = 有因果关系」

线只描述一起怎么变,不证明 x 导致 y。冰淇淋销量和溺水人数也能拟合得很好——夏天才是幕后推手。

2 「直线穿过的点越多越好」

故意让线穿过某几个「重要点」、忽略其余,是手动画线的毛病。最小二乘看的是全体残差,不是数穿过几个点。

3 「SSE 小 = 预测一定准」

SSE 小说明对现有这批点贴得紧;对新数据是否管用,还要看关系是否稳定、有没有漏掉关键变量、样本是否代表总体。

记住:回归线是简化模型,不是真理。先看散点形状是否像直线,再谈斜率和预测。
第五步 · 互动演示

拖点看拟合线与残差

你可以试试:切换预设数据或拖动散点,观察最小二乘拟合线如何变化;勾选「残差竖线」看每个点的 y − ŷ;再对比「瞎连首尾」与「拟合线」的 SSE——谁更贴全体点云。

数据点(可拖) 最小二乘拟合线 瞎连(首尾两点) 残差竖线
拖动蓝点 · 拟合线实时更新

最小二乘 · SSE

ŷ = —

瞎连首尾 · SSE

首尾连线 · SSE 通常更大

想看工程实现? 本站机器学习栏目有 《线性回归详解》——从梯度下降到代码实现;本篇只建立拟合与残差的直觉。
总结

趋势线背后,是在最小化误差

回归

用简单函数(如直线)概括 x 与 y 的关系,便于读斜率、做预测。

残差

真实 y 减预测 ŷ;每个点猜偏多少,竖直方向一眼可见。

最小二乘

选使 Σ(y−ŷ)² 最小的直线——全体点一起投票,不是只连两端。

别过度解读

拟合好 ≠ 因果成立;外推新情况前,先看数据是否代表、关系是否线性。

找一条最合适的线
= 让残差平方和尽量小
← 统计系列 返回首页