線上性迴歸模型時,存在這樣一種假設,即各個解釋變數之間不存在很強的關係。如果解釋變數之間存在很強的線性相關關係,就認為資料之間存在共線性問題。

1、什麼是多重共線性

在解釋變數中,有某一解釋變數可由其他解釋變數線性表出。

2、多重共線性有什麼影響

共線性會導致迴歸引數不穩定,即增加或刪除一個樣本點或特徵,迴歸係數的估計值會發生很大變化

。 這是因為某些解釋變數之間存在高度相關的線性關係,XTX會接近於奇異矩陣,即使可以計算出其逆矩陣,逆矩陣對角線上的元素也會很大,這就意味著引數估計的標準誤差較大,引數估計值的精度較低,這樣,資料中的一個微小的變動都會導致迴歸係數的估計值發生很大變化。

3、多重共線性診斷

發現係數估計值的符號不對;

某些重要的解釋變數t值低,而R方不低

當一不太重要的解釋變數被刪除後,迴歸結果顯著變化

4、多重共線性處理

主要方法有:增加樣本量、變數聚類、方差膨脹因子、相關係數、逐步迴歸、PCA、L1 L2正則化

共線性問題並不是模型的設定錯誤,它是一種資料缺陷,可以透過增加樣本量來解決

在特徵比較多的時候,先變數聚類,每類中選擇單特徵比較強的,也可以根據1-r^2小的選擇有代表性的特徵(r^2表示的是其他變數能否線性解釋的部分,1-r^2表示的是容忍度,也就是其他變數不能解釋的部分;變數聚類是多選一,因此需要選擇一個具有代表性的變數,選擇容忍度小的變數;另vif就是容忍度的倒數)

在變數聚類的步驟中也可以結合 方差膨脹因子、相關係數以及業務理解來篩選特徵

關於多重共線性

5、共線性檢驗

看模型係數,和實際業務是否相符合。(注:在進行完證據權重轉化後,係數正負,不在具有實際的業務意義。當woe是好客戶佔比/壞客戶佔比時,係數都為負,反之係數都為正。(相關原因可以公式推導))

模型R^2較高,透過F檢驗,係數不能透過t檢驗

比較好的連結

程式碼實現在這裡: