郭呈全,陳希鎮(zhèn)
(溫州大學數學與信息科學學院,浙江溫州325000)
主成分回歸的SPSS實現
郭呈全,陳希鎮(zhèn)
(溫州大學數學與信息科學學院,浙江溫州325000)
文章結合主成分分析和線性回歸分析的原理,利用SPSS15.0的Descriptives、Data Reduction、Linear Regression、Compute Variable模塊的功能,把主成分回歸的每一步計算過程用SPSS展現出來,并且對結果給出SAS驗證。這不僅使學生更好地掌握主成分回歸的相關知識,而且可以培養(yǎng)學生靈活使用SPSS軟件。
共線性;主成分回歸;特征值;特征向量;SPSS
在進行多元線性回歸分析時,經常會遇到自變量之間存在近似線性關系的現象,這種現象被稱為共線性[1]。當共線性嚴重時,用最小二乘法建立的回歸模型將會增加參數的方差,使得回歸方程變的很不穩(wěn)定,有些自變量對因變量影響的顯著性被隱藏起來,某些回歸系數的符號與實際意義不相符[2],回歸方程和回歸系數通不過顯著性檢驗。處理共線性的主要方法有篩選變量法、嶺回歸法、主成分回歸法、偏最小二乘法等。在文獻[2]中高惠旋使用SAS軟件對處理共線性的主成分回歸方法進行了實現,但是很多人只熟悉SPSS操作,SPSS沒有直接提供主成分回歸的模塊,文獻[3]雖然也提出使用SPSS進行主成分回歸,但是他首先使用了篩選變量法,沒能真正體現主成分回歸方法提取主成分的優(yōu)勢,而且其操作過程非常繁瑣,沒有靈活使用SPSS軟件模塊功能。本文結合主成分分析和線性回歸分析的原理,巧用SPSS15.0的Descriptives、Data Reduction、Linear Regression、Compute Variable模塊的功能,把主成分回歸的每一步計算過程用SPSS展現出來,并且對結果給出了SAS驗證。不但得出了正確結果,而且把每一步計算過程完整地呈現出來,這樣既有利學生掌握有關方面的知識,還能加深學生對統計軟件的靈活使用和掌握。
1933年,Hotelling提出主成分分析方法,主成份分析的核心思想就是通過降維,把多個指標化為少數幾個綜合指標,而盡量不改變指標體系對因變量的解釋程度。W.F. Massy于1965年根據主成份分析的思想提出了主成份回歸。如今主成份回歸方法已經被廣泛采用,成為回歸分析中解決多重共線性比較有效的方法。
設Y=(y1,y2,…,yn),假設X設計矩陣已經中心化,記λ1≥λ2≥…≥λp為X'X的特征根,Φ=(φ1,φ2,…,φp)為對應的標準正交化特征向量。主成分回歸的計算步驟是:
(1)為了使結果不受量綱的影響,先把原始數據進行標準化;
(2)求X'X的特征值和對應的標準正交化特征向量;
(3)做回歸自變量選擇。最大的特征值對應的特征向量即為第一主成分的系數,第二大的特征值對應的特征向量即為第二主成分的系數,以此類推。取幾個主成分取決于主成分對因變量的解釋程度。如果前i個特征值之和與所有特征值之和的比達到一定的程度比如85%時,就可以認為這些主分就能代替所有的自變量體系。剔除對應的特征值比較小的那些主成分。
(4)做正交變換Z=XΦ,獲得新的自變量;
(5)將剩余的成分對因變量進行普通最小二乘回歸,再返回到原來的參數,便得到因變量對原始變量的主成分回歸。
總結這些步驟可以看出:主成份回歸解決多重共線性問題是通過求特征值和特征向量達到降維來實現的。因為在降維前指標之間的多重共線性可能是由于某個指標或者少數指標所包含的信息與其他指標所包含的信息之間的相關性引起的,通過降維的處理我們提取出了主成份,就像是把指標體系所包含的信息分了類,某一大類由一個主成份來表現,這樣就消除了產生多重共線性問題的根源:信息的交迭[4]。
利用文獻[1]中的外貿數據:因變量Y為進口總額,自變量X1為國內總產值,X2為存儲量,X3為總消費。為了建立Y對自變量X1,X2和X3之間的依賴關系,收集了11組數據見表1。
表1
執(zhí)行:Analyze→Descriptives Statistics→Descriptives,將變量y,x1,x2,x3選入Variables的對話框中,選定Save standardized values as variables,即將標準化后的數據作為變量保存。見表2。
表2 描述性統計量表
描述性統計量表中顯示各變量的樣本數(N)、均數(mean)和標準差(Std.Deviation),以便于對中心化后的自變量進行完主成分回歸后還原為原始變量。
共線性就是對自變量觀測數據構成的矩陣X'X進行分析,使用各種指標反映自變量間的相關性。進行共線性診斷的方法有很多種,目前較為常用的診斷方法有:條件數(condition index)、容忍度Tolerance(或方差膨脹因子(VIF))、特征根(Eigen value)分解法。
(1)條件數:是指X'X的最大特征根與最小特征根之比k=λ1/λp,它刻畫了特征值差異的大小。一般情況下k<100,則認為復共線性很小;100≤k≤1000認為存在中等程度的復共線性;若k>1000則認為存在嚴重共線性。
(2)容忍度:以每個自變量作為因變量對其他自變量進行回歸分析時得到殘差比例,用1減去決定系數來表示(1-R2),越小說明共線性越重,T<0.1時共線性非常嚴重(陳希孺)。由此方差膨脹因子(VIF):定義VIF=1/T,VIF越大,說明共線性越嚴重。
(3)特征根分解法:對自變量進行主成分分析,若相當多維度的特征根為0,則共線性嚴重。
本例共線性診斷操作步驟如下:執(zhí)行:Analyze→Regression→Linear,在Dependent中選擇導入,在Independent中導入Zx1,Zx2,Zx3,在statistics中選中Colinearity statistics,其它選項默認,得表3。
表3 回歸系數和共線性統計量
表3給出線性回歸方程中回歸系數的估計值和共線性統計量,表中ZX1和ZX3容忍度都為0.005<0.1,并且其方差膨脹因子VIF都很大,說明它們之間存在嚴重的共線性。
表4 共線性診斷指標
從表4可以看出,條件數1.999/0.003≈666.33,故共線性程度較嚴重。從方差百分比上看,ZX1和ZX3變量間也存在明顯相關性。
執(zhí)行:Analyze→Data Reduction→Factor,選定標準化后的變量Zx1,Zx2,Zx3進入Variables中,Extraction中的選項,method選用principal components,Analyze選用covariance matrix,在提取主成分的Extract中選用Number of factor并在后面的框中填入3,提取三個主成分。在Scores中選擇Save as variables;在method中選擇reg;不進行旋轉,結果輸出如表5。
表5 主成分提取匯總表
表5顯示三個特征值分別為λ1=1.999,λ2=0.998,λ3= 0.003,前兩個特征值的累計貢獻率達到99.91%,因此剔除第三個主成分,相應的因子載荷矩陣如表6。
表6 得分矩陣
前兩個特征值λ1=1.999,λ2=0.998,對應的標準正交化特征向量分別為:
下面使用Compute Variable模塊的功能,計算第一和第二主成分。
執(zhí)行:Analyze→Transform→Compute Variable,在Target Variable中輸入Z1,在Numeric Expression中計算公式為:Z1=FAC1_1*sprt(1.999),單擊OK產生新變量Z1,同上得:
Z2=FAC2_1*sqrt(0.998),于是得:
輸出變量結果如表7。
表7 主成分表
對第一主成分Z1和第二主成分Z2做關于中心化因變量Zy的最小二乘回歸分析。
執(zhí)行:Analyze→Regression→Linear,在Dependent中選擇Zy導入,在Independent中導入Z1和Z2,做最小二乘回歸。見表8。
表8 回歸系數
回歸系數估計值為:→β1=0.690,→β2=0.191,常數項近似為零。把上面關系式代入:
Zy=0.69Z1+0.191Z2+7.07E-017,求得:
因此,Zy=0.4806Zx1+0.2298Zx2+0.4825Zx3。
y=-9.1057+0.0727x1+0.6091x2+0.1062x3。
使用SAS的REG過程,對上述數據做主成分分析,SAS程序如下:
Proc reg data=a outset=out1;
Model y=x1-x3/pcomit=1,2 outvif;
Proc print data=out1;
Run后輸出如下結果:
由SAS運行結果可以看出,這個主成分回歸中回歸系數的符號都是有意義的;各個回歸系數的方差膨脹因子均小于1.1;主成分回歸的均方根誤差是:RMSE=0.55001,雖然比最小二乘的均方根誤差(RMSE=0.48887)有所增加,但增加很小。在刪去第三個主成分(PCOMIT=1)后的主成分回歸方程為:
y=-9.1301+0.7278x1+0.960922x2+0.10626x3
這一結果與我們SPSS處理結果近似相等,進而互相驗證了彼此的正確性。
本數據選自文獻[1],在文獻[1]中的人工計算結果以及文獻[2]通過SAS編程得到的計算結果都與此相同,這說明我們利用SPSS的計算過程與結果是正確的。另一方面,由計算過程可以看出,一道題的計算過程的實現不只是在一個操作菜單的命令下就可以完成,本例用SPSS15.0的Descriptives、Data Reduction、Linear Regression、Compute Variable模塊的功能,因此對軟件SPSS的使用要求就上升到能熟練運用的高度。本文說明,如果能在多元統計教學的同時注意有關軟件的使用,開動腦筋,靈活使用,不但能很好地實現每一步的計算過程,而且還可用來解決更多新問題。這不但有利于學生掌握有關方面的知識,而且加深了對統計軟件的使用和掌握,從而達到培養(yǎng)學生靈活應用統計軟件SPSS的目的。
[1]王松桂,陳敏,陳立萍.線性統計模型:線性回歸與方差分析[M].北京:高等教育出版社,2004.
[2]高惠旋.處理多元線性回歸中自變量共線性的幾種方法[J].數理統計與管理,2000,20(5).
[3]劉潤幸,蕭燦培,宮齊等.利用SPSS進行主成分回歸分析[J].數理醫(yī)藥學雜志,2001,14(2).
[4]周松青.解決多重共線性問題的線性回歸方法[J].江蘇統計,2000,(11).
(責任編輯/易永生)
O21
A
1002-6487(2011)05-0157-03
國家統計局資助項目(LX08081);浙江省精品課程“統計學概論”和溫州大學研究生精品課程“多元統計學分析”資助