Regression

多重共線性導致的模型不穩定性究竟是什麼?

  • November 14, 2019

我讀過模型參數在多重共線性的情況下變得不穩定。有人可以舉一個這種行為的例子,並解釋為什麼會這樣嗎?

請使用以下多元線性回歸進行說明:

$$ y = a_1x_1 + a_2x_2 + b $$

它是什麼?

這是此行為的一個示例。我將編寫一個函數來模擬回歸併輸出它們的係數。我們將查看係數的坐標對 $ (a_1,a_2) $ 在無共線性和高共線性的情況下。這是一些代碼:

   library(tidyverse)    
   
   sim <- function(rho){
     #Number of samples to draw
     N = 50
   
     #Make a covariance matrix
     covar = matrix(c(1,rho, rho, 1), byrow = T, nrow = 2)

     # Append a column of 1s to N draws from a 2-dimensional 
     # Gaussian 
     # With covariance matrix covar
     X = cbind(rep(1,N),MASS::mvrnorm(N, mu = c(0,0), 
                 Sigma = covar))

     # True betas for our regression
     betas = c(1,2,4)

     # Make the outcome
     y = X%*%betas + rnorm(N,0,1)

     # Fit a linear model
     model = lm(y ~ X[,2] + X[,3])
     
     # Return a dataframe of the coefficients
     return(tibble(a1 = coef(model)[2], a2 = coef(model)[3]))     
   }
   
   #Run the function 1000 times and stack the results
   zero_covar = rerun(1000, sim(0)) %>% 
                bind_rows
   
   #Same as above, but the covariance in covar matrix 
   #is now non-zero
   high_covar = rerun(1000, sim(0.95)) %>% bind_rows
   
   #plot
   zero_covar %>% 
     ggplot(aes(a1,a2)) +
     geom_point(data = high_covar, color = 'red') +
     geom_point()

運行它,你會得到類似的東西

模擬結果圖

該模擬應該模擬係數的採樣分佈。正如我們所看到的,在沒有共線性的情況下(黑點),係數的採樣分佈在 (2,4) 的真值附近非常緊密。斑點關於這一點是對稱的。

在高共線性(紅點)的情況下,線性模型的係數可以變化很大!在這種情況下,不穩定性表現為給定相同數據生成過程的截然不同的係數值。

為什麼會這樣

讓我們從統計的角度來看。線性回歸係數的採樣分佈(有足夠的數據)看起來像 $$ \hat{\beta} \sim \mathcal{N}(\beta, \Sigma) $$ 上面的協方差矩陣是 $$ \Sigma = \sigma^{2}\left(X^{\prime} X\right)^{-1} $$ 讓我們專註一分鐘 $ \left(X^{\prime} X\right) $ . 如果 $ X $ 有滿秩,那麼 $ \left(X^{\prime} X\right) $ 是一個 Gram 矩陣,它有一些特殊的性質。這些屬性之一是它具有正特徵值。這意味著我們可以根據特徵值分解來分解這個矩陣乘積。 $$ \left(X^{\prime} X\right) = Q\Lambda Q^{-1} $$ 假設現在的列之一 $ X $ 與另一列高度相關。然後,特徵值之一 $ X^{\prime}X $ 應該接近0(我認為)。反轉這個產品給了我們 $$ \left(X^{\prime} X\right)^{-1} = Q^{-1}\Lambda^{-1} Q $$ 自從 $ \Lambda $ 是對角矩陣, $ \Lambda^{-1}{jj} = \frac{1}{\Lambda{jj}} $ . 如果特徵值之一真的很小,那麼元素之一 $ \Lambda^{-1} $ 真的很大,協方差也很大,導致係數不穩定。

我想我是對的,我已經很久沒有做過線性代數了。

引用自:https://stats.stackexchange.com/questions/435986

comments powered by Disqus