複製鏈接
請複製以下鏈接發送給好友

迴歸分析

鎖定
在統計學中,迴歸分析(regression analysis)指的是確定兩種或兩種以上變量間相互依賴的定量關係的一種統計分析方法。迴歸分析按照涉及的變量的多少,分為一元迴歸和多元迴歸分析;按照因變量的多少,可分為簡單迴歸分析和多重回歸分析;按照自變量和因變量之間的關係類型,可分為線性迴歸分析和非線性迴歸分析 [1] 
中文名
迴歸分析
外文名
regression analysis
應用領域
統計學

迴歸分析適用條件

在大數據分析中,迴歸分析是一種預測性的建模技術,它研究的是因變量(目標)和自變量(預測器)之間的關係。這種技術通常用於預測分析,時間序列模型以及發現變量之間的因果關係。例如,司機的魯莽駕駛與道路交通事故數量之間的關係,最好的研究方法就是迴歸。

迴歸分析應用

有各種各樣的迴歸技術用於預測。這些技術主要有三個度量(自變量的個數,因變量的類型以及迴歸線的形狀)。
1. Linear Regression線性迴歸
它是最為人熟知的建模技術之一。線性迴歸通常是人們在學習預測模型時首選的技術之一。在這種技術中,因變量是連續的,自變量可以是連續的也可以是離散的,迴歸線的性質是線性的。
線性迴歸使用最佳的擬合直線(也就是迴歸線)在因變量(Y)和一個或多個自變量(X)之間建立一種關係。
多元線性迴歸可表示為Y=a+b1*X +b2*X2+ e,其中a表示截距,b表示直線的斜率,e是誤差項。多元線性迴歸可以根據給定的預測變量(s)來預測目標變量的值。
2.Logistic Regression邏輯迴歸
邏輯迴歸是用來計算“事件=Success”和“事件=Failure”的概率。當因變量的類型屬於二元(1 / 0,真/假,是/否)變量時,應該使用邏輯迴歸。這裏,Y的值為0或1,它可以用下方程表示。
odds= p/ (1-p) = probability of event occurrence / probability of not event occurrence
ln(odds) = ln(p/(1-p))
logit(p) = ln(p/(1-p)) =b0+b1X1+b2X2+b3X3....+bkXk
上述式子中,p表述具有某個特徵的概率。你應該會問這樣一個問題:“為什麼要在公式中使用對數log呢?”。
因為在這裏使用的是的二項分佈(因變量),需要選擇一個對於這個分佈最佳的連結函數。它就是Logit函數。在上述方程中,通過觀測樣本的極大似然估計值來選擇參數,而不是最小化平方和誤差(如在普通迴歸使用的)。
3. Polynomial Regression多項式迴歸
對於一個迴歸方程,如果自變量的指數大於1,那麼它就是多項式迴歸方程。如下方程所示:
y=a+b*x^2
在這種迴歸技術中,最佳擬合線不是直線。而是一個用於擬合數據點的曲線。
4. Stepwise Regression逐步迴歸
在處理多個自變量時,可以使用這種形式的迴歸。在這種技術中,自變量的選擇是在一個自動的過程中完成的,其中包括非人為操作。
這一壯舉是通過觀察統計的值,如R-square,t-stats和AIC指標,來識別重要的變量。逐步迴歸通過同時添加/刪除基於指定標準的協變量來擬合模型。下面列出了一些最常用的逐步迴歸方法:
標準逐步迴歸法做兩件事情。即增加和刪除每個步驟所需的預測。
向前選擇法從模型中最顯著的預測開始,然後為每一步添加變量。
向後剔除法與模型的所有預測同時開始,然後在每一步消除最小顯著性的變量。
這種建模技術的目的是使用最少的預測變量數來最大化預測能力。這也是處理高維數據集的方法之一。2
5. Ridge Regression嶺迴歸
當數據之間存在多重共線性(自變量高度相關)時,就需要使用嶺迴歸分析。在存在多重共線性時,儘管最小二乘法(OLS)測得的估計值不存在偏差,它們的方差也會很大,從而使得觀測值與真實值相差甚遠。嶺迴歸通過給迴歸估計值添加一個偏差值,來降低標準誤差。
在線性等式中,預測誤差可以劃分為 2 個分量,一個是偏差造成的,一個是方差造成的。預測誤差可能會由這兩者或兩者中的任何一個造成。在這裏,將討論由方差所造成的誤差。
嶺迴歸通過收縮參數λ(lambda)解決多重共線性問題。請看下面的等式:
L2=argmin||y=xβ||+λ||β||
在這個公式中,有兩個組成部分。第一個是最小二乘項,另一個是β-平方的λ倍,其中β是相關係數向量,與收縮參數一起添加到最小二乘項中以得到一個非常低的方差。
6. Lasso Regression套索迴歸
它類似於嶺迴歸,Lasso (Least Absolute Shrinkage and Selection Operator)也會就回歸係數向量給出懲罰值項。此外,它能夠減少變化程度並提高線性迴歸模型的精度。看看下面的公式:
L1=agrmin||y-xβ||
+λ||β||
Lasso 迴歸與Ridge迴歸有一點不同,它使用的懲罰函數是L1範數,而不是L2範數。這導致懲罰(或等於約束估計的絕對值之和)值使一些參數估計結果等於零。使用懲罰值越大,進一步估計會使得縮小值越趨近於零。這將導致要從給定的n個變量中選擇變量。
如果預測的一組變量是高度相關的,Lasso 會選出其中一個變量並且將其它的收縮為零。
7.ElasticNet迴歸
ElasticNet是Lasso和Ridge迴歸技術的混合體。它使用L1來訓練並且L2優先作為正則化矩陣。當有多個相關的特徵時,ElasticNet是很有用的。Lasso 會隨機挑選他們其中的一個,而ElasticNet則會選擇兩個。
Lasso和Ridge之間的實際的優點是,它允許ElasticNet繼承循環狀態下Ridge的一些穩定性。
數據探索是構建預測模型的必然組成部分。在選擇合適的模型時,比如識別變量的關係和影響時,它應該是首選的一步。比較適合於不同模型的優點,可以分析不同的指標參數,如統計意義的參數,R-square,Adjusted R-square,AIC,BIC以及誤差項,另一個是Mallows’ Cp準則。這個主要是通過將模型與所有可能的子模型進行對比(或謹慎選擇他們),檢查在你的模型中可能出現的偏差。
交叉驗證是評估預測模型最好的方法。在這裏,將你的數據集分成兩份(一份做訓練和一份做驗證)。使用觀測值和預測值之間的一個簡單均方差來衡量你的預測精度。
如果你的數據集是多個混合變量,那麼你就不應該選擇自動模型選擇方法,因為你應該不想在同一時間把所有變量放在同一個模型中。
它也將取決於你的目的。可能會出現這樣的情況,一個不太強大的模型與具有高度統計學意義的模型相比,更易於實現。迴歸正則化方法(Lasso,Ridge和ElasticNet)在高維和數據集變量之間多重共線性情況下運行良好。3
假定條件與內容
在數據分析中一般要對數據進行一些條件假定:
方差齊性
線性關係
效應累加
變量無測量誤差
變量服從多元正態分佈
觀察獨立
模型完整(沒有包含不該進入的變量、也沒有漏掉應該進入的變量)
誤差項獨立且服從(0,1)正態分佈。
現實數據常常不能完全符合上述假定。因此,統計學家研究出許多的迴歸模型來解決線性迴歸模型假定過程的約束。
迴歸分析的主要內容為:
①從一組數據出發,確定某些變量之間的定量關係式,即建立數學模型並估計其中的未知參數。估計參數的常用方法是最小二乘法
②對這些關係式的可信程度進行檢驗。
③在許多自變量共同影響着一個因變量的關係中,判斷哪個(或哪些)自變量的影響是顯著的,哪些自變量的影響是不顯著的,將影響顯著的自變量加入模型中,而剔除影響不顯著的變量,通常用逐步迴歸、向前迴歸和向後迴歸等方法。
④利用所求的關係式對某一生產過程進行預測或控制。迴歸分析的應用是非常廣泛的,統計軟件包使各種迴歸方法計算十分方便。
在迴歸分析中,把變量分為兩類。一類是因變量,它們通常是實際問題中所關心的一類指標,通常用Y表示;而影響因變量取值的的另一類變量稱為自變量,用X來表示。
迴歸分析研究的主要問題是:
(1)確定Y與X間的定量關係表達式,這種表達式稱為迴歸方程;
(2)對求得的迴歸方程的可信度進行檢驗;
(3)判斷自變量X對因變量Y有無影響;
(4)利用所求得的迴歸方程進行預測和控制。4
應用
相關分析研究的是現象之間是否相關、相關的方向和密切程度,一般不區別自變量或因變量。而回歸分析則要分析現象之間相關的具體形式,確定其因果關係,並用數學模型來表現其具體關係。比如説,從相關分析中可以得知“質量”和“用户滿意度”變量密切相關,但是這兩個變量之間到底是哪個變量受哪個變量的影響,影響程度如何,則需要通過迴歸分析方法來確定。1
一般來説,迴歸分析是通過規定因變量和自變量來確定變量之間的因果關係,建立迴歸模型,並根據實測數據來求解模型的各個參數,然後評價迴歸模型是否能夠很好的擬合實測數據;如果能夠很好的擬合,則可以根據自變量作進一步預測。
例如,如果要研究質量和用户滿意度之間的因果關係,從實踐意義上講,產品質量會影響用户的滿意情況,因此設用户滿意度為因變量,記為Y;質量為自變量,記為X。通常可以建立下面的線性關係: Y=A+BX+§
式中:A和B為待定參數,A為迴歸直線的截距;B為迴歸直線的斜率,表示X變化一個單位時,Y的平均變化情況;§為依賴於用户滿意度的隨機誤差項
對於經驗迴歸方程: y=0.857+0.836x
迴歸直線在y軸上的截距為0.857、斜率0.836,即質量每提高一分,用户滿意度平均上升0.836分;或者説質量每提高1分對用户滿意度的貢獻是0.836分。
上面所示的例子是簡單的一個自變量的線性迴歸問題,在數據分析的時候,也可以將此推廣到多個自變量的多元迴歸,具體的迴歸過程和意義請參考相關的統計學書籍。此外,在SPSS的結果輸出裏,還可以彙報R2,F檢驗值和T檢驗值。R2又稱為方程的確定性係數(coefficient of determination),表示方程中變量X對Y的解釋程度。R2取值在0到1之間,越接近1,表明方程中X對Y的解釋能力越強。通常將R2乘以100%來表示迴歸方程解釋Y變化的百分比。F檢驗是通過方差分析表輸出的,通過顯著性水平(significance level)檢驗迴歸方程的線性關係是否顯著。一般來説,顯著性水平在0.05以上,均有意義。當F檢驗通過時,意味着方程中至少有一個迴歸係數是顯著的,但是並不一定所有的迴歸係數都是顯著的,這樣就需要通過T檢驗來驗證迴歸係數的顯著性。同樣地,T檢驗可以通過顯著性水平或查表來確定。在上面所示的例子中,各參數的意義如下表所示。
指標
顯著性水平
意義
R2
0.89
“質量”解釋了89%的“用户滿意度”的變化程度

