线性回归导论
欢迎来到 Further Statistics 2 (进阶统计学 2) 的第一章!别担心过去是否觉得统计学枯燥乏味;线性回归 (Linear Regression) 才是我们真正开始运用数据对现实世界进行预测的地方。
简单来说,线性回归就是在一组数据点中找到“最佳拟合”直线的艺术。想象一下,你正尝试根据房屋面积来预测房价。你手头有一堆数据点,而你希望画出一条尽可能贴近所有点的直线。这就是线性回归!在本章中,我们将学习如何精确计算这条直线,更重要的是,如何判断这条直线是否真的具有参考价值。
你知道吗?“回归 (Regression)”一词由 Francis Galton 在 19 世纪提出。他当时观察到,身材非常高大的父母,其子女的身高往往会比父母矮一点——即向平均身高“回归 (regressing)”!
1. 最小二乘法回归线 (The Least Squares Regression Line)
在标准 A Level 数学中,你已经学过了最佳拟合线。在 Further Mathematics (进阶数学) 中,我们使用一种称为最小二乘法 (Least Squares) 的特定方法来找出最准确的直线。这是针对 y 对 x 的回归,当我们想通过自变量 (\(x\)) 来预测因变量 (\(y\)) 时,就会用到它。
什么是“最小二乘法”直线?
想象你的数据点就像是在罐子里盘旋的萤火虫。你想将一块薄玻璃板(即回归线)滑入罐子中,使其处于萤火虫的正中间。
对于任何一个点,实际数据点与直线之间都存在一个垂直距离。这个距离称为残差 (residual)。有些点在线上方(正残差),有些则在线下方(负残差)。为了找到“最佳”直线,我们将所有这些距离进行平方(将其变为正值),然后把它们加起来。而“最小二乘法”直线就是使这个平方和 (sum of squares) 达到最小值的直线。
回归方程式
\(y\) 对 \(x\) 的回归线方程式写为:
\(y = a + bx\)
要计算系数 \(a\) 和 \(b\),我们使用以下标准公式:
- 计算斜率 (\(b\)): \(b = \frac{S_{xy}}{S_{xx}}\)
- 计算截距 (\(a\)): \(a = \bar{y} - b\bar{x}\)
快速温习:记得先前统计学学过的:
\(S_{xx} = \sum x^2 - \frac{(\sum x)^2}{n}\)
\(S_{xy} = \sum xy - \frac{(\sum x)(\sum y)}{n}\)
\(\bar{x}\) 和 \(\bar{y}\) 分别是 \(x\) 和 \(y\) 数值的平均值。
步骤指南:
1. 计算总结统计量 (\(\sum x, \sum y, \sum x^2, \sum xy, n\))。
2. 找出 \(S_{xx}\) 和 \(S_{xy}\)。
3. 先找出 \(b\)(下一步要用到它!)。
4. 找出平均值 \(\bar{x}\) 和 \(\bar{y}\)。
5. 将这些数值代入 \(a\) 的公式中。
6. 写下最终方程式:\(y = a + bx\)。
避免常见错误:务必先计算 \(b\),再计算 \(a\)。如果你尝试反过来做,你会发现卡住了,因为 \(a\) 的公式需要用到 \(b\) 的数值!
重点总结:最小二乘法回归线将数据点到直线的垂直距离(残差)的平方和减至最小。
2. 理解残差 (Understanding Residuals)
如前所述,残差 (residual) 就是特定数据点的“剩余部分”或误差。它是实际发生值与我们直线预测值之间的差额。
残差公式
对于任何特定点 \((x_i, y_i)\),残差 \(e_i\) 的计算方式为:
\(e_i = y_i - (a + bx_i)\)
简单来说:残差 = 观测值 - 预测值。
- 如果残差为正值,实际数据点在直线上方(模型低估了)。
- 如果残差为负值,实际数据点在直线下方(模型高估了)。
- 如果残差为零,则该点正好落在直线上。
为什么我们需要关注残差?
残差就像是你的数学模型的“健康检查”。通过观察残差,我们可以判断这条直线是否真的适合这些数据。
记忆小撇步:把回归线当作减肥计划,把数据点当作你的实际体重。残差就是减肥计划预测你的体重与体重计显示实际重量之间的差异。如果残差很大,你可能需要一个更好的计划!
重点总结:残差告诉我们,对于每个个别数据点,我们的预测偏差有多大。
3. 残差平方和 (Residual Sum of Squares, RSS)
单个残差告诉我们单个点的情况,而残差平方和 (RSS) 则告诉我们这条线对整组数据的拟合程度。
RSS 是“最小二乘法”努力使其最小化的数值。RSS 越小,说明直线对数据的拟合效果越好。
RSS 公式
在考试中,你不需要推导它,但你必须能够使用这个标准公式进行计算:
\(RSS = S_{yy} - \frac{(S_{xy})^2}{S_{xx}}\)
实用提示:你可能已经注意到 \(\frac{(S_{xy})^2}{S_{xx}}\) 实际上等于 \(b \times S_{xy}\)。因此,你也可以这样思考:
\(RSS = S_{yy} - bS_{xy}\)
快速温习框:
RSS 低:点非常接近直线,预测可能很准确。
RSS 高:点分散在离直线较远的地方,预测可能不可靠。
重点总结:RSS 是一个单一数值,总结了回归线的总“误差”。数值越小越好!
4. 模型评估与改良
我们“能”计算出一条回归线,并不代表我们“就应该”使用它。我们利用残差来检查线性模型是否合理。
检查“合理性”
如果你将残差绘制在图表上(即残差图 residual plot),你应该寻找的是随机散布 (random scatter)。
- 拟合良好:残差在零线上下随机散布,没有明显的形状。这意味着线性模型是合适的。
- 拟合不良(非线性):如果残差呈现“U”形或曲线状,则表示真实关系并非直线,可能更适合用二次或指数曲线。
- 离群值 (Outliers):与其他点相比,残差极大的点就是潜在离群值。这是模型出现严重偏差的点。
改良模型
如果发现模型效果不佳,我们可以透过以下方式改良 (refine):
- 移除离群值:如果某个数据点是人为错误(例如实验报告中的打字错误),移除它将改变 \(a\) 和 \(b\),并可能减少 RSS。
- 更换模型:如果残差显示出某种规律,我们可能需要进行数据转换(这将在其他章节介绍),而不是使用简单的线性回归。
模型评估总结:
- 利用残差来找出离群值。
- 利用残差图来检查直线是否为正确的选择。
- 利用 RSS 来比较不同的模型(通常 RSS 较低者较佳)。
重点总结:务必检查你的残差!它们讲述了单靠回归方程式无法呈现的故事。
恭喜!你已经掌握了 Further Statistics 2 中线性回归的核心概念。继续练习那些 \(S_{xx}\) 和 \(S_{xy}\) 的计算,很快你就会成为这方面的专家!