多元线性回归模型:设因变量为 yyy ,kkk 个自变量分别为 x1x_1x1 ,x2x_2x2 ,⋯\cdots⋯ xkx_kxk ,一般表示形式为:
y=β0+β1x1+β2x2+⋯+βkxk+εy=\beta_0+\beta_1x_1+\beta_2x_2+\cdots+\beta_kx_k+\varepsilon y=β0+β1x1+β2x2+⋯+βkxk+ε
这里对误差项 ε\varepsilonε 同样有三个基本的假定:
最小二乘法:根据残差的平方和最小,估计多元回归模型中的参数 β^0\hat\beta_0β^0 ,β^1\hat\beta_1β^1 ,⋯\cdots⋯ β^k\hat\beta_kβ^k :
Q=∑(yi−y^i)2=∑(yi−β^0−β^1x1−⋯−β^kxk)2=minQ=\sum(y_i-\hat y_i)^2=\sum(y_i-\hat\beta_0-\hat\beta_1x_1-\cdots-\hat\beta_kx_k)^2=\min Q=∑(yi−y^i)2=∑(yi−β^0−β^1x1−⋯−β^kxk)2=min
标准化回归方程:在计算最小二乘法前,对因变量和各个自变量进行标准化处理,再计算回归方程,其中标准化回归系数记作 βˉ\bar\betaβˉ ;比较不同的 βˉi\bar\beta_iβˉi 我们可以得到对因变量来说最重要的变量
拟合优度主要由多重决定系数或估计标准误差等统计量来评价。
多重决定系数:同样将总平方和分解为回归平方和加误差平方和:
SST=∑(yi−yˉ)2=SSR+SSE=∑(yi^−yˉ)2+∑(yi−yi^)2SST=\sum(y_{i}-\bar{y})^2=SSR+SSE=\sum(\hat{y_{i}}-\bar{y})^{2}+\sum(y_{i}-\hat{y_{i}})^{2} SST=∑(yi−yˉ)2=SSR+SSE=∑(yi^−yˉ)2+∑(yi−yi^)2
多重决定系数 R2R^{2}R2 为:
R2=SSRSSTR^{2}=\frac{SSR}{SST} R2=SSTSSR
多重决定系数表示因变量 yyy 的总变差中被多个自变量所解释的比例;在多元线性回归中,自变量的个数将会影响到因变量中被估计回归方程所揭示的变差数量。即使再增加一个新的自变量,该自变量在统计上并不显著,也会导致多重决定系数 R2R^{2}R2 增大,因此我们引入调整的多重决定系数 Ra2R_{a}^{2}Ra2 :
Ra2=1−(1−R2)×n−1n−k−1R_{a}^{2}=1-(1-R^{2})\times \frac{n-1}{n-k-1} Ra2=1−(1−R2)×n−k−1n−1
其中 nnn 为样本数量,kkk 为自变量的个数;这样调整过后的多重决定系数总会小于原来的系数,不会因为自变量的个数增加而导致 R2R^{2}R2 越来越接近于 1;所以实际当中一般使用调整过后的多重决定系数进行评价。
估计标准误差:即残差平方和的平方根,是对误差项 ε\varepsilonε 的标准差 σ\sigmaσ 的一个估计值:
se=∑(yi−y^i)2n−k−1=SSEn−k−1s_e=\sqrt{\frac{\sum(y_i-\hat y_i)^2}{n-k-1}}=\sqrt{\frac{SSE}{n-k-1}} se=n−k−1∑(yi−y^i)2=n−k−1SSE
ses_ese 可解释为,根据自变量 x1x_1x1 ,x2x_2x2 ,⋯\cdots⋯ xkx_kxk 来预测因变量 yyy 时的平均预测误差
线性关系检验:检验因变量 yyy 与 kkk 个自变量之间的关系是否显著,也称为总体显著性检验:
① 提出假设:
② 计算检验统计量(FFF 检验):
F=SSR/kSSE/(n−k−1)=MSRMSE∼F(k,n−k−1)F=\frac{SSR/k}{SSE/(n-k-1)}=\frac{MSR}{MSE}\sim F(k,\,n-k-1) F=SSE/(n−k−1)SSR/k=MSEMSR∼F(k,n−k−1)
③ 作出决策,算出 PPP 值,根据显著性水平 α\alphaα 决定是否拒绝原假设
回归系数检验:判断每个自变量对因变量的影响是否都显著,需要对每个回归系数 βi\beta_iβi 进行 ttt 检验:
① 提出假设:
② 计算检验统计量 ttt :
ti=β^isβ^i∼t(n−k−1)t_i=\frac{\hat{\beta}_i}{s_{\hat{\beta}_i}}\sim t(n-k-1) ti=sβ^iβ^i∼t(n−k−1)
其中 sβ^is_{\hat{\beta}_i}sβ^i 是回归系数 β^i\hat{\beta}_iβ^i 的抽样分布的标准差,计算公式为:(xj.ix_{j.i}xj.i 代表第 jjj 组自变量中的第 iii 个自变量,即每一组中的第 iii 个自变量)
sβi^=se∑(xj.i−xˉi)2s_{\hat{\beta_i}}=\frac{s_e}{\sqrt{\sum(x_{j.i}-\bar{x}_i)^2}} sβi^=∑(xj.i−xˉi)2se
多重共线性:回归模型中两个或两个以上的自变量彼此相关
① 若 kkk 个自变量之间存在高度相关时,有可能造成某一个或几个回归系数通不过检验,但并不意味着没通过检验的那些自变量对因变量的影响就不显著,只是这些相关的自变量提供了多余的信息。例如通过了 FFF 检验但某些回归系数没有通过 t 检验,并不代表没有通过 t 检验的自变量对因变量的影响不显著,可能只是它的贡献与其他自变量的贡献重叠了;
② 多重共线性可能对回归系数的符号造成影响,有可能几个相关的自变量中,某些自变量的回归系数较大,导致另一些自变量要抵消一部分作用所以回归系数算出来是负的,但是并不意味着它们与因变量是负相关的关系;
识别方法:
① 对模型中各自变量之间的相关系数进行显著性检验,若存在某些自变量是显著相关的,那么可能存在多重共线性;
② 考察各回归系数的显著性,若通过 FFF 检验,而几乎所有的回归系数都没有通过 t 检验,那么就可能存在多重共线性
③ 分析回归系数的正负号,如果回归系数的正负号与预期(现实经验)相反,那么就可能存在多重共线性
④ 计算容忍度和方差扩大因子(VIF)来识别共线性:
tolerance=1−Ri2VIF=11−Ri2=1tolerancetolerance=1-R^2_i \\ VIF=\frac{1}{1-R_i^2}=\frac{1}{tolerance} tolerance=1−Ri2VIF=1−Ri21=tolerance1
其中 Ri2R_i^2Ri2 代表将第 iii 各自变量看作因变量,其他 k−1k-1k−1 个自变量对其造成影响的决定系数;容忍度越小,方差扩大因子越大(大于5或10),多重共线性越严重;
处理方法:
① 将一个或多个相关的自变量从模型中剔除,使得自变量之间尽量不相关
② 如果要在模型中保留所有自变量,则要避免对单个回归系数进行 t 检验,并且将对因变量 yyy 值的推断限定在自变量样本的范围内
③ 在建立模型之前有选择地确定进入模型的自变量
在多重共线性的处理中,变量选择是有效方法。在建立多元线性回归模型时,不要试图引入更多的自变量,除非确实有必要。选择自变量的原则是:将某个自变量引入回归模型时,应当使残差平方和(SSE)有显著的降低,否则就没有必要。
变量选择的主要方法有:向前选择、向后剔除、逐步回归
向前选择:从没有自变量开始,按照步骤逐步选择自变量;特点是被选择的自变量不会再被剔除。
向后剔除:从完整模型开始,按照步骤逐步剔除自变量;特点是被剔除的自变量不会再进入模型。
逐步回归:结合前两种方法:开始时与向前选择法相同,但增加一个自变量后,要对模型中所有自变量进行考察,若有些自变量对模型的影响变得不显著,则将其剔除,直到增加变量已经不能导致 SSESSESSE 显著减少。特点是加入模型的自变量也可能被剔除,被剔除的自变量也可能重新加入模型中。
书上没给公式耶,因为比较复杂,但是跟一元线性回归一样,可以进行点估计、平均值的置信区间估计和个别值是预测区间估计。可以借助软件来完成。
哑变量:又称虚拟变量,即代码化的定性自变量(一位热键,OneHotEncode);如果定性自变量又 kkk 个水平,需要在回归模型中引入 k−1k-1k−1 个哑变量:
x1={1水平10其他水平x2={1水平20其他水平⋯xk−1={1水平k−10其他水平x_1=\left\{ \begin{array}{ll} 1 & 水平\,1 \\ 0 & 其他水平 \end{array} \right. \quad x_2=\left\{ \begin{array}{ll} 1 & 水平\,2 \\ 0 & 其他水平 \end{array} \right. \quad\cdots\quad x_{k-1}=\left\{ \begin{array}{ll} 1 & 水平\,k-1 \\ 0 & 其他水平 \end{array} \right. x1={10水平1其他水平x2={10水平2其他水平⋯xk−1={10水平k−1其他水平
只有一个定性自变量且处理有两种(不论数值自变量有几种)的情况,例如性别用 1 和 0 编码,那么 β0\beta_0β0 总是代表哑变量值 0 所对应的那个类别变量水平的平均值,而 βi\beta_iβi (即定性自变对应的回归系数)总是代表哑变量值 1 所对应的那个类别变量水平的平均值与哑变量值 0 所对应的那个类别变量水平的平均值的差值。