Member-only story
逐步挑選 stepwise \ 向前選取 foreward\ 向後選取 backward
免費閱讀文章:[SAS]迴歸分析 — 模型挑選 Regression feature selection
前一篇的 [SAS]線性迴歸 linear regression 介紹了線性迴歸的 基本統計假設 和會需要用到的統計檢定,並且用一個簡單的例子來示範這些基礎概念。
但是當我們有多個自變項(X)的時候,該如何挑選適合的自變項呢?
本篇要介紹三種挑選自變項的方法,分別為 逐步挑選 stepwise \ 向前選取 foreward\ 向後選取 backward
- 向前選取 (foreward) : 向前選取基本上就是自變項一個一個挑選至模型中。從所有的自變項中,挑選最顯著的優先進入模型中,直到所有顯著的自變項都在模型裡面。(不顯著的自變項不挑選)
- 向後選取 (backward) : 向後選取和向前選取相反。首先是將所有的自變項都選至模型中,再一步一步篩選最不顯著的變數,一個一個從模型中挑選出來,直到所有在模型中的自變項都是顯著的。
- 逐步挑選 (stepwise) : 前面的兩種方法都是無法逆回的,就是挑選(or 挑出來)到模型中,確定整體模型顯著之後,就不會再移除了。
而逐步挑選的方法比較像前兩者的總合體。一開始像向前選取一樣,但是當A自變項選到模型中,若之後再挑選B自變項,可能所有的自變項中 A是最不顯著的,那就會將A 離開模型(這部分像向後選取)。來來回回,一直挑選直到沒有自變項加入(or移除)會使整體模型更好。
逐步挑選 (stepwise) :
最常使用的方法就是stepwise,可能相較於其他兩種方法,stepwise是可逆的,如果選到不好的自變項,可以再刪除。而為什麼有些自變項一開始的顯著的效果較佳,但在後面反而被刪除呢?
原因是不同的自變項之間可能有相關,而加入其他的自變項之後,第一個自變項反而不適合現在這個模型了,所以就把他刪除。
現在就用SAS 來示範 stepwise ,資料使用上一篇提到的成績 (在這裡) 。
程式加上 selection=stepwise
proc reg data=reg;
model y=x1 x2 x3 x4 x5 /CLB selection=stepwise;
run;
Step 1 第一步挑選的自變項為X4,X4加入的 R² = 0.6810 , 現在只有一個自變項, 迴歸模型的顯著性檢定 p-value <0.0001 ,表示效果不錯。