回归分析第6讲:决定系数 R² 与调整 R²——解释力到底怎么看?
本讲主要内容:
- R² 是什么、它能说明什么
- 为什么 R² 高 ≠ 模型就好
- 为什么要发明 Adjusted R²
前面几讲我们已经讲过斜率 β₁ 的意义,但回归结果中还有一个更醒目的指标:
📌 R²(决定系数)
很多人看到回归输出,第一眼就是看 R²
R² = 0.85,哇!模型很强!
R² = 0.32,好低,是不是模型无效?
事实上并不是这么简单,本讲我们回答三件事:
1)R² 到底在衡量什么?
2)R² 为什么有时会骗人?
3)为什么需要调整后的 R²(Adjusted R²)?
【一】R² 是什么?
先给一句最简洁的定义:
R² = 模型解释了结果变量中多少比例的变异。
如果一个回归的 R² = 0.70
意味着:
模型中 X 变量解释了 Y 变化的 70%;
剩下 30% 被随机误差或模型没考虑到的因素决定
所以,R² 不是看模型预测准不准,
而是看:
模型能解释多少“为什么不同的人/单位之间结果会不一样”。
🔍 一个非常直观的例子:
研究班上的学生英语成绩(Y)与每天学习时长(X)的关系:
学习时间不同 → 成绩差异更明显 → R² 上升
学习时间差不多、成绩没规律 → R²下降
R² 高通常意味着:
- 学习时间确实重要
- 成绩的差别很大一部分来自勤奋程度
R² 低可能说明:
- 成绩更多受能力、基础、天赋决定
- 单靠学习时间解释不了太多
R² 可以告诉我们:模型说服力有多强?
但不能告诉你:模型有没有写错、变量有没有遗漏。
【二】R² 的最大误区:变量加得越多 → R² 越高
这是回归初学者最常遇到的陷阱:
无论加什么变量,哪怕是没有意义的变量, R² 都会升高或不变,不会下降。
也就是说:
R² 不能用于判断模型是不是更好
它只能看“现在解释得多少”,不能比较模型质量
例如:
模型A:
Y = β₀ + β₁* 学习时长 → R² = 0.45
模型B:
Y = β₀ + β₁* 学习时长 + 性别 +身高 +鞋码 → R² = 0.50
你不能说 模型B 比模型 A 好,因为也许鞋码完全不能解释成绩,只是凑热闹。但 R² 的值仍然会机械升高,它不会告诉你这是一个无效变量。
这就是必须引入 Adjusted R²(调整决定系数)的原因。
【三】为什么需要 Adjusted R²?它到底调整了什么?
一句话总结:
Adjusted R² 会惩罚那些“无贡献的变量”,让我们看到模型质量的真实提升,而不是堆砌变量。
当你新增变量时:
- 如果变量真的有用 → Adjusted R² 会升高
- 如果变量只是摆设 → Adjusted R² 会下降
- R² 则永远只会升不会降(缺乏判断力)
所以实际应用中:
- 如果目的是比较模型哪个更好 → 看 Adjusted R²
- 只是评价单个模型 → 看 R² 即可
非常多论文在模型比较时忽视这一点,导致出现 R² 很高、结论却完全站不住脚的情况。
例如:
我们仍然以英语学习函数为例,在回归方程中,自变量是学习时长,因变量是英语成绩,我们以全班45位同学的数据进行样本回归,得到的结果如下:
R² = 0.32,Adjusted R² = 0.30
说明模型解释了约 30% 左右的成绩差异。
接着我们随意加入一个新的自变量,比如:是否喜欢喝咖啡(0/1),得到结果如下:
| 模型 | 自变量数量 | R² | 调整后 R² |
|---|---|---|---|
| 模型1:只含学习时长 | 1 | 0.32 | 0.30 |
| 模型2:额外加入“爱喝咖啡” | 2 | 0.35 | 0.29 |
我们会看到:
- R² 上升了,因为回归中增加了新的变量,所以它一定会上升;
- 但是Adjusted R² 反而下降,给了我们一个清晰信号:
喝咖啡其实并不能解释成绩差异,它只是让原始模型变得更为“复杂”而已。
【四】R² 高是否一定好?R² 低是否一定差?
绝对不能有这样的想法,因为:
📌 R² 高的常见场景
- 高度稳定、规律明确的系统
- 自然科学物理模型(电流、电阻、气压)
- 企业市值与盈利能力
📌 R² 低但模型仍十分有价值
- 社会科学、教育、心理学…
- 人类行为受太多因素影响
- 一个变量如果能解释 10% ,已经很强大
例如:
- 影响消费的因素可能很多: 收入、家庭结构、文化、信贷环境、情绪…
- 如果你只使用了一个解释变量 → R²= 0.12, 也属于正常情况
低 R² 不代表模型没意义
高 R² 也不能证明你建模正确。
【五】本讲小结
R²,是解释结果变异的比例,它的值越高 ≠ 模型对;模型中的变量越多,它的值就越高。
Adjusted R²,它能够惩罚无效变量,能更公平比较模型,更多是用于多个模型选择而非单模型评价。
记住:
- R² 看解释力,Adjusted R² 看模型好坏。
- R² 高不代表结论对,R²低不代表没价值。