目录
本笔记为DataWhale 9月GitModel课程的学习内容,链接为:https://github.com/Git-Model/Modeling-Universe/Data Analysis and Statistical Modeling/task_02 回归分析1_线性回归模型必知必会/回归1.ipynb
建模流程:
一、背景知识:
1. 数据分类
以抽样时间点与抽样个体数目为维度划分数据类型:
下面按照
二、建模
1. 线性回归模型:
线性回归模型可表示为:
y = β 0 + β 1 x 1 + ⋯ + β p x p + u , E ( u ∣ x 1 , ⋯ , x p ) = 0 y=\beta_{0}+\beta_{1} x_{1}+\cdots+\beta_{p} x_{p}+u, \quad E\left(u \mid x_{1}, \cdots, x_{p}\right)=0 y=β0+β1x1+⋯+βpxp+u,E(u∣x1,⋯,xp)=0
2. 多元线性回归
一般的多元线性回归模型可写成:
y = β 0 + β 1 x 1 + ⋯ + β k x k + u y=\beta_{0}+\beta_{1} x_{1}+\cdots+\beta_{k} x_{k}+u y=β0+β1x1+⋯+βkxk+u
注:多个变量共同回归绝不等同于多个变量各自进行单变量回归。
三、参数估计
1. 参数估计思想——OLS估计
- 线性回归中最常用、最经典的系数估计方法——普通最小二乘估计法(Ordinary Least Squares, OLS)。
- 其衡量标准为:直线尽可能贴合样本点,即在所有直线当中,我们要选出一条离所有样本点距离的总和最小的直线。
- 不同的距离定义方法是不同估计法的一大区别,OLS对距离的定义是:残差的平方 u ^ i 2 \hat{u}_i^2 u^i2。因此OLS估计的思想是:OLS估计求得的系数 β ^ 0 \hat{\beta}_0 β^0、 β ^ 1 \hat{\beta}_1 β^1,将使直线与所有样本的拟合残差的平方和最小,即
( β ^ 0 , β ^ 1 ) = argmin ∑ i = 1 n ( y i − β ^ 0 − β ^ 1 x i ) 2 \left(\hat{\beta}_{0}, \hat{\beta}_{1}\right)=\operatorname{argmin} \sum_{i=1}^{n}\left(y_{i}-\hat{\beta}_{0}-\hat{\beta}_{1} x_{i}\right)^{2} (β^0,β^1)=argmini=1∑n(yi−β^0−β^1xi)2 - 对于多元线性回归,OLS估计的思想也完全相同,只不过多元线性回归的模型不是一条直线,而是一个多维的超平面。对于多元线性回归的OLS估计目标函数,有
( β ^ 0 , ⋯ , β ^ k ) = a r g min ∑ i = 1 n ( y i − β ^ 0 − β ^ 1 x 1 i − β ^ k x k i ) 2 \left( \hat{\beta}_0,\cdots ,\hat{\beta}_k \right) =\mathrm{arg}\min \sum_{i=1}^n{\left( y_i-\hat{\beta}_0-\hat{\beta}_1x_{1i}-\hat{\beta}_kx_{ki} \right) ^2} (β^0,⋯,β^k)=argmini=1∑n(yi−β^0−β^1x1i−β^kxki)2
2. 参数估计求解
(1) OLS求解的矩阵表示
由于我们有 n n n 个样本,因此根据模型有以下 n n n 个等式成立:
y i = β 0 + β 1 x i 1 + ⋯ + β k x i k + u i , i = 1 , ⋯ , n y_{i}=\beta_{0}+\beta_{1} x_{i 1}+\cdots+\beta_{k} x_{i k}+u_{i}, \quad i=1, \cdots, n yi=β0+β1xi1+⋯+βkxik+ui,i=1,⋯,n
将它们联立称方程组,并表示成矩阵形式:
y = X β + u \boldsymbol{y}=\boldsymbol{X\beta }+\boldsymbol{u} y=Xβ+u
实际拟合的模型及其残差,其矩阵形式则为:
y ^ = X β ^ , u ^ = y − y ^ \boldsymbol{\hat{y}}=\boldsymbol{X\hat{\beta}},\quad \boldsymbol{\hat{u}}=\boldsymbol{y}-\boldsymbol{\hat{y}} y^=Xβ^,u^=y−y^
运用向量求导的知识得:
X ′ X β ^ = X ′ y ⇒ β ^ = ( X ′ X ) − 1 X ′ y X^{\prime} X \hat{\beta}=X^{\prime} y \Rightarrow \hat{\beta}=\left(X^{\prime} X\right)^{-1} X^{\prime} y X′Xβ^=X′y⇒β^=(X′X)−1X′y
由此得到各系数估计向量 β ^ \boldsymbol{\hat{\beta}} β^ 的矩阵表达式。
这是一种近似逼近的求解方式,进一步地,还需要对其求解结果进行评价。
(2)模型评价:
拟合优度
一个很自然的问题是:这个模型对数据的拟合效果如何?这个问题可以进一步引申为:模型中的自变量 x i x_i xi 在多大程度上解释了 y y y 的变异?( y y y 的趋势变化可以理解为是一种带有规律性的变异)。我们之所以想构建模型,是因为想找到造成 y y y 值变化的因素,模型解释的变异占总变异的比例越多,这个模型的解释力度就越大,模型的拟合优度也就越好。
回归拟合优度——R方:
R 2 = E S S T S S R^{2}=\frac{E S S}{T S S} R2=TSSESS
其中,TSS度量了因变量 y y y 的总样本变异,而ESS度量了模型拟合值 y ^ \hat{y} y^ 的总变异,也就是解释了的变异。
三、OLS估计的代数性质
1. 代数性质
(1) OLS估计预测残差之和为0:
∑ i = 1 n ( y i − β ^ 0 − β ^ 1 x i 1 − ⋯ − β ^ k x i k ) = ∑ i = 1 n u ^ i = 0 \sum_{i=1}^n{\left( y_i-\hat{\beta}_0-\hat{\beta}_1x_{i1}-\cdots -\hat{\beta}_kx_{ik} \right)}=\sum_{i=1}^n{\hat{u}_i}=0 i=1∑n(yi−β^0−β^1xi1−⋯−β^kxik)=i=1∑nu^i=0
(2) OLS估计最重要的代数性质,它意味着OLS估计的残差与参与回归的自变量不相关。
∑ i = 1 n ( y i − β ^ 0 − β ^ 1 x i 1 − ⋯ − β ^ k x i j ) x i j = ∑ i = 1 n u ^ i x i j = 0 , j = 1 , ⋯ , k \sum_{i=1}^n{\left( y_i-\hat{\beta}_0-\hat{\beta}_1x_{i1}-\cdots -\hat{\beta}_kx_{ij} \right)}x_{ij}=\sum_{i=1}^n{\hat{u}_i}x_{ij}=0, j=1,\cdots ,k i=1∑n(yi−β^0−β^1xi1−⋯−β^kxij)xij=i=1∑nu^ixij=0,j=1,⋯,k
即:
∑ i = 1 n x i k u ^ i = ∑ i = 1 n x i k ( u ^ i − u ^ ˉ ) = ∑ i = 1 n ( x i k − x ˉ ) ( u ^ i − u ^ ˉ ) = C o v ( x k , u ^ ) = 0 , j = 1 , ⋯ , k \sum_{i=1}^n{x_{ik}}\hat{u}_i=\sum_{i=1}^n{x_{ik}}\left( \hat{u}_i-\bar{\hat{u}} \right) =\sum_{i=1}^n{\left( x_{ik}-\bar{x} \right)}\left( \hat{u}_i-\bar{\hat{u}} \right) =Cov\left( x_k,\hat{u} \right) =0, j=1,\cdots ,k i=1∑nxiku^i=i=1∑nxik(u^i−u^ˉ)=i=1∑n(xik−xˉ)(u^i−u^ˉ)=Cov(xk,u^)=0,j=1,⋯,k
这预示着:如果我们消除因变量 y y y 与某些自变量 x j x_j xj 之间的线性相关性,可以先进行线性回归然后取残差!
2. CLM假设:
经典线性模型假设-CLM假设:
- MLR.1 总体模型假设。
- MLR.2 随机误差条件均值零假设:所有非自变量的其他因素都与自变量线性无关。
- MLR.3 随机抽样假设:等同于 i.i.d 。
- MLR.4 非完全共线性假设。
- MLR.5 同方差假设
随机误差 u u u 的条件方差恒为一个常数,即:
Var ( u ∣ x 1 , ⋯ , x k ) = σ 2 \operatorname{Var}\left(u \mid x_{1}, \cdots, x_{k}\right)=\sigma^{2} Var(u∣x1,⋯,xk)=σ2
数据的波动程度不受自变量影响,不论 x i x_i xi 如何变化,数据与样本条件均值的偏离程度都是恒定的。- MLR.6 正态性假设
该假设假定随机误差 u u u 在任何自变量已知的条件下服从正态分布:
u ∣ x ∼ N ( 0 , σ 2 ) u \mid x \sim N\left(0, \sigma^{2}\right) u∣x∼N(0,σ2)
3. OLS估计的性质
在CLM假设下,对OLS的性质做进一步说明:
(1) OLS系数估计的无偏性
定理1. 在CLM假设MLR.1-MLR.4下, β ^ \hat\beta β^ 是 β \beta β 的无偏估计,即:
E ( β ^ j ) = β j , ∀ j = 0 , 1 , ⋯ , k E\left(\hat{\beta}_{j}\right)=\beta_{j}, \forall j=0,1, \cdots, k E(β^j)=βj,∀j=0,1,⋯,k
(2)OLS系数估计的方差——估计的稳定性
定理2. 在CLM假设MLR.1-MLR.5(增加了同方差假设MLR.5)下, β ^ \hat\beta β^ 的方差-协方差矩阵表达式为:
Cov ( β ^ ) = σ 2 ( X ′ X ) − 1 \operatorname{Cov}(\hat{\beta})=\sigma^{2}\left(X^{\prime} X\right)^{-1} Cov(β^)=σ2(X′X)−1
其中:
Var ( β ^ j ) = σ 2 ( X ′ X ) j + 1 , j + 1 − 1 \operatorname{Var}\left(\hat{\beta}_{j}\right)=\sigma^{2}\left(X^{\prime} X\right)_{j+1, j+1}^{-1} Var(β^j)=σ2(X′X)j+1,j+1−1
sd ( β ^ j ) = σ ( X ′ X ) j + 1 , j + 1 − 1 \operatorname{sd}\left(\hat{\beta}_{j}\right)=\sigma \sqrt{\left(X^{\prime} X\right)_{j+1, j+1}^{-1}} sd(β^j)=σ(X′X)j+1,j+1−1
估计系数的标准误(standard error): se ( β ^ j ) = σ ^ ( X ′ X ) j + 1 , j + 1 − 1 \operatorname{se}\left(\hat{\beta}_{j}\right)=\hat{\sigma} \sqrt{\left(X^{\prime} X\right)_{j+1, j+1}^{-1}} se(β^j)=σ^(X′X)j+1,j+1−1
定理3. 在CLM假设MLR.1-MLR.5下, δ ^ 2 \hat{\delta}^2 δ^2 是 δ 2 {\delta}^2 δ2 的无偏估计,即:
E ( σ ^ 2 ) = σ 2 E\left(\hat{\sigma}^{2}\right)=\sigma^{2} E(σ^2)=σ2
(3)OLS系数估计的最优线性无偏性
Gauss-Markov定理. 在CLM假设MLR.1-MLR.5下,在 β \beta β 的所有线性无偏估计类当中,OLS估计的方差最小。即假设另有无偏估计 β ~ j \tilde{\beta}_{j} β~j ,若它可以表示为 y j y_j yj 的线性组合,则必有:
Var ( β ^ j ) < Var ( β ~ j ) \operatorname{Var}\left(\hat{\beta}_{j}\right)<\operatorname{Var}\left(\tilde{\beta}_{j}\right) Var(β^j)<Var(β~j)
(4)OLS系数估计的抽样分布-t分布
定理4. 在CLM假设MLR.1-MLR.6下, β ^ j \hat{\beta}_{j} β^j 服从正态分布:
β ^ j ∼ N ( β j , Var ( β ^ j ) ) \hat{\beta}_{j} \sim N\left(\beta_{j}, \operatorname{Var}\left(\hat{\beta}_{j}\right)\right) β^j∼N(βj,Var(β^j))
进一步变形后:
β ^ j − β j s d ( β ^ j ) ∼ N ( 0 , 1 ) \frac{\hat{\beta}_{j}-\beta_{j}}{s d\left(\hat{\beta}_{j}\right)} \sim N(0,1) sd(β^j)β^j−βj∼N(0,1)
为了便于估计,将标准差转换为标准误:
β ^ j − β j se ( β ^ j ) ∼ t n − k − 1 \frac{\hat{\beta}_{j}-\beta_{j}}{\operatorname{se}\left(\hat{\beta}_{j}\right)} \sim t_{n-k-1} se(β^j)β^j−βj∼tn−k−1