简单地说,回归分析就是对拟合问题作的统计分析。
具体地说,回归分析在一组数据的基础上研究这样几个问题:
(i)建立因变量y与自变量x之间的回归模型(经验公式);
(ii)对回归模型的可信度进行检验;
(iii)判断每个自变量x对y的影响是否显著;
(iv)诊断回归模型是否适合这组数据;
(v)利用回归模型对y进行预报或控制。
样本点×变量类型的数据表:m个样本采样n次得到的数据表 X = ( x i j ) n × m , i = 1 , 2 , … , n ; j = 1 , 2 , … , m X=(x_{ij})_{n\times m},i=1,2,\dotsc,n;j=1,2,\dotsc,m X=(xij)n×m,i=1,2,…,n;j=1,2,…,m样本均值为 x ˉ = ( x ˉ 1 , … , x ˉ m ) T , x ˉ j = 1 n ∑ i = 1 n x i j \bar x=(\bar x_1,\dotsc,\bar x_m)^T,\bar x_j=\frac{1}{n}\sum\limits_{i=1}^nx_{ij} xˉ=(xˉ1,…,xˉm)T,xˉj=n1i=1∑nxij样本协方差矩阵及样本相关系数矩阵分别为 C 1 = ( t i j ) m × m = 1 n ∑ k = 1 n ( e k − x ˉ ) ( e k − x ˉ ) T C 2 = ( r i j ) m × m = ( t i j t i i t j j ) C_1=(t_{ij})_{m\times m}=\frac{1}{n}\sum\limits_{k=1}^{n}(e_k-\bar x)(e_k-\bar x)^T\\C_2=(r_{ij})_{m\times m}=\begin{pmatrix}\frac{t_{ij}}{\sqrt {t_{ii}t_{jj}}}\end{pmatrix} C1=(tij)m×m=n1k=1∑n(ek−xˉ)(ek−xˉ)TC2=(rij)m×m=(tiitjjtij)其中 t i j = 1 n − 1 ∑ k = 1 n ( x k i − x ˉ i ) ( x k j − x ˉ j ) t_{ij}=\frac{1}{n-1}\sum\limits_{k=1}^{n}(x_{ki}-\bar x_i)(x_{kj}-\bar x_j) tij=n−11k=1∑n(xki−xˉi)(xkj−xˉj)
(1)数据的中心化处理
x i j ∗ = x i j − x ˉ x_{ij}^*=x_{ij}-\bar x xij∗=xij−xˉ
该变换可以使样本的均值变为 0,而这样的变换既不改变样本点间的相互位置,也不改变变量间的相关性。但变换后,却常常有许多技术上的便利。
(2)数据的无量纲化处理
实际问题中,不同变量的测量单位往往是不一样的。为了消除变量的量纲效应,使每个变量都具有同等的表现力,数据分析中常用的消量纲的方法,是对不同的变量进行所谓的压缩处理,即使每个变量的方差均变成1,即 x i j ∗ = x i j / s j x_{ij}^*=x_{ij}/s_j xij∗=xij/sj其中 s j = 1 n − 1 ∑ i = 1 n ( x i j − x ˉ ) 2 s_j=\sqrt{\frac{1}{n-1}\sum\limits_{i=1}^{n}(x_{ij}-\bar x)^2} sj=n−11i=1∑n(xij−xˉ)2 s j s_j sj也可以换成 max i { x i j } , min i { x i j } , x ˉ j , max i { x i j } − min i { x i j } \max_i\{x_{ij}\},\min_i\{x_{ij}\},\bar x_j, \max_i\{x_{ij}\}-\min_i\{x_{ij}\} imax{xij},imin{xij},xˉj,imax{xij}−imin{xij}它们都是无量纲化处理的一种方法。
(3)标准化处理
对数据的标准化处理,是指对数据同时进行中心化-压缩处理,即 x i j ∗ = x i j − x ˉ j s j x_{ij}^*=\frac{x_{ij}-\bar x_j}{s_j} xij∗=sjxij−xˉj
一元线性回归的模型为 y = β 0 + β 1 x + ε y=β_0+β_1x+ε y=β0+β1x+ε
β 0 , β 1 β_0,β_1 β0,β1为回归系数, ε ε ε是随机误差项,总是假设 ε ∽ N ( 0 , σ 2 ) ε\backsim N(0,σ^2) ε∽N(0,σ2),则随机变量 y ∽ N ( β 0 + β 1 x , σ 2 ) y\backsim N(\beta_0+\beta_1x,σ^2) y∽N(β0+β1x,σ2)。
取 β 0 , β 1 β_0, β_1 β0,β1的一组估计值 β ^ 0 , β ^ 1 \hatβ_0,\hatβ_1 β^0,β^1,使 y ^ 与 y \hat y与y y^与y的误差平方和达到最小。即 Q ( β ^ 0 β ^ 1 ) = min β 0 β 1 Q ( β 0 , β 1 ) = ∑ i = 1 n ( y i − β 0 − β 1 x ) 2 Q(\hat\beta_0\hat\beta_1)=\min_{\beta_0\beta_1} Q(β_0,β_1)=\sum\limits_{i=1}^{n}(y_i-\beta_0-\beta_1x)^2 Q(β^0β^1)=β0β1minQ(β0,β1)=i=1∑n(yi−β0−β1x)2显然 Q ( β 0 , β 1 ) ≥ 0 Q(β_0 , β_1) ≥ 0 Q(β0,β1)≥0,且关于 β 0 , β 1 \beta_0,\beta_1 β0,β1可微,则由多元函数存在极值的必要条件得到的方程组称为正规方程组,解方程组得 { β ^ 1 = ∑ i = 1 n ( x i − x ˉ ) ( y i − y ˉ ) ∑ i = 1 n ( x i − x ˉ ) 2 = s y s x r x y β ^ 0 = y ˉ − β ^ 1 x ˉ \begin{cases}\hat\beta_1=\frac{\sum\limits_{i=1}^{n}(x_i-\bar x)(y_i-\bar y)}{\sum\limits_{i=1}^{n}(x_i-\bar x)^2}=\frac{s_y}{s_x}r_{xy}\\\hat\beta_0=\bar y -\hat\beta_1\bar x\end{cases} ⎩⎪⎪⎨⎪⎪⎧β^1=i=1∑n(xi−xˉ)2i=1∑n(xi−xˉ)(yi−yˉ)=sxsyrxyβ^0=yˉ−β^1xˉ式中 s y , s x s_y,s_x sy,sx为对应得标准差, r x y r_{xy} rxy是 x 与 y 的样本相关系数。
显然,当 x i , y i x_i,y_i xi,yi都是标准化数据时,则有 x ˉ = 0 , y ˉ = 0 , s x = 1 , s y = 1 \bar x = 0,\bar y = 0,s_x = 1,s_y =1 xˉ=0,yˉ=0,sx=1,sy=1。所以有 β ^ 0 = 0 , β ^ 1 = r x y \hat\beta_0=0,\hat\beta_1=r_{xy} β^0=0,β^1=rxy,回归方程为 y ^ = r x y x \hat y=r_{xy}x y^=rxyx。
回归方程的质量如何?误差多大?对这些,都必须予以正确的评估和分析。
残差: e i = y i − y ^ i e_i=y_i-\hat y_i ei=yi−y^i
残差的样本均值: e ˉ = 1 n ∑ i = 1 n ( y i − y ^ i ) = 0 \bar e=\frac{1}{n}\sum\limits_{i=1}^{n}(y_i-\hat y_i)=0 eˉ=n1i=1∑n(yi−y^i)=0
残差的样本方差为: M S E = 1 n − 2 ∑ i = 1 n ( e i − e ˉ ) 2 = 1 n − 2 ∑ i = 1 n ( y i − y ^ i ) 2 MSE=\frac{1}{n-2}\sum\limits_{i=1}^{n}(e_i-\bar e)^2=\frac{1}{n-2}\sum\limits_{i=1}^{n}(y_i-\hat y_i)^2 MSE=n−21i=1∑n(ei−eˉ)2=n−21i=1∑n(yi−y^i)2
记 S e = M S E S_e=\sqrt{MSE} Se=MSE
一个好的拟合方程,其残差总和应越小越好。残差越小,拟合值与观测值越接近,各观测点在拟合直线周围聚集的紧密程度越高,也就是说,拟合方程解释y的能力越强。
y i y_i yi的变异程度可以用方差来测度,同样 y ^ i \hat y_i y^i也能用方差。
记 S S T = ∑ i = 1 n ( y i − y ˉ ) 2 , 自 由 度 为 n − 1 S S R = ∑ i = 1 n ( y ^ i − y ˉ ) 2 , 自 由 度 为 1 S S E = ∑ i = 1 n ( y i − y ^ i ) 2 , 自 由 度 为 n − 2 \begin{aligned}SST&=\sum\limits_{i=1}^{n}(y_i-\bar y)^2,自由度为n-1\\SSR&=\sum\limits_{i=1}^{n}(\hat y_i-\bar y)^2,自由度为1\\SSE&=\sum\limits_{i=1}^{n}(y_i-\hat y_i)^2,自由度为n-2\end{aligned} SSTSSRSSE=i=1∑n(yi−yˉ)2,自由度为n−1=i=1∑n(y^i−yˉ)2,自由度为1=i=1∑n(yi−y^i)2,自由度为n−2有 S S T = S S R + S S E , d f T = d f r + d f e , d f SST=SSR+SSE,df_T=df_r+df_e,df SST=SSR+SSE,dfT=dfr+dfe,df表示对应下表的自由度。
对于一个确定的样本(一组实现的观测值),SST是一个定值。所以,可解释变异SSR越大,则必然有残差SSE越小:
(1)SSR越大,用回归方程来解释 y i y_i yi变异的部分越大,回归方程对原数据解释得越好;
(2)SSE越小,观测值 y i y_i yi绕回归直线越紧密,回归方程对原数据的拟合效果越好。
定义判定系数(拟合优度): R 2 = S S R S S T = 1 − S S E S S T R^2=\frac{SSR}{SST}=1-\frac{SSE}{SST} R2=SSTSSR=1−SSTSSE R 2 = r 2 ( y , y ^ ) R^2=r^2(y,\hat y) R2=r2(y,y^) 有以下简单性质:
(1) 0 ≤ R 2 ≤ 1 0\leq R^2\leq1 0≤R2≤1;
(2)当 R 2 = 1 R^2=1 R2=1时,有 S S R = S S T SSR=SST SSR=SST,也就是说,此时原数据的总变异完全可以由拟合值的变异来解释,并且残差为零( SSE = 0 ),即拟合点与原数据完全吻合;
(3)当 R 2 = 0 R^2=0 R2=0时,回归方程完全不能解释原数据的总变异,y的变异完全由与x无关的因素引起,这时 S S E = S S T SSE = SST SSE=SST
(4) R 2 R^2 R2又等于 y y y与拟合变量 y ^ \hat y y^的相关系数平方。 R 2 \sqrt{R^2} R2等于 y y y 与自变量 x x x 的相关系数,而相关系数的正、负号与回归系数 β ^ 1 \hatβ_1 β^1的符号相同。
在拟合回归方程之前,我们曾假设数据总体是符合线性正态误差模型的,这种假设是否真实,还需进行检验。假设 y 与 x 之间存在线性关系,则总体模型为 y i = β 0 + β 1 x i + ϵ i y_i=\beta_0+\beta_1x_i+\epsilon_i yi=β0+β1xi+ϵi如果 β 1 ≠ 0 \beta_1\ne 0 β1=0,则称这个模型为全模型,其误差平方和为SSE。现假设 H 0 : β 1 = 0 H_0:\beta_1=0 H0:β1=0,如果 H 0 H_0 H0成立,则 y i = β 0 + ϵ i y_i=\beta_0+\epsilon_i yi=β0+ϵi称为选模型,其误差平方和为SST。用最小二乘法拟合这个模型,则有 β ^ 1 = 0 β 0 = y ˉ − β ^ 1 x ˉ = y ˉ \hat\beta_1=0\\\beta_0=\bar y-\hat \beta_1\bar x=\bar y β^1=0β0=yˉ−β^1xˉ=yˉ即 y ^ i ≡ y ˉ \hat y_i\equiv\bar y y^i≡yˉ,则有 S S E ≤ S S T SSE\leq SST SSE≤SST,全模型的误差总是小于(或等于)选模型的误差的。其原因是在全模型中有较多的参数,可以更好地拟合数据。
为了检验是否可以用 x 的线性方程式来解释 y ,可以进行下面的统计检验:
F检验: H 0 : β 1 = 0 , H 1 : β 1 ≠ 0 H_0:\beta_1=0,H_1:\beta_1\neq 0 H0:β1=0,H1:β1=0
F = M S R M S E = S S R / d f R S S E / d f E ∽ F ( 1 , n − 2 ) F=\frac{MSR}{MSE}=\frac{SSR/df_R}{SSE/df_E}\backsim F(1,n-2) F=MSEMSR=SSE/dfESSR/dfR∽F(1,n−2)
若 F ≤ F α ( 1 , n − 2 ) F ≤ F_\alpha (1, n − 2) F≤Fα(1,n−2) ,则接受 H 0 H_0 H0 假设,这时认为 β 1 β_1 β1显著为零,无法用x的线性关系式来解释y。
若 F > F α ( 1 , n − 2 ) F > F_\alpha (1, n − 2) F>Fα(1,n−2),则否定 H 0 H_0 H0 ,接受 H 1 H_1 H1。这时认为 β 1 β_1 β1显著不为零,可以用x的线性关系来解释y。习惯上说,线性回归方程的F检验通过了。
回归方程的假设检验包括两个方面:一个是对模型的检验,即检验自变量与因变量之间的关系能否用一个线性模型来表示,这是由F检验来完成的;另一个检验是关于回归参数的检验,即当模型检验通过后,还要具体检验每一个自变量对因变量的影响程度是否显著。这就是下面要讨论的t检验。
回归参数的检验是考察每一个自变量对因变量的影响是否显著。换句话说,就是要检验每一个总体参数是否显著不为零。
β ^ 1 − β 1 S ( β ^ 1 ) ∽ t ( n − 2 ) \frac{\hat\beta_1-\beta_1}{S(\hat\beta_1)}\backsim t(n-2) S(β^1)β^1−β1∽t(n−2)t检验: H 0 : β 1 = 0 , H 1 : β 1 ≠ 0 H_0:\beta_1=0,H_1:\beta_1\neq 0 H0:β1=0,H1:β1=0
t 1 = β ^ 1 S ( β ^ 1 ) t_1=\frac{\hat\beta_1}{S(\hat\beta_1)} t1=S(β^1)β^1若 ∣ t 1 ∣ ≤ t α 2 ( n − 2 ) |t_1|\leq t_{\frac{\alpha}{2}}(n-2) ∣t1∣≤t2α(n−2),则接受 H 0 H_0 H0,认为 β 1 \beta_1 β1显著为零;
若 ∣ t 1 ∣ > t α 2 ( n − 2 ) |t_1|\gt t_{\frac{\alpha}{2}}(n-2) ∣t1∣>t2α(n−2),则拒绝 H 0 H_0 H0,认为 β 1 β_1 β1显著不为零。
当拒绝了 H 0 H_0 H0 ,认为 β 1 β_1 β1显著不为零时,又称 β 1 β_1 β1通过了t 检验。
β 1 \beta_1 β1的置信度为 1 − α 1−α 1−α的置信区间为 β ^ 1 − t α 2 ( n − 2 ) S ( β ^ 1 ) ≤ β 1 ≤ β ^ 1 + t α 2 ( n − 2 ) S ( β ^ 1 ) \hat\beta_1-t_{\frac{\alpha}{2}}(n-2)S(\hat\beta_1)\leq\beta_1\leq\hat\beta_1+t_{\frac{\alpha}{2}}(n-2)S(\hat\beta_1) β^1−t2α(n−2)S(β^1)≤β1≤β^1+t2α(n−2)S(β^1)同样的: β ^ 0 − β 0 S ( β ^ 0 ) ∽ t ( n − 2 ) \frac{\hat\beta_0-\beta_0}{S(\hat\beta_0)}\backsim t(n-2) S(β^0)β^0−β0∽t(n−2)t检验: H 0 : β 0 = 0 , H 1 : β 0 ≠ 0 H_0:\beta_0=0,H_1:\beta_0\neq 0 H0:β0=0,H1:β0=0 t 0 = β ^ 0 S ( β ^ 0 ) t_0=\frac{\hat\beta_0}{S(\hat\beta_0)} t0=S(β^0)β^0若 ∣ t 0 ∣ ≤ t α 2 ( n − 2 ) |t_0|\leq t_{\frac{\alpha}{2}}(n-2) ∣t0∣≤t2α(n−2),则接受 H 0 H_0 H0,认为 β 0 \beta_0 β0显著为零;
若 ∣ t 0 ∣ > t α 2 ( n − 2 ) |t_0|\gt t_{\frac{\alpha}{2}}(n-2) ∣t0∣>t2α(n−2),则拒绝 H 0 H_0 H0,认为 β 0 β_0 β0显著不为零。
β 1 \beta_1 β1的置信度为 1 − α 1−α 1−α的置信区间为 β ^ 0 − t α 2 ( n − 2 ) S ( β ^ 0 ) ≤ β 0 ≤ β ^ 0 + t α 2 ( n − 2 ) S ( β ^ 0 ) \hat\beta_0-t_{\frac{\alpha}{2}}(n-2)S(\hat\beta_0)\leq\beta_0\leq\hat\beta_0+t_{\frac{\alpha}{2}}(n-2)S(\hat\beta_0) β^0−t2α(n−2)S(β^0)≤β0≤β^0+t2α(n−2)S(β^0)
模型为: { y = β 0 + β 1 x 1 + … + β m x m + ϵ ϵ ∽ N ( 0 , σ 2 ) \begin{cases}y=\beta_0+\beta_1x_1+\dotsc+\beta_mx_m+\epsilon\\\epsilon\backsim N(0,\sigma^2)\end{cases} {y=β0+β1x1+…+βmxm+ϵϵ∽N(0,σ2)记 X = [ 1 x 11 … x 1 m ⋮ ⋮ … ⋮ 1 x n 1 … x n m ] , Y = [ y 1 ⋮ y n ] ϵ = [ ϵ 1 … ϵ n ] T , β = [ β 0 β 1 … β m ] T X=\begin{bmatrix}1&x_{11}&\dotsc &x_{1m}\\\vdots&\vdots&\dotsc&\vdots\\1&x_{n1}&\dotsc\ & x_{nm}&\end{bmatrix},Y=\begin{bmatrix}y_1\\\vdots\\y_n\end{bmatrix}\\\epsilon=\begin{bmatrix}\epsilon_1&\dotsc&\epsilon_n\end{bmatrix}^T,\beta=\begin{bmatrix}\beta_0&\beta_1&\dotsc&\beta_m\end{bmatrix}^T X=⎣⎢⎡1⋮1x11⋮xn1……… x1m⋮xnm⎦⎥⎤,Y=⎣⎢⎡y1⋮yn⎦⎥⎤ϵ=[ϵ1…ϵn]T,β=[β0β1…βm]T
则模型可表示为: { Y = X β + ϵ ϵ ∽ N ( 0 , σ 2 E n ) \begin{cases}Y=X\beta+\epsilon\\\epsilon\backsim N(0,\sigma^2E_n)\end{cases} {Y=Xβ+ϵϵ∽N(0,σ2En)其中, E n E_n En为n阶单位阵。
仍用最小二乘法估计,估计值为 β ^ j \hat\beta_j β^j,使当 β j = β ^ j \beta_j=\hat\beta_j βj=β^j,误差平方和最小。由偏导数为0得正规方程组 X T X β = X T Y X^TX\beta=X^TY XTXβ=XTY X X X为满秩矩阵时解得 β ^ j = ( X T X ) − 1 X T Y \hat\beta_j=(X^TX)^{-1}X^TY β^j=(XTX)−1XTY,将 β ^ j \hat\beta_j β^j代回原模型得到 y 的估计值 y ^ \hat y y^,拟合误差 e = Y − Y ^ e=Y-\hat Y e=Y−Y^称为残差,作为随机误差 ϵ \epsilon ϵ的估计,而 Q = ∑ i = 1 n e i 2 Q=\sum\limits_{i=1}^{n}e_i^2 Q=i=1∑nei2称为残差平方和。
不加证明地给出以下结果:
(i) β ^ \hat\beta β^是 β β β的线性无偏最小方差估计。指的是 β ^ \hat\beta β^是 Y Y Y的线性函数; β ^ \hat\beta β^的期望等于 β β β;在β的线性无偏估计中, β ^ \hat\beta β^的方差最小。
(ii) β ^ \hat\beta β^服从正态分布 β ^ ∽ N ( β , σ 2 ( X T X ) − 1 ) \hat\beta\backsim N(\beta,\sigma^2(X^TX)^{-1}) β^∽N(β,σ2(XTX)−1)记 ( X T X ) − 1 = ( c i j ) n × n (X^TX)^{-1}=(c_{ij})_{n\times n} (XTX)−1=(cij)n×n
(iii)对残差平方和 Q Q Q, E Q = ( n − m − 1 ) σ 2 EQ= (n − m −1)σ^2 EQ=(n−m−1)σ2,且 Q σ 2 ∽ χ 2 ( n − m − 1 ) \frac{Q}{\sigma^2}\backsim\chi^2(n-m-1) σ2Q∽χ2(n−m−1)
由此得到 σ 2 \sigma^2 σ2的无偏估计 s 2 = Q n − m − 1 , s^2=\frac{Q}{n-m-1}, s2=n−m−1Q,称 s 2 s^2 s2剩余方差(残差的方差), s s s称为剩余标准差。
(iv)对总平方和SST进行分解,有SST=Q+U, Q是残差平方和(SSE),U称为回归平方和(SSR)。
线性关系是否存在是需要检验的: H 0 : β j = 0 F = U / m Q / ( n − m − 1 ) ∽ F ( m , n − m − 1 ) H_0:\beta_j=0\\F=\frac{U/m}{Q/(n-m-1)}\backsim F(m,n-m-1) H0:βj=0F=Q/(n−m−1)U/m∽F(m,n−m−1)在显著性水平 α α α下有上 α α α分位数 F α ( m , n − m − 1 ) F_\alpha(m,n − m −1) Fα(m,n−m−1),若 F < F α ( m , n − m − 1 ) F
一些其他衡量y与x是否相关的指标:
复判断系数 R 2 = U S S T R^2=\frac{U}{SST} R2=SSTU,
复相关系数 R = R 2 R=\sqrt{R^2} R=R2,通常, R 大于0.8(或0.9)才认为相关关系成立。
当上面的 H 0 H_0 H0被拒绝时, β j β_j βj不全为零,但是不排除其中若干个等于零。所以应进一步作如下m +1个检验: H 0 ( j ) : β j = 0 t j = β ^ j / c j j Q / ( n − m − 1 ) = t ( n − m − 1 ) H_0^{(j)}:\beta_j=0\\t_j=\frac{\hat\beta_j/\sqrt{c_{jj}}}{\sqrt{Q/(n-m-1)}}=t(n-m-1) H0(j):βj=0tj=Q/(n−m−1)β^j/cjj=t(n−m−1)若 ∣ t j ∣ < t α 2 ( n − m − 1 ) |t_j|\lt t_{\frac{\alpha}{2}}(n-m-1) ∣tj∣<t2α(n−m−1),接受 H 0 ( j ) H_0^{(j)} H0(j);否则,拒绝。
β j \beta_j βj的置信度为 1 − α 1−α 1−α的置信区间为 β ^ j − t α 2 ( n − m − 1 ) S c j j ≤ β j ≤ β ^ j + t α 2 ( n − m − 1 ) S c j j \hat\beta_j-t_{\frac{\alpha}{2}}(n-m-1)S\sqrt{c_{jj}}\leq\beta_j\leq\hat\beta_j+t_{\frac{\alpha}{2}}(n-m-1)S\sqrt{c_{jj}} β^j−t2α(n−m−1)Scjj≤βj≤β^j+t2α(n−m−1)Scjj其中 s = Q ( n − m − 1 ) s=\sqrt{\frac{Q}{(n-m-1)}} s=(n−m−1)Q
给定 α α α可以算出 y 0 y_0 y0的预测区间(区间估计),结果较复杂,但当n较大且 x 0 i x_{0i} x0i接近平均值 x ˉ i \bar x_i xˉi时, y 0 y_0 y0的预测区间可简化为 [ y ^ 0 − z α 2 s , y ^ 0 + z α 2 s ] [\hat y_0-z_{\frac{\alpha}{2}}s,\hat y_0+z_{\frac{\alpha}{2}}s] [y^0−z2αs,y^0+z2αs] y 0 y_0 y0的区间估计方法可用于给出已知数据残差 e i e_i ei的置信区间,残差服从均值为零的正态分布,所以若某个残差的置信区间不包含零点,则认为这个数据是异常的,可予以剔除。
b = r e g r e s s ( Y , X ) b=regress(Y,X) b=regress(Y,X),b为回归系数估计值 β ^ i \hat\beta_i β^i;
[ b , b i n t , r , r i n t , s t a t s ] = r e g r e s s ( Y , X , a l p h a ) [b,bint,r,rint,stats]=regress(Y,X,alpha) [b,bint,r,rint,stats]=regress(Y,X,alpha),alpha为显著性水平(缺省时设定为0.05),b,bint为回归系数估计值和它们的置信区间,r,rint 为残差(向量)及其置信区间,stats 是用于检验回归模型的统计量,有四个数值,第一个是 R 2 R^2 R2,第二个是 F ,第三个是与F对应的概率p,p<α拒绝H0,回归模型成立,第四个是残差的方差 s 2 s^2 s2。
残差及其置信区间可以用 rcoplot(r,rint)画图。
从数据的散点图上发现y与x呈较明显的二次(或高次)函数关系,或者用线性模型的效果不太好,就可以选用多项式回归。
一元多项式回归可用命令polyfit实现,详情可在matlab中实验help polyfit命令。
rstool(x,y,model,alpha),详情可在matlab中实验help rstool命令
研究多个变量之间的线性相关程度时,单纯使用两两变量的简单相关系数常具有虚假性。因为简单相关系数只考虑了两个变量之间的相互作用,而没有考虑其它变量对这两个变量的影响。为了更准确、真实地反映变量之间的相关关系,统计学中定义了偏相关系数(又称净相关系数)
考虑下面两个回归模型: y i = c 0 + c 2 x i 2 + … + c m x i m + ϵ i ′ x i 1 = d 0 + d 2 x i 2 + … + d m x i m + ϵ i ′ ′ y_i=c_0+c_2x_{i2}+\dotsc+c_mx_{im}+\epsilon'_i\\x_{i1}=d_0+d_2x_{i2}+\dotsc+d_mx_{im}+\epsilon''_i yi=c0+c2xi2+…+cmxim+ϵi′xi1=d0+d2xi2+…+dmxim+ϵi′′可分别求得其残差向量 u , v u,v u,v,求这两个向量的简单相关系数称为偏相关系数。
在确定自变量系统时,一是采用穷举法,列举出所有可能的潜在自变量;再根据自变量的不同组合,选取最合适的模型。由于每个变量都有可能被选用或不被选用,所以,穷举法要拟合与比较的方程个数为 2 m 2^m 2m(m为潜在自变量的个数)。当备选的潜在自变量数目很大时,则采用穷举方法就完全不现实了。下面我们介绍一些有效的变量筛选方法。
决定一个新的变量是否有必要进入模型,或者判断某个变量是否可以从模型中删除时,我们首先要问的问题是:这个变量能否对y提供显著的附加解释信息?回答这个问题的方法是采用偏F检验。
m 个自变量拟合的模型称为全模型,减去一个自变量,m −1个自变量拟合模型称为减模型,全模型的复判定系数为 R 2 R^2 R2,减模型的复判定系数记为 R j 2 R_j^2 Rj2。定义 Δ R j 2 = R 2 − R j 2 ΔR_j^2 = R^2 − R_j^2 ΔRj2=R2−Rj2,若 Δ R j 2 ΔR_j^2 ΔRj2几乎为零,说明增加 x j x_j xj,对y的解释能力没有显著提高;否则,若 Δ R j 2 ΔR_j^2 ΔRj2显著不为零,则 x j x_j xj就可以为回归模型提供显著的解释信息。
起始时,模型中没有任何变量。然后分别考虑y与每一个自变量的一元线性回归模型。
对所有的这m个模型进行F检验,选择F值最高者作为第一个进入模型的自变量。
然后,对剩下的m−1个变量分别进行偏F检验(即以y与 x i 1 x_{i_1} xi1的模型为减模型,以y与 x i 1 x_{i_1} xi1以及另一个自变量 x j x_j xj的模型为全模型)。如果至少有一个 x i x_{i} xi通过了偏F检验,则在所有通过偏F检验的变量中,选择 F j F_j Fj值最大者作为第二个被选的自变量,进入模型(记为 x i 2 x_{i_2} xi2)。
继续上述步骤,直到在模型之外的自变量均不能通过偏F检验,则算法终止。
在算法的起步,所有的自变量都被包含在模型之中(这是起始的全模型)。
然后,依次对每一个自变量做偏F检验(以去掉变量 x j x_j xj的模型为减模型)。
如果所有的自变量都通过了偏F检验,则计算停止,所有自变量被包含在模型中。如果有若干自变量未能通过偏F检验,则选择出 F j F_j Fj值最小的自变量,将它从模型中删除。对剩下的(m −1) 个自变量拟合一个全模型。
然后,重新对每一个模型中的自变量进行偏F检验。在没有通过检验的自变量中,选择 F j F_j Fj值最小者,将它从模型中删除。
重复以上步骤,直到模型中包含的所有自变量都能通过偏 F 检验,则算法终止。
逐步回归法是向前选择变量法和向后删除变量法的一种结合。
首先,求y与每一个 x i x_i xi的一元线性回归方程,选择F值最大的变量进入模型。
然后,对剩下的m−1个模型外的变量进行偏F检验(设定 x i 1 x_{i_1} xi1已在模型中),在若干通过偏F检验的变量中,选择 F j F_j Fj值最大者进入模型。
再对模型外的m−2个自变量做偏F检验。在通过偏F检验的变量中选择 F j F_j Fj值最大者进入模型。接着对模型中的三个自变量分别进行偏F检验,如果三个自变量都通过了偏F检验,则接着选择第四个变量。但如果有某一个变量没有通过偏 F 检验,则将其从模型中删除。
重复上述步骤,直到所有模型外的变量都不能通过偏F检验,则算法终止。为了避免变量的进出循环,一般取偏F检验拒绝域的临界值为 F 进 > F 出 F_进>F_出 F进>F出,式中, F 进 F_进 F进 为选入变量时的临界值; F 出 F_出 F出为删除变量时的临界值。 F 进 F_进 F进和 F 出 F_出 F出的检验水平值可以自定,也可以是备择的。常见的检验水平值为 α 进 = 0.05 , α 出 = 0.1 α_进 = 0.05,α_出 = 0.1 α进=0.05,α出=0.1。
有时某些回归系数的估计值的绝对值差异较大,有时回归系数的估计值的符号与问题的实际意义相违背等。研究结果表明,产生这些问题的原因之一是回归自变量之间存在着近似线性关系,称为复共线性(Multicollinearity)。
数据标准化后,回归模型中常数项为零。不失一般性,我们研究以下回归模型。标准化数据之后有
岭回归(Ridge Regression)方法可以显著改善设计矩阵列复共线性时最小二乘估计量的均方误差,增强估计的稳定性。这个方法在计算数学称为阻尼最小二乘。
主成分回归的理论见chapter.26
Matlab统计工具箱中的nlinfit,nlparci,nlpredci,nlintool,不仅给出拟合的回归系数,而且可以给出它的置信区间,及预测值和置信区间等。