Machine-Learning
如果幾乎總是減少解釋的變化,為什麼要使用降維?
假設我有 $ N $ 我的回歸模型中的協變量,它們解釋了目標集 95% 的變化,即 $ r^2=0.95 $ . 如果這些協變量之間存在多重共線性,則執行 PCA 以降低維數。如果主成分可以解釋,比如 80% 的變化(而不是 95%),那麼我的模型的準確性就會受到一些損失。
實際上,如果 PCA 以準確性為代價解決了多重共線性問題,除了它可以加速模型訓練並將共線性協變量減少為統計上獨立且穩健的變量之外,它還有什麼好處?
您的問題隱含地假設減少解釋的變化必然是一件壞事。回顧 $ R^2 $ 定義為: $$ R^2 = 1 - \frac{SS_{res}}{SS_{tot}} $$ 在哪裡 $ SS_{res} = \sum_{i}{(y_i - \hat{y})^2} $ 是殘差平方和 $ SS_{tot} = \sum_{i}{(y_i - \bar{y})^2} $ 是平方的總和。您可以輕鬆獲得 $ R^2 = 1 $ (IE $ SS_{res} = 0 $ )通過擬合一條穿過所有(訓練)點的線(儘管這通常需要更靈活的模型,而不是 Eric 指出的簡單線性回歸),這是過擬合的完美示例。因此,減少解釋的變化並不一定是壞事,因為它可以在看不見的(測試)數據上帶來更好的性能。如果有理由相信數據集具有內在的低維結構,PCA 可能是一種很好的預處理技術。