SAS第三十三课逐步回归分析.docx
《SAS第三十三课逐步回归分析.docx》由会员分享,可在线阅读,更多相关《SAS第三十三课逐步回归分析.docx(32页珍藏版)》请在冰豆网上搜索。
SAS第三十三课逐步回归分析
逐步回归分析
逐步回归分析
在一个多元线性回归模型中,并不是所有的自变量都与因变量有显著关系,有时有些自变量的作用可以忽略。
这就产生了怎样从大量可能有关的自变量中挑选出对因变量有显著影响的韶分自变量的问题。
在可能自变量的整个集合有40到60个,甚至更多的自变量的那些情况下,使用“最优”子集算法可能并不行得通。
那么,逐步产生回归模型要含有的X变量子集的自动搜索方法,可能是有效的。
逐步回归方法可能是应用最广泛的自动搜索方法。
这是在求适度“好”的自变量子集时,同所有可能回归的方法比较,为节省il•算工作量而产生的。
本质上说,这种方法在每一步增加或剔除一个X变量时,产生一系列回归模型。
增加或剔除一个X变量的准则,可以等价地用误差平方和缩减量、偏相关系数或F统计量来表示。
无疑选择自变量要靠有关专业知识,但是作为起参谋作用的数学工具,往往是不容轻视的。
通常在多元线性模型中,我们首先从有关专业角度选择有关的为数众多的因子,然后用数学方法从中选择适当的子集。
本节介绍的逐步回归法就是人们在实际问题中常用的,并且行之有效的方法。
逐步回归的基本思想是,将变量一个一个引入,引入变量的条件是偏回归平方和经检验是显著的,同时每引入一个新变量后,对已选入的变量要进行逐个检验,将不显著变量剔除,这样保证最后所得的变量子集中的所有变量都是显著的。
这样经若干步以后便得“最优”变量子集。
逐步回归是这样一种方法,使用它时每一步只有一个单独的回归因子引进或从当前的回归模型中剔除。
Efrojnnoson(1966)编的程序中,有两个尸水平,记作化,和巧在毎一步时,
只有一个回归因子,比如说久;,如果剔除它可能引起斤SS的减少不超过残差均方•畑(即
ESS/(n)的7『倍,则将它剔除:
这就是在当前的回归模型中,用来检验02=0的尸比={RSS(册,兀2,…心1,兀)一RSS(X|,*2,…兀・|))/MSE是小于或等于打“。
若剔除的变量需要选择,则就选择便磁减少最少的那一个(或等价的选择尸比最小的)。
用这种方式如果没有变虽被剔除,则开始引进一个回归因子,比如尤,如果引进它后使斤SS的增加,至少是残差均方的凡/咅,则将它引进。
即若在当前模型加兀项后,为了检验的尸比,尸3®时,则引进X,其次,若引进的变量需要选择.则选择尸比最大的。
程序按照上面的步骤开始拟合,当没有回归因子能够引进模型时,该过程停止。
变量选择的方法
若在回归方程中增加自变量尤,称为“引入”变量!
:
,将已在回归方程中的自变量舟从回归方程中删除,则称为“剔除”变量咼。
无论引入变量或剔除变量,都要利用尸检验,将
显著的变量引入回归方程,而将不显著的从回归方程中剔除。
记引入变量尸检验的临界值为/;$(进),剔除变量尸检验的临界值为耳,(出),一般取&沙曲它的确定原则一般是对
A个自变量的0个GW®,则对显著性水平dfi=l,砖N-m-1的尸分布表的值,记为
Z则取耳尹一般来说也可以宜接取化^二厲尸或。
当然,为了回归方程中还能够多进入一些自变量,甚至也可以取为或。
变量增加法
首先对全部&个自变量,分别对因变;1F建立一元回归方程,并分别计算这&个一元回
归方程的&个回归系数F检验值•记为{尺,用厂尺},选其最大的记为F=max{/V■斥•…斥h若有巧05则首先将心引入回归方程,不失一般性,设A;就是心
接着考虑£分別与屁J;与因变量F二元回归方程,对于这k-l个回归方程中左…必的回归系数进行尸检验,汁算得的尸值,并选其最大的尸值巧2,若F;*则接着就将不引入回归方程,不失一般性,设£就是X。
对已经引入回归方程的变量心和X,如同前而的方法做下去,直至所有末被引入方程的变量的尸值均小于行时为止。
这时的回归方程就是最终选;^的回归方程。
显然,这种增加法有一定的缺点•主要是,它不能反映后来变化的情况。
因为对于某个自变量,它可能开始是显著的,即将其引入到回归方程,但是,随着以后其他自变量的引入,它也可能又变为不显著的了,但是,也井没有将其及时从回归方程中剔除掉。
也就是增加变量法,只考虑引入而不考农剔除。
3.变量减少法
与变量增加法相反,变量减少法是首先建立全部自变量兀总…•,瓦对因变变量y的回归方程,然后对&个回归系数进行F检验,记求得的尸值•为{F「F打・・F;h选其最小的记为
若有F:
WJ则可以考虑将自变量丄;从回归方程中剔除掉,不妨
设I;就取为爲。
再对总再•••";对因变量y建立的回归方程中重复上述过程,取最小的尸值为巧2,若有F;WFz则将a;也从回归方程中剔除掉。
不妨设石就是X。
重复前面的做法,直至在回
归方程中的自变量尸检验值均大于行r,即没有变量可剔除为止。
这时的回归方程就是最终的回归方程。
这种减少法也有一个明显的缺点,就是一开始把全部变量都引入回归方程,这样il•算量比较大。
若对一些不重要的变量,一开始就不引入,这样就可以减少一些计算。
4.变量增减法
前而的二种方法各有苴特点,若自变量兀疋,•…,兀完全是独立的,则可结合这二种方法,但是,在实际的数据中,自变量几之间往往并不是独立的,而是有一泄的相关性存在的・这就会使得随着回归方程中变量的增加和减少,某些自变量对回归方程的贡献也会发生变化。
因此一种很自然的想法是将前二种方法综合起来,也就是对每一个自变:
g,随着其对回归方程贡献的变化,它随时可能被引入回归方程或被剔除出去,最终的回归模型是在回归方程中的自变量均为显著的,不在回归方程中的自变量均不显著。
引入变量和剔除变量的依据
如果在某一步时,己有/个变量被引入到回归方程中,不妨设为X'.X"…样,、即已得回归方程
/=0。
+0必+0求2+…+0必
并且有平方和分解式
TSS=RSS+ESS
显然,回归平方和RSS及残差平方和ESS均片引入的变量相关。
为了使其意义更淸楚
起见,将集分别设为)及£SS(X|.X2,…,Xj下而我们来考虎,又有一个变量X.mWQ被引入回归方程中•这时对于新的回归方程所对应的平方和分解式
735=A5S{X|.X2,…,XyXf)+£SS(X「X2,…,X,,Xp
当变量A;引入后,回归平方和从RSS(X、"・・")增加到宓(X|,X2•….Xf.
Xf〉,而相应的残差平方和却从ESS(X\.X2•…降到ESS(X\、X2「rX,、Xf),
并有
7?
SS(X|.X2,…,X「Xf)-/i:
SS(X|.X2•…,X/)
=ESS(X"X2「・,X()-£SS(X|,X2・・「X,>Xj)
记叱=RSS(X门X?
…,X"XJ-RSS(Xi,X2XJ,它反映了由于引入Xf后,Xf对
回归平方和的贡献,也等价于引入Xf后残差平方和所减少的量,称其为Xj对因变量y的方差贡献,故考虑检验统计量
F=
"ESSgX"…N、XMN亠0
加中N为样本量./是已引入回归方程的变量个数,这时若有Fj>“则可以考虑将自变量Xf引入回归方程,否则不能引入。
实际上大于®的变量开始时可能同时有几个,那么是否将它们都全部引入呢实际编程序时并不是一起全部引入,而是选英最大的一个引入回归方程。
关于剔除变量,如果已有/个变量被引入回归方程,不失一般性,设英为X|.X2「・・Xl所对应的平方和分解公式为:
75S=/?
5S(X"X2,・・・,Xj;・・,XJ+ESS(X|,X2,・・・,Xfj・・XJ
:
1^中z=t2,7为了研究每个变量在回归方程中的作用,我们来考虑分別删掉逅
G-b2,....2后柑应的平方和分解公式为:
7:
SS=RSS(E,X2,…XtX』・・,XJ+£5S(X|9X2「・,XtX3・・・,XJ
这时,回归平方和从RSS(X|,X"…,X门…,XJ降为RSS(X门XxjXaX阳…,X,),同
时残差也发生相应的变化。
残差平方和从ESS(X\.X"…、Xj、…XJ增加到
ESS(X|,X”「X“Xf"・・,X,),Xf对回归平方和的贡献,也等价于删除Xj后残差平方
和所增加的量,同理可表示为:
W;=RSS(X|,X2j・・,XF・・X,)-RSS(X「X2,・「Xi,Xj+「・・X/)
=ESS(X|,X2,・「XH,X,+「・.XJ-ESS(Xt,X2j「Xf,-XJ
与前同理,我们来构造检验统计量
F_叱区,X2,…,X门…必)
'ESS(XpX”・・,Xf,…Xj/(N-/-1)
显然,这时彳越小•则说明Xf在回归方程中起的作用(对回归方程的贡献)越小,也就是若有Fj若有
片>爲(则可以不考虑剔除,而开始考虑引入。
四、逐步回归在使用过程中要注意的问题
逐步回归在计算过程中,进入和剔除变量规则的差别在例子中有可能得到说明。
例如,可以根据打统讣量中•畑的自由度来使用不同的打丿0F…但是,往往并不使用这种提纯量,而是使用固;4^的尸值,因为在搜索过程的重复检验中,并不可能得到精确的概率解释。
最低可接受夬不应小于最髙可接受凡“,,否则就有可能重复进入和剔除一个自变量。
自变量进入模型的顺序并不反映它们的重要程度。
例如.第一个进入模型的逅,最终却可能被剔除。
我们使用的逐步回归程序,在每个阶段上都打印出偏相关系数。
对于筛选变量来说,使用这些相关系数与使用歼值是等价的,事实上,有些程序就是使用偏相关系数来筛选变量的。
进入和剔除一个变量的尸限不必根据近似显著性水平选世,但可以根据误差缩减量来描述性地确左。
例如,一个进入变量的尸限可以这样来说明:
变量一旦进入模型,那么,进入变量的边际误差缩减量至少应该是剩余误差均方的二倍。
逐步回归方法的一个局限是预先假宦有单一的最优/变量子集,从而来进行识别。
正如前面已经提到的,常常并没有唯一的最优子集。
因此,一些统计学家建议,求得逐步回归的解后,拟合所有可能与逐步回归解的自变量个数相同的回归模型,以研究是否存在更好的龙变量子集。
逐步回归方法的另一个缺点是当龙变量高度相关时,有时会得到不合理的“最优”子集。
也有人提出好几种其他寻找“最优”自变量子集的自动搜索方法。
我们这里提一下其中的两种。
但这两种方法都还未被接受为逐步搜索方法。
其中之一为向前选元法,这种搜索方法只是逐步回归方法的简化・略去了检验进入模型的变量是否应被剔除这一步。
其中之二为向后剔除法•这种搜索方法与向前选元法根反。
它从包括所有X变量的模型开始,挑出F值最
小的那个变量。
例如,假;d^Xj为F值最小的那个变量,有:
如果最小的F,值小于预泄限,就剔除这个变量,然后拟合剩余的k-\个自变量的模型,挑选下一个待剔除元。
重复这种过程,宜至没有自变量可以被剔除。
因为向后剔除法是从最大可能模型开始的,所以它比向前选元法需要更多的计算量。
但是,向后剔除法有一个优点,它可以使使用者明白含有许多变量模型的复杂性。
五、stepwise逐步回归过程
stepwise过程对逐步回归提供了九种方法。
当你有许多自变量且想找出哪些自变量是该
选入回归模型时,stepwise是有用的。
由于stepwise叮以使你深入地了解自变量与因变量或响应变量之间的关系,所以它对考察分析是很有帮助的。
但是,stepwise不能保证给你“最好”的模型,甚至具有最大斤的模型也不一定是“最好”的,并且靠这些均值演变得来的模型没有一个可以保证它精确地描述了真实世界的过程。
stepwise与rsquare以及其他过程是不同的。
rsquare对所有自变:
S的组合找出R.所以它可以指出具有最大斤的模型。
而stepwise在挑选变量时选择下面描述的方法,所以,当stepwise判断模型时,它打印一份多个回归报告。
1.stepwise过程提供的九种模型
1)n皿e(全回归模型)。
没有对回归变量进行筛选,建立y与全部自变量的全回归模型。
2)/hrirarT(向前选择)。
向前选择技术以模型中没有变量开始,对每个自变量,forward计算反映自变量对模型的贡献的F统计量。
这些尸统计量与model语句中给出的slcntry=水平上的值相比较,如果尸统讣虽的显著水平没有一个比slcntry=水平上(如果缺省slcntry=这个参数,则显著水平假设为)的值大,则/hrtrart/停止。
否则,forward1^模型中加入具有最大F统讣量的变量,然后/brrrarS再计算这些变量的F统计量直到剩下的变量都在模型的外而,再重复估计过程。
变量就这样一个接一个地进入模型直到剩下的变S没有一个可以产生显著的尸统计量。
一旦一个变量进入了模型,它就不再出去了。
3)backward(向后淘汰)。
向后淘汰技术以计算含有全部自变量的模型的统il•虽为开始。
然后变量一个接一个地从模型中剔除,直到留在模型中的所有变量产生的尸统汁量的显著水平在slstay^水平上(如果缺省slstay^这个参数,则显著水平假设为九在每一步,剔除对模型贡献最小的变量。
4)stepwise(逐步回归,向前且向后九逐步方法是向前选择的修正。
对已在模型中的变S,不一必须一直在模型中,这点与向前选择法是不同的。
stepwise按照向前选择方法选入变量后,还考察模型中所包含的所有变量井剔除使得F统计量的显著水平不在sista尸水平上的变;g。
只有在完成检验和必要的剔除之后,其他变量才可再进入模型。
当模型外的变量没有一个便F统计量的显著在slcntry^水平上且模型中的每个变量在shfa产水平上显著,或加到模型中的变量是刚刚剔除的变量时候,逐步处理便结束了。
5)
”maxr(具有对偶切换的向前选择)。
最大R改良技术是占优势的逐步技术,它几乎与所有可能的回归一样好。
不象上而三种技术,这个方法不是落在单个模型上,而是试着找出最佳一变量模型、最佳二变量模型等等,但它不能保证对每个S度都能找到具有最大7^的模型。
如.vr方法先找出一个产生最大彳值的变虽,然后再加入另一个次最大彳值的变量,从而形成二变量的模型。
形成二变量的模型之后,将模型中的变量与模型外的变量相比较,以决定是否務去一个变量而以另一个能生成更大尸值的变量来代替。
全部比较结束后,便得到了最佳二变量模型。
依次往下,便得到最佳三变量模型等等。
7)minr(具有对偶搜索的向前选择)。
最小斤增量法非常类似于5,只是选择准则为产生最小斤增量。
对模型中一个已知的变虽数,maxr和血.皿•通常产生同样的“最佳”模型,但是加皿■在每步中考虑较多的模型。
8)rsguare{尸选择法)。
按给样本的斤大小准则选择最优的自变量子集,但不能保证对总体或其他样本而言是最优的。
用户可以规立出现在子集中自变量的最大和最小个数及被选择的毎种子集的个数"斤选择法总能够对所考虑变量的每种变量个数找到具有最大用的模型,但需要很多的汁算时间。
9)adJrsQ(修正斤选择法)。
该方法类似于rsquare法,只是对于选择模型使用的准则为
modelweightby
修正斤统计量。
修正公式见式0
10)Mallows的G统计量。
G统讣量是由Mallows提岀的作为选择模型的判别式的变量。
G是一个误差平方总和的量度:
英中,尸是模型中包括截距项的参数个数小SE是满模型时均方误差,於5^是具有尸个自变屋(包括截距项)回归模型的差平方和。
作G与尸的曲线图,Matlows建议取G首次接近尸的地方的模型。
2.procstepwise过程控制语句
stepwise过程一般由下列语句控制:
procstepwisedata=数据集;
1*1变§=自变a"选项列表>;
变S;
变S;
run
stepwise至少需要一个model语句。
by语句和weight语句可以放在任何地方。
1)modelin句的〈/选项列表〉。
stepwise中可以有任意多个modelin句。
modelin句中的选项如下:
naint—不产生一般在模型中自动生成的截距参数。
non—请求全回归模型。
/"oEird或f请求向前选择法。
backward或b一^请求向后淘汰法。
stepwise—求逐步技术,这个任选项是预置的。
T——请求最大用增量法.
aim—请求最小R增量法。
rsquare请求#最大准则法e
■gq一一请求修正尺最大准则法.
cp—请求Mallows的G统计量法。
slentr^值一指出向前选择和逐步技术中选择变量进入模型的显著水平。
如果省略,那么stepwise过程便对向前选择技术置slentry=,对逐步技术置slentry=^
slstay^值一一指出向后淘汰与逐步技术中变量留在模型里的显著水平。
如果省略,则逐步技术用,向后淘汰技术用。
includ^n—强迫头77个因变量总是在模型中。
选择技术由toodel语句中其他变fi来完成.
st*—以含有model语句中头S个自变量的模型为开始,进行比较、选择过程。
理所当然地,没有一个被估计的模型含有不足S个的变量。
此仅应用于5或血.处模型。
航。
尸S—当它找到"最佳”S变量模型之后,stTse便停止.其中S是"如
Stepvis«ProcedureforD@pendentVariableOXYGEX
DF
SumofSquares
MeanSquare
F
Prob〉F
Regression
1
632.632.
Error
29
21S.7.
Total
30
851.
Parameter
Standard
Typ・II
Variable
Estimate
Error
SumofSquares
F
Prob>F
INTERCEP
S2.3.
3443.
RUNTIME
-3.0.
632.
Bounds
oncondition
number:
1,
1
Step2
VariableAGEEntered
R-square=0.76121693C(p)=
12.
DF
SumofSquares
MeanSquare
F
Prob>F
Regression
9
■
650.325.
Error
28
200.7.
Total
30
851.
Parameter
Standard
Typ«II
Variable
Estimate
Error
SumofSquares
F
Prob>F
IXTERCEP
88.5.
1913.
AGE
-0.
17.
RUNTIME
-3.0.
571.
Bounds
oncondition
number:
Step3
VariableRLXPULSEEntered
R-square=0.81109)16C(p)=
&
DF
SumofSquares
MeanSquare
F
Prob>F
Regression
3
690.230.
Error
27
160.5.
Total
30
851.
Parameter
Standard
Typ«II
Variable
Estimate
Error
SumofSquares
F
Prob>F
IXTERCEP
111.10.
709.
AGE
-0.
42.
RVXPULSE
-0.
39.
RUNTIME
■2.0.
370.
Bounds
oncondition
number:
R-square=0.71338010C(p)=13.
RUNTIMEEntered
Step1Variable
在输出结果报告中,提供了进入回归变量逐次改变后回归方差分析和拟合的信息。
在报告的最后韶分,列出了用逐步回归法挑选自变量过程,四个自变量按21血也Q«runpulse,maxpulsc先后次序进人回归模型。
所有进入回归的变量在的水平下是显著的,未进人回归的侯选变量在的水平下是不显著的。
同时还概要地提供了每个回归模型变化时的用值增加值、斤值、6F值、相应的尸统i|•量、P值。
在逐步回归的每步细节中,还列出了条件指数的最小值最大值,以及每一个回归变量的类型2平方和。
age变量进入模型后,斤值的增加值
(Partial斤,称为偏片或部分斤)il•算为
(一)/=。
如果按CP值选择最优子集,随着进入回归模型中的自变量个数尸从2到5个(包括截距),相应6F值从大到小为13.、12.、6.和4.,按照Mallows提出的回归模型最优自变量个数的选择准则,仔=4.是最接近自变量个数庄5的模型。
疗的计算公式见式,当方5时,於13&/—⑶一2X5)=4.0因此,用逐步回归方法及6F值确认的拟合回归模型为:
oxygcT^98.—+
条件指数(conditionnumber)为最大特征值和每个特征值之比的平方根。
我们看到当模型进入第四个自变Mmaxpulse时,最大的条件指数从较小变成了较大,说明存在一定程度的共线性,根据前而例的分析,我们诊断这个共线性方程可能为runpulsc-maxpulsc^.
在向前、向后或逐步回归的变量选择过程中,都有一个判断是否可进入或剔除的显著水平,在程序中是分別由model语句的选项slcntry^和slstay^设楚的,缺省的情况见表所示。
表缺省的入选和剔除显著水平
—
forward
backward
stepwizc
sientry
y
slstay
下而我们提供全部可能回归的程序,并且以^^'值的大到小排序输岀。
procregdata=fitness;
modeloxygen=ageweightrstpulsemaxpulserunpulseruntime
selection=rsquareb;
run
在上述程序中,model语句的选项selection=rsquare,表示请求尸值最大法,选项b是表示要输出毎种回归的回归系数。
程序运行后,得到见表所示的结果。
表用R'排序全部可能的变量数的逐步回归分析结果
X=31RegressionModelsforDependentVariable:
OXYGEN
Parasieter
Numberin
R-squareEstimates
Model
InterceptAGEWEIGHTRSTPUL