為什麼與 lasso 相比,最佳子集選擇不受歡迎?
我正在閱讀《統計學習要素》一書中的最佳子集選擇。如果我有 3 個預測變量, 我創造子集:
- 沒有預測變量的子集
- 帶有預測器的子集
- 帶有預測器的子集
- 帶有預測器的子集
- 帶有預測變量的子集
- 帶有預測變量的子集
- 帶有預測變量的子集
- 帶有預測變量的子集
然後我在測試數據上測試所有這些模型以選擇最好的模型。
現在我的問題是為什麼最好的子集選擇與例如套索相比不受歡迎?
如果我比較最佳子集和套索的閾值函數,我發現最佳子集將一些係數設置為零,如套索。但是,其他係數(非零係數)仍然具有 ols 值,它們將是無偏的。然而,在套索中,一些係數將為零,而其他係數(非零)將有一些偏差。下圖更能說明問題:
從圖片來看,最佳子集情況下的紅線部分位於灰色線之上。另一部分位於 x 軸上,其中一些係數為零。灰線定義了無偏的解決方案。在套索中,一些偏差是由. 從這個圖中我看到最好的子集比套索更好!使用最佳子集的缺點是什麼?
在子集選擇中,僅當您選擇了正確模型的超集時,非零參數才會無偏,即,如果您僅刪除了真實係數值為零的預測變量。如果您的選擇程序導致您排除具有真正非零係數的預測變量,則所有係數估計都會有偏差。如果您同意選擇通常不是完美的,那麼這會推翻您的論點。
因此,為了“確定”一個無偏的模型估計,您應該錯誤地選擇包含更多甚至所有潛在相關的預測變量。也就是說,您根本不應該選擇。
為什麼這是個壞主意?因為偏差-方差權衡。是的,您的大型模型將是無偏的,但它會有很大的方差,並且方差將主導預測(或其他)誤差。
因此,最好接受參數估計會有偏差但方差較小(正則化),而不是希望我們的子集選擇只刪除真正的零參數,因此我們有一個方差較大的無偏模型。
由於您寫道,您使用交叉驗證來評估這兩種方法,這減輕了上述一些問題。最佳子集的一個剩餘問題仍然存在:它將一些參數限制為零,並讓其他參數自由浮動。所以估計中存在不連續性,如果我們調整套索,則不存在超過一點預測器在哪裡包含或排除。假設交叉驗證輸出“最優”那是接近,所以我們基本上不確定是否應該包括 p。在這種情況下,我認為約束參數估計更有意義通過套索到一個小的(絕對)值,而不是完全排除它,,或者讓它自由漂浮,,正如最佳子集所做的那樣。
這可能會有所幫助:為什麼收縮有效?