題:
在任何情況下都應使用逐步回歸?
bobmcpop
2017-01-25 13:45:39 UTC
view on stackexchange narkive permalink

過去,逐步回歸在許多生物醫學論文中都被過度使用,但是隨著對其許多問題的更好的教育,這種情況似乎正在改善。但是,許多較老的審閱者仍然要求它。在什麼情況下逐步回歸起作用並且應使用 (如果有)?

我在上課時經常使用它來說明不應該使用它的想法。
(+1)感謝@gung我不是統計學家,即使我知道這是正確的,也發現很難為之辯護。我覺得這特別困難,因為1)[這個非常好並且經常被引用的帖子]....(ctd)
(ctd)和2)逐步評論家似乎經常這樣做是為了從大量變量或數據挖掘中進行選擇。在生物醫學領域,樣本數量的計算通常會考慮預期協變量的數量,因此,完整的模型從一開始就不會那麼大,並且每個變量都已經包含了一些先前的“生物學”原因。您是否認為在這種情況下不應同樣使用逐步操作?
我為生物醫學研究提供統計諮詢。我不逐步使用。我沒有很多人問(他們可能會假設我只會在對他們的項目有幫助的情況下使用它),但是當有人問我時,我告訴他們這是無效的並談論原因。
二 答案:
Björn
2017-01-25 15:09:47 UTC
view on stackexchange narkive permalink

我不了解逐步回歸將是首選方法的情況。可以使用$ n>>p $在非常大的數據集上引導整個逐步過程,這可能是好的(尤其是從完整模型開始的逐步版本)。在這裡,$ n $是連續結果中的觀察次數(或生存分析中具有事件的記錄數)$ p $是候選預測變量的數量,包括所有考慮的相互作用-即當任何很小的影響變得非常明顯時,對您如何建立模型並不重要(這意味著$ n $比$ p $大得多,而實際上比有時引用的20倍大)。

當然,大多數人都傾向於做逐步回歸之類的原因是

  1. 因為它不佔用大量計算資源(如果您沒有進行適當的引導,但是結果非常不可靠),
  2. 因為它提供了清晰的“在模型中”與“不在模型中”的語句(在標準逐步回歸中這是非常不可靠的;通常應該清楚地進行自舉,以使這些語句通常不是這樣)清除)和
  3. 因為$ n $通常比$ p $小,近或略大於$ p $。
  4. ol>

    即逐步回歸等方法(如果它具有良好的運行特性)在那些情況下(如果它沒有良好的運行特性)將特別有吸引力。

