第6讲:回归分析
回归分析
导入:为什么要学习回归分析
在前面的课程中,我们已经讨论了数据处理、数据可视化等内容。完成数据清洗和探索性分析之后,一个自然的问题是:变量之间究竟存在怎样的数量关系,我们能否利用已有数据去解释现象并进行预测? 这正是回归分析要解决的核心问题。
回归分析是统计学习和数据科学中最基础、也最重要的方法之一。它既可以用来刻画自变量与因变量之间的关系,也可以用于解释变量作用方向和作用强度,还可以在给定新样本输入的情况下,对结果变量进行预测。在线性模型框架下,回归分析具有形式清晰、解释性强、计算方便等优点,因此在经济、管理、社会调查、医学、传播学和工程领域都得到广泛应用。
本讲主要围绕四个问题展开:
- 什么是回归分析,为什么需要回归模型;
- 一元线性回归如何建立、估计和检验;
- 多元线性回归如何扩展到多个解释变量;
- 如何利用 R 和 Python 实现回归建模与预测。
问题的提出
例子:家庭收入与消费支出
为了研究某社区家庭月消费支出与家庭月可支配收入之间的关系,随机抽取并调查了若干户家庭的相关数据。现在希望回答两个问题:
- 家庭月可支配收入与月消费支出之间是否存在数量关系;
- 如果已知一个家庭的月可支配收入,能否预测其月消费支出水平。
这类问题在数据分析中非常常见。我们往往已经通过散点图发现两个变量之间似乎存在某种趋势,但还不能仅凭图形就精确说明“收入每增加 1 单位,消费平均增加多少”,也不能严谨地完成统计推断。因此,需要建立正式的回归模型。课件中以家庭收入与消费支出、最大心率与年龄两个例子说明了这一点。
探索性分析
在正式建模之前,通常先做探索性分析。例如,对家庭收入与消费支出作散点图,可以发现两者存在明显的正相关关系;对年龄与最大心率作散点图,可以发现两者存在明显的负相关关系。Pearson 相关系数能够帮助我们初步判断线性相关程度,但它不能替代回归分析。
相关分析回答的是“两个变量是否同步变化”;而回归分析回答的是“一个变量如何影响另一个变量,以及这种影响能否用于解释和预测”。
一元线性回归
总体回归函数
假设因变量 $Y$ 与单个自变量 $X$ 之间存在线性关系,则可以把在给定 $X$ 条件下 $Y$ 的均值表示为:
\[E(Y|X_i)=\beta_0+\beta_1X_i\]这个函数称为总体回归函数(population regression function, PRF),对应的直线称为总体回归线。其中:
- $\beta_0$ 为截距项;
- $\beta_1$ 为斜率项,也称回归系数;
$E(Y X_i)$ 表示在给定 $X_i$ 情况下 $Y$ 的条件均值。
总体回归函数刻画的是平均规律,也就是在某一收入水平下,全体家庭平均消费支出的变化趋势,而不是某一个家庭的具体消费值。
随机误差项
即使在相同的收入水平下,不同家庭的消费支出也可能不同。因此,个体观测值与条件均值之间会存在偏差。记这个偏差为随机误差项 $\mu_i$,则:
\[Y_i=E(Y|X_i)+\mu_i=\beta_0+\beta_1X_i+\mu_i\]这里,$\mu_i$ 表示所有未被模型显式纳入、但会影响因变量的随机因素。于是,$Y_i$ 可以分为两部分:
- 系统性部分:$\beta_0+\beta_1X_i$;
- 非系统性部分:$\mu_i$。
从这个意义上说,回归分析并不是试图解释全部波动,而是在随机波动中提炼出主要的结构性关系。
样本回归函数
在实际研究中,我们通常拿不到总体数据,只能获得样本。因此,需要利用样本来估计总体回归函数。样本回归函数写作:
\[\hat{Y}_i=\hat{\beta}_0+\hat{\beta}_1X_i\]它也可写成随机形式:
\[Y_i=\hat{Y}_i+e_i=\hat{\beta}_0+\hat{\beta}_1X_i+e_i\]其中,$e_i$ 称为残差(residual),表示观测值与拟合值之间的差异,是对总体误差项 $\mu_i$ 的样本估计。课件中将样本回归线定义为尽可能拟合样本散点的一条直线。
回归模型的基本假设
为了保证参数估计量具有良好的统计性质,经典线性回归模型通常要求满足以下假设:
- 自变量 $X$ 是确定的,或至少与误差项不相关;
- 随机误差项均值为零: \(E(\mu_i)=0\)
- 随机误差项同方差: \(Var(\mu_i)=\sigma^2\)
- 随机误差项之间相互独立或不相关: \(Cov(\mu_i,\mu_j)=0,\quad i\neq j\)
- 随机误差项与自变量不相关: \(Cov(X_i,\mu_i)=0\)
- 在进一步做显著性检验与区间估计时,通常还假定: \(\mu_i\sim N(0,\sigma^2)\)
这些假设合起来,就是经典线性回归模型的基本假定,也称高斯假设。
普通最小二乘估计(OLS)
一元线性回归中最常用的参数估计方法是普通最小二乘法(ordinary least squares, OLS)。其核心思想是:选择一组参数估计值,使得残差平方和最小。
目标函数为:
\[\min Q=\sum_{i=1}^n(Y_i-\hat{Y}_i)^2=\sum_{i=1}^n(Y_i-\beta_0-\beta_1X_i)^2\]求解后可得:
\[\hat{\beta}_1=\frac{\sum x_i y_i}{\sum x_i^2}\] \[\hat{\beta}_0=\bar{Y}-\hat{\beta}_1\bar{X}\]其中,
\[\sum x_i^2=\sum (X_i-\bar{X})^2\] \[\sum x_i y_i=\sum (X_i-\bar{X})(Y_i-\bar{Y})\]OLS 的优点在于形式简单、计算方便、解释明确。在线性回归经典假设成立时,OLS 估计量具有最佳线性无偏估计量(BLUE)的性质,这一结论即高斯—马尔可夫定理。
参数估计量的统计性质
评估一个估计量通常从以下几个方面进行:
- 线性性:估计量是否是样本观测值的线性函数;
- 无偏性:估计量的期望是否等于总体真实参数;
- 有效性:在所有线性无偏估计量中是否具有最小方差。
若同时具备上述性质,则称该估计量为最佳线性无偏估计量,即 BLUE。课件中指出,在线性回归经典假设下,最小二乘估计量正是 BLUE。fileciteturn5file0
随机扰动项方差与参数方差估计
由于总体误差项方差 $\sigma^2$ 通常未知,需要利用样本残差进行估计。其无偏估计量为:
\[\hat{\sigma}^2=\frac{\sum e_i^2}{n-2}\]进一步地,参数估计量的样本方差和标准误可以写为:
\[S^2_{\hat{\beta}_1}=\frac{\hat{\sigma}^2}{\sum x_i^2}, \qquad S_{\hat{\beta}_1}=\frac{\hat{\sigma}}{\sqrt{\sum x_i^2}}\] \[S^2_{\hat{\beta}_0}=\hat{\sigma}^2\frac{\sum X_i^2}{n\sum x_i^2}, \qquad S_{\hat{\beta}_0}=\hat{\sigma}\sqrt{\frac{\sum X_i^2}{n\sum x_i^2}}\]这些量为后续显著性检验、置信区间和预测区间的构造提供基础。
模型检验
建立回归方程之后,还需要判断模型是否拟合得好、变量是否显著。课件中主要介绍了两类检验:拟合优度检验和变量显著性检验。fileciteturn5file0
拟合优度检验
拟合优度用于衡量回归线对样本数据的解释程度。总离差平方和可分解为两部分:
\[TSS=ESS+RSS\]其中:
- $TSS$:总体平方和(Total Sum of Squares);
- $ESS$:回归平方和(Explained Sum of Squares);
- $RSS$:残差平方和(Residual Sum of Squares)。
决定系数定义为:
\[R^2=\frac{ESS}{TSS}=1-\frac{RSS}{TSS}\]$R^2$ 的取值范围为 $[0,1]$。越接近 1,说明模型对因变量波动的解释能力越强;越接近 0,说明模型解释能力越弱。
变量显著性检验
为了判断自变量 $X$ 是否对因变量 $Y$ 具有显著影响,需要对回归系数进行显著性检验。
对斜率参数提出假设:
\[H_0:\beta_1=0,\qquad H_1:\beta_1\neq 0\]构造 t 统计量:
\[t=\frac{\hat{\beta}_1-\beta_1}{S_{\hat{\beta}_1}}\sim t(n-2)\]在原假设下,通常取 $\beta_1=0$,于是:
\[t=\frac{\hat{\beta}_1}{S_{\hat{\beta}_1}}\]| 若 $ | t | $ 大于临界值,则拒绝原假设,说明该变量在统计上显著。对截距项也可以作类似检验。 |
线性回归预测
一元线性回归不仅可以解释变量关系,还可以对新样本进行预测。课件中区分了点预测和区间预测。
点预测
对于样本以外给定的自变量值 $X_0$,点预测为:
\[\hat{Y}_0=\hat{\beta}_0+\hat{\beta}_1X_0\]| 它可以被看作条件均值 $E(Y | X=X_0)$ 的估计值。 |
区间预测
由于点预测本身存在抽样误差,因此还需要给出一个区间,以反映预测的不确定性。常见的有两类:
均值响应的置信区间:针对 $E(Y X_0)$; - 个体值的预测区间:针对单个未来观测值 $Y_0$。
一般来说,个体预测区间比均值置信区间更宽,因为它额外包含了个体随机扰动。课件给出了相应的 t 统计量和区间公式。
多元线性回归
为什么要使用多元线性回归
现实问题中,一个因变量往往不只受一个解释变量影响。例如,在研究税收收入增长时,除了 GDP,还可能受到财政支出、物价水平等因素影响。如果只考虑单个变量,模型容易遗漏重要信息。因此,需要将回归模型从一元推广到多元。课件以中国税收收入数据为例,说明了多元线性回归的实际应用背景。
多元线性回归模型
多元线性回归模型的一般形式为:
\[Y_i=\beta_1+\beta_2X_{2i}+\beta_3X_{3i}+\cdots+\beta_kX_{ki}+\varepsilon_i, \qquad i=1,2,\cdots,n\]其中:
- $Y_i$ 为因变量;
- $X_{2i},X_{3i},\ldots,X_{ki}$ 为自变量;
- $\varepsilon_i$ 为随机误差项;
- $\beta_1$ 为截距项;
- $\beta_j$ 为回归系数。
用矩阵形式可写为:
\[Y=X\beta+\varepsilon\]相应地,样本回归模型为:
\[Y=X\hat{\beta}+e\]样本回归方程为:
\[\hat{Y}=X\hat{\beta}\]矩阵形式使模型表示更加紧凑,也便于参数推导与编程实现。
多元线性回归的基本假定
多元线性回归沿用线性模型的经典假设,同时还要强调不存在完全多重共线性。主要包括:
- 随机扰动项均值为零;
- 同方差且无序列相关;
- 随机扰动项与自变量相互独立;
- 设计矩阵满秩,即不存在完全多重共线性;
- 在推断时常进一步假定误差项服从正态分布: \(\varepsilon\sim N(0,\sigma^2I_n)\)
这些条件确保 OLS 估计量具有良好的性质。
多元线性回归参数估计
多元线性回归同样采用最小二乘法,即选择参数估计值使残差平方和最小:
\[Q(\beta)=e'e=(Y-X\hat{\beta})'(Y-X\hat{\beta})\]展开可得:
\[Q(\beta)=Y'Y-2\hat{\beta}'X'Y+\hat{\beta}'X'X\hat{\beta}\]对 $\hat{\beta}$ 求偏导并令其为零,可得最小二乘估计量:
\[\hat{\beta}=(X'X)^{-1}X'Y\]这是多元线性回归最核心的矩阵公式。在线性模型经典假定下,该估计量同样满足高斯—马尔可夫定理,是 BLUE。
残差方差估计
在多元线性回归中,误差方差的无偏估计量为:
\[s^2=\frac{e'e}{n-k}\]其中 $k$ 为参数个数。该量用于参数标准误、显著性检验和区间估计。
多元回归中的模型检验
多元回归中通常需要进行以下几类检验:
- 拟合优度检验:考察模型整体解释能力,常用 $R^2$ 和调整 $R^2$;
- 方程整体显著性检验:判断所有解释变量联合起来是否对因变量有显著解释作用;
- 单个变量显著性检验:判断某个解释变量在控制其他变量后是否仍然显著。
这三类检验共同决定了模型是否“能用”、变量是否“有意义”。课件在多元线性回归部分以税收收入模型为背景强调了这一点。
R 实现
一元线性回归
课件给出的 R 实现非常简洁。对于家庭收入与消费支出的一元回归,可以直接使用 lm() 函数:
lm1 <- lm(consum ~ income)
coef(lm1)
coef(lm(consum ~ -1 + income))
summary(lm1)
其中:
lm(consum ~ income)用于拟合含截距的一元线性回归模型;coef()用于提取回归系数;summary()用于查看参数估计、标准误、t 值、p 值和 $R^2$ 等结果。
一元回归预测
对于新给定的收入序列,可以用 predict() 获得均值置信区间和个体预测区间:
conf <- predict(lm1, data.frame(income = sx), interval = "confidence")
pred <- predict(lm1, data.frame(income = sx), interval = "prediction")
plot(income, consum)
abline(lm1)
lines(sx, conf[,2]); lines(sx, conf[,3])
lines(sx, pred[,2], lty = 3); lines(sx, pred[,3], lty = 3)
这段代码完成了散点图、回归线、均值置信区间和预测区间的可视化展示。
本讲小结
本讲围绕回归分析展开,系统介绍了问题提出、一元线性回归、多元线性回归以及 R / Python 实现等内容。回归分析的核心任务,是在随机波动中刻画变量之间的平均关系,并在此基础上进行统计推断和数值预测。
需要重点把握以下内容:
- 一元线性回归刻画单个解释变量与结果变量之间的线性关系;
- OLS 的核心思想是使残差平方和最小;
- 模型检验包括拟合优度、显著性检验与预测分析;
- 多元线性回归能够同时纳入多个解释变量,更适合复杂现实问题;
- R 与 Python 都可以高效完成回归分析,但侧重点略有不同。
如果用一句话概括本讲内容,可以表述为:
回归分析的本质,就是利用样本数据去估计变量之间的数量关系,并在不确定性条件下实现解释、推断与预测。
