我認為這種方法是錯誤的,但是如果我解釋原因,也許會更有幫助。想要了解有關大量變量的一些信息的最佳模型是可以理解的。而且,在這種情況下,人們似乎經常發現自己。此外,許多有關回歸的教科書(和課程)涵蓋逐步選擇方法,這意味著它們必須合法。然而不幸的是,事實並非如此,而這種情況和目標的配對很難成功地解決。以下是自動逐步模型選擇過程的問題列表(歸因於Frank Harrell,並從此處複製):
- 它產生R平方
- 打印輸出上每個變量旁邊引用的F和卡方檢驗不具有所要求的分佈。
- 該方法產生置信區間錯誤地縮小了效果和預測值;參見Altman and Andersen(1989)。
- 產生的p值含義不正確,對其進行正確的校正是一個困難的問題。
- 給出有偏回歸需要收縮的係數(剩餘變量的係數太大;請參見Tibshirani [1996])。
- 在存在共線性的情況下存在嚴重問題。
- 基於方法(例如,用於嵌套模型的F檢驗),旨在用於檢驗預先設定的假設。
- 增加樣本數量並沒有太大幫助;參見Derksen和Keselman(1992)。
- 它使我們不必考慮問題。
- 它使用大量紙張。
ol>
問題是,這些程序有什麼不好?為什麼會出現這些問題?大多數參加了基礎回歸課程的人都熟悉均值回歸的概念,因此這就是我用來解釋這些問題的方法。 (儘管乍一看這似乎是題外話,但是請允許我,我保證它是相關的。)
想像一下,在試訓的第一天,一名高中田徑教練。三十個孩子出現了。這些孩子具有某種內在能力的內在能力,教練和其他任何人都無法直接使用這些內在能力。結果,教練唯一能做的就是讓他們全部跑100m。時間大概是衡量其內在能力的標準,因此被認為是時間。但是,它們是概率性的。某人的表現有多大比例取決於他們的實際能力,而有多少是隨機的。想像一下真實情況如下:
set.seed(59)intrinsic_ability = runif(30,min = 9,max = 10)time = 31-2 * intrinsic_ability + rmrm(30 ,均值= 0,標準偏差= .5)
下圖顯示了第一場比賽的結果以及教練對孩子的評論。
請注意,按照比賽時間對孩子進行劃分會使他們的內在能力重疊-這個事實至關重要。在讚美一些並大喊大叫之後(教練傾向於這樣做),他讓他們再次跑步。以下是第二場比賽的結果,教練的反應(從上述相同模型模擬而來):
請注意,它們的內在能力是相同的,但是時間相對於第一種族反彈。從教練的角度來看,他大喊大叫的人趨於改善,而他稱讚的人則趨於惡化(我從Wiki頁面上列出的Kahneman引用中改編了這個具體示例),儘管實際上回歸均值是一個簡單的數學運算教練基於部分隨機的度量為團隊選擇運動員這一事實的結果。
現在,這與自動(例如逐步)模型選擇技術有什麼關係?基於同一數據集開發和確認模型有時稱為數據挖掘。儘管變量之間存在一些潛在的關係,並且期望更強的關係會產生更強的得分(例如,更高的t統計量),但這些是隨機變量,並且實現的值包含誤差。因此,當您基於具有較高(或較低)的實現值來選擇變量時,由於其潛在的真實值,錯誤或兩者兼而有之,它們可能是這樣。如果您以這種方式前進,那麼您會像教練在第二場比賽后一樣感到驚訝。無論您是基於具有高t統計量還是具有低相關性來選擇變量,這都是正確的。的確,使用AIC比使用p值更好,因為它會懲罰模型的複雜性,但是AIC本身是一個隨機變量(如果多次運行研究並擬合同一模型,AIC會像其他)。不幸的是,這只是現實本身的認知本質所固有的問題。
我希望這會有所幫助。