(+1)同樣,對於很多情況下的係數可以忽略不計且相對於誤差方差而言只是很小的情況,逐步和相關的方法可能也適用於大海撈針的預測模型。請參見[Tibshirani(1996),*通過套索的回歸收縮和選擇*,* JRSS B *,** 58 **,1]中的示例3(http://statweb.stanford.edu/~tibs/lasso/lasso(.pdf)-即使在這裡非負garotte勝出。
我不太明白最後一段。也許可以改寫?另外,關於3 .:我沒有看到直接的論據,也許在那裡應該容易推斷出什麼?
為了澄清最後一個段落和(3):人們由於(3)而逐步使用(即避免出現難以擬合完整模型或導致$ p \ approx n $的情況),但這恰恰是將可怕的方法。他們使用它,因為它不佔用大量計算資源,但是要想得到有用的東西,就必須進行大量的引導(因此也不是真正的優勢)。他們之所以使用它,是因為它似乎給出了清晰的解釋,但是如果做得好,它還不是很清楚,您會看到模型不確定性有多少(清晰的解釋=一種錯覺)。
Cliff AB
2017-01-26 00:04:03 UTC
view on stackexchange narkive permalink

我不反對看到逐步回歸的兩種情況

  1. 探索性數據分析
  2. 預測模型
  3. ol>

    在這兩個非常重要的用例中,您不必擔心傳統的統計推斷,因此,p值等不再有效的事實也就無關緊要了。

    例如,如果某研究論文說:“在我們的初步研究中,我們使用逐步回歸從1000個中找到3個有趣的變量。在對新數據進行的後續研究中,我們表明這3個有趣的變量與感興趣的結果相關”,使用逐步回歸就不會有問題。同樣,“我們使用逐步回歸來建立預測模型。在我們關於MSE的保留數據集中,這種過時的替代模型X”對我來說也很好。

    要明確一點,我並不是說逐步回歸是解決這些問題的最佳方法。但這很容易,並且可以為您提供令人滿意的解決方案。

    編輯:

    在評論中,存在一個問題,即逐步AIC實際上是否可以用於預測。這是一個模擬結果,它顯示了在所有協變量以及通過交叉驗證選擇懲罰的彈性網方面,其線性回歸效果遠勝於線性回歸。

    我不會將此模擬作為討論的結尾;提出AIC逐步惡化的方案並不難。但這確實不是一個不合理的情況,而且正是彈性網設計的情況類型(協變量的高相關性,幾乎沒有大的影響)!

     庫(刪除)
    圖書館(glmnet)
    nRows <- 1000
    nCols <- 500
    
    #種子集可重複性。
    #嘗試更改以調查結果的可靠性
    set.seed(1)
    
    #創建高度相關的協變量
    x_firstHalf <-矩陣(rnorm(nRows * nCols / 2),nrow = nRows)
    x_secondHalf <- x_firstHalf + 0.5 *
                    矩陣(rnorm(nRows * nCols / 2),nrow = nRows)
    x_mat <- cbind(x_firstHalf,x_secondHalf)+ rnorm(nRows)
    
    #創建Beta版。大多數將是非常小的規模
    p_large = 0.01
    Betas <- rnorm(nCols,sd = 0.01)+
             rnorm(nCols,sd = 4)* rbinom(nCols,大小= 1,概率= p_large)
    y <- x_mat%*%beta + rnorm(nRows,sd = 4)
    
    all_data <- data.frame(y,x_mat)
    colnames(all_data)<- c('y',paste('x',1:nCols,sep ='_'))
    
    #保留25%的數據以進行驗證
    holdout_index <- 1:(nRows * .25)
    train_data <- all_data [-holdout_index,]
    validate_data <- all_data [holdout_index,]
    
    mean_fit <- lm(y〜0,數據= train_data)
    full_fit <- lm(y〜。,data = train_data)
    step_fit <- step(mean_fit,
                     範圍=列表(下=均值擬合,上=完全擬合),
                     方向=“前進”,步長= 20,軌跡= 0)
    
    glmnet_cvRes <- cv.glmnet(x = as.matrix(train_data [,-1]),
                              y = as.numeric(train_data $ y))
    
    full_pred <-預測(full_fit,validate_data)
    step_pred <-預測(step_fit,validate_data)
    glmnet_pred <-預測(glmnet_cvRes,as.matrix(validate_data [,-1]),s ='lambda.min')
    
    sd(full_pred-validate_data  $ y)#[1] 6.426117
    sd(step_pred-validate_data $  span> y)#[1] 4.233672
    sd(glmnet_pred-validate_data $ y)#[1] 4.127171
    #注意逐步AIC比使用所有協變量要好得多
    #在線性回歸中,並沒有比懲罰方法差很多
    #具有交叉驗證!!
     

    旁注:

    由於許多原因,我實際上並不喜歡逐步回歸,因此我為捍衛這一立場感到有些尷尬。但是我只是認為準確地知道我不喜歡的東西很重要。

除了這兩種適應症外,它在(生物醫學文獻中)還常用什麼其他方案?我只是遇到過將其用於預測模型的情況,但不建議使用此方法[例如](http://ard.bmj.com/content/early/2014/09/26/annrheumdis-2014-206186.full)。
@bobmcpop:的最大問題是逐步回歸後使用p值,置信區間,正如您引用的論文所述。僅用於預測的模型(不僅是帶有預測器的模型)通常不在乎p值,而只是在乎減少了多少樣本外誤差。
這些東西真的很好嗎?您會得到不穩定的虛假髮現和不良的樣本外預測。
@Björn:好的,正如我在最後所說的那樣,我認為這通常不是任何手段的最佳方法。但這不是無效的,您*可能*最終得到合理的結果。因此,它的強度實際上就是它的易用性:如果您有一個採用協變量並返回似然率的模型,則可以進行逐步AIC。您可能可以使用LASSO之類的產品做得更好...但是,如果它是某種新穎的模型或使用Excel,則可能無法做到。
謝謝懸崖。許多對CV循序漸進的批評家似乎是從大量變量中進行選擇的。當提到懲罰回歸時,我尤其感到。通常,臨床研究旨在收集有限數量的先驗相關變量。例如,在我的領域中,論文通常會從不超過10個協變量逐步向後退,並且正如您所說的,將注意力集中在它們的p值上。我不知道這種逐步拒絕的做法是否與某些領域更相關?我當然從未在臨床文獻中遇到過懲罰式回歸。
@Cliff AB:從什麼意義上講,逐步“無效”的原始版本是什麼?您不能相信預測或點估計,置信度或預測間隔,關於任何變量是否“重要”的任何陳述都是極其不可靠的。唯一的優點是它很容易實現,而且任何人都可以做到(但實際上不應該這樣做),但是帶有引導程序的有效版本可以解決這一問題。
@Björn:我添加了一個示例,該示例具有高度相關的協變量,其中逐步AIC的線性回歸優於所有協變量(不足為奇),並且幾乎與glmnet並駕齊驅(這令我驚訝,因為這正是glmnet的設計宗旨對於)。
(+1)我曾經說過,glmnet旨在在這種情況下(似乎)大踏步地應對這種情況;而沒有收縮的預測變量選擇方法尤其適合它。當存在“漸縮效應”而不是一些大的或微小的效應時,比較方法可能會很有趣。
我對您的代碼進行了編輯,以使其更易於閱讀,並且更易於復制和粘貼到代碼文件或控制台中。我希望你喜歡它。如果您不這樣做,請向我道歉並退後。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...