(1)广义最小二乘法
设模型为
Y = Xβ + ε
其中E(ε) = 0,Var(ε) = E(εε′) =σ 2Ω≠σ 2I,假设Ω已知,且Ω≠ I ,违反了线性回归模型的经典假定条件,所以应该对模型进行适当修正。因为Ω是一个n 阶正定矩阵,根据线性代数的知识,必存在一个非退化n×n 阶矩阵M使下式成立。MΩM′= I n×n 可得:M′M= Ω-1 用M左乘式回归模型两侧得MY =MXβ +Mε.令Y*=MY, X*=MX, ε*= Mε , 得Y* = X*β + ε*则ε*的协差阵为Var(ε* ) = E(ε*ε*′ ) = E(Mεε′M′) = σ 2MΩM′=σ 2 I .
变换后模型的Var(ε* )是一个纯量对角矩阵。对变换后模型进行OLS 估计,得到的是β 的最佳线性无偏估计量。这种估计方法称作广义最小二乘法。β 的广义最小二乘估计量(generalized least squares estimator)为
可以证明广义最小二乘估计量 * ˆβ 为参数β 的最优线性无偏估计量.
续上例:
我们利用Glejser 方法进行检验,发现残差绝对值与Xi 存在| εi ˆ | =0.2576 (X i)1/2。把每个变量都除以0.2576 (X i)1/2,对变换后的数据做散点图
> agricul<-read.csv(file="11-2.csv") > y=agricul[,2] > x=agricul[,1] > ys<-y/(0.2576*sqrt(x)) > xs<-x/(0.2576*sqrt(x)) > plot(xs,ys)
可以看出已经不像变换前的散点图那样呈喇叭状。然后,我们对变换后的数据回归,做残差图
> lm.sa<-lm(ys~xs)> summary(lm.sa)Call:lm(formula = ys ~ xs)Residuals: Min 1Q Median 3Q Max -1.8039 -0.8791 -0.0481 0.6898 2.1778 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) -0.099212 0.539252 -0.184 0.855 xs 0.011824 0.001608 7.351 6.59e-08 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 1.097 on 27 degrees of freedomMultiple R-squared: 0.6668, Adjusted R-squared: 0.6545 F-statistic: 54.04 on 1 and 27 DF, p-value: 6.592e-08> plot(xs,resid(lm.sa)) #残差图发现残差图也不呈喇叭型分布,说明基本消除了异方差。
(2)取对数
在实际中,很多情况,通过对模型的变量取对数降低异方差性的影响。比如
这是因为经过对数变换后的线性模型,其残差e *表示相对误差,而相对误差往往比绝对误差有较小的差异。变量都取对数,然后画散点图
> lny<-log(y)> lnx<-log(x)> plot(lnx,lny)其散点图就不像取对数前呈喇叭状。
> lm.lna<-lm(lny~lnx)> summary(lm.lna)Call:lm(formula = lny ~ lnx)Residuals: Min 1Q Median 3Q Max -0.62287 -0.25197 -0.02322 0.32754 0.50315 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) -4.18013 0.48969 -8.536 3.77e-09 ***lnx 0.96253 0.05695 16.901 6.93e-16 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 0.3235 on 27 degrees of freedomMultiple R-squared: 0.9136, Adjusted R-squared: 0.9104 F-statistic: 285.6 on 1 and 27 DF, p-value: 6.934e-16> plot(lnx,resid(lm.lna)) #残差图我们对取对数后的数据回归,做残差图,发现残差图(图11-12)也不呈喇叭型分布,说明基本消除了异方差。