F
276.82
0.001
迴歸方程的線性關係顯著
T
16.64
0.001
迴歸方程的係數顯著
示例 SIM手機用户滿意度與相關變量線性迴歸分析
以SIM手機的用户滿意度與相關變量的線性迴歸分析為例,來進一步説明線性迴歸的應用。從實踐意義講上,手機的用户滿意度應該與產品的質量、價格和形象有關,因此以“用户滿意度”為因變量,“質量”、“形象”和“價格”為自變量,作線性迴歸分析。利用SPSS軟件的迴歸分析,得到迴歸方程如下:
用户滿意度=0.008×形象+0.645×質量+0.221×價格
對於SIM手機來説,質量對其用户滿意度的貢獻比較大,質量每提高1分,用户滿意度將提高0.645分;其次是價格,用户對價格的評價每提高1分,其滿意度將提高0.221分;而形象對產品用户滿意度的貢獻相對較小,形象每提高1分,用户滿意度僅提高0.008分。
方程各檢驗指標及含義如下:
指標
顯著性水平
意義

R2
0.89
89%的用户滿意度”的變化程度

F
248.53
0.001
迴歸方程的線性關係顯著
T(形象)
0.00
1.000
“形象”變量對迴歸方程幾乎沒有貢獻
T(質量)
13.93
0.001
“質量”對迴歸方程有很大貢獻
T(價格)
5.00
0.001
“價格”對迴歸方程有很大貢獻
從方程的檢驗指標來看,“形象”對整個迴歸方程的貢獻不大,應予以刪除。所以重新做“用户滿意度”與“質量”、“價格”的迴歸方程如下:滿意度=0.645×質量+0.221×價格
用户對價格的評價每提高1分,其滿意度將提高0.221分(在本示例中,因為“形象”對方程幾乎沒有貢獻,所以得到的方程與前面的迴歸方程係數差不多)。
方程各檢驗指標及含義如下:
指標
顯著性水平
意義

R2
0.89
89%的用户滿意度”的變化程度

F
374.69
0.001
迴歸方程的線性關係顯著
T(質量)
15.15
0.001
“質量”對迴歸方程有很大貢獻
T(價格)
5.06
0.001
“價格”對迴歸方程有很大貢獻
步驟確定變量
明確預測的具體目標,也就確定了因變量。如預測具體目標是下一年度的銷售量,那麼銷售量Y就是因變量。通過市場調查和查閲資料,尋找與預測目標的相關影響因素,即自變量,並從中選出主要的影響因素。
建立預測模型
依據自變量和因變量的歷史統計資料進行計算,在此基礎上建立迴歸分析方程,即迴歸分析預測模型。
進行相關分析
迴歸分析是對具有因果關係的影響因素(自變量)和預測對象(因變量)所進行的數理統計分析處理。只有當自變量與因變量確實存在某種關係時,建立的迴歸方程才有意義。因此,作為自變量的因素與作為因變量的預測對象是否有關,相關程度如何,以及判斷這種相關程度的把握性多大,就成為進行迴歸分析必須要解決的問題。進行相關分析,一般要求出相關關係,以相關係數的大小來判斷自變量和因變量的相關的程度。
計算預測誤差
迴歸預測模型是否可用於實際預測,取決於對迴歸預測模型的檢驗和對預測誤差的計算。迴歸方程只有通過各種檢驗,且預測誤差較小,才能將回歸方程作為預測模型進行預測。
確定預測值
利用迴歸預測模型計算預測值,並對預測值進行綜合分析,確定最後的預測值。

迴歸分析注意問題

應用迴歸預測法時應首先確定變量之間是否存在相關關係。如果變量之間不存在相關關係,對這些變量應用迴歸預測法就會得出錯誤的結果。
正確應用迴歸分析預測時應注意:
①用定性分析判斷現象之間的依存關係;
②避免迴歸預測的任意外推;
③應用合適的數據資料;
參考資料