以前咱們介紹了多元線性迴歸的原理, 又經過一個案例對多元線性迴歸模型進一步瞭解, 其中談到自變量之間存在高度相關, 容易產生多重共線性問題, 對於多重共線性問題的解決方法有: 刪除自變量, 改變數據形式, 添加正則化項, 逐步迴歸, 主成分分析等. 今天咱們來看看其中的添加正則化項.函數
添加正則化項, 是指在損失函數上添加正則化項, 而正則化項可分爲兩種: 一種是L1正則化項, 另外一種是L2正則化. 咱們把帶有L2正則化項的迴歸模型稱爲嶺迴歸, 帶有L1正則化項的迴歸稱爲Lasso迴歸.blog
引用百度百科定義.數據分析
嶺迴歸(英文名:ridge regression, Tikhonov regularization)是一種專用於共線性數據分析的有偏估計迴歸方法,實質上是一種改良的最小二乘估計法,經過放棄最小二乘法的無偏性,以損失部分信息、下降精度爲代價得到迴歸係數更爲符合實際、更可靠的迴歸方法,對病態數據的擬合要強於最小二乘法。io
經過定義能夠看出, 嶺迴歸是改良後的最小二乘法, 是有偏估計的迴歸方法, 即給損失函數加上一個正則化項, 也叫懲罰項(L2範數), 那麼嶺迴歸的損失函數表示爲變量
其中, m是樣本量, n是特徵數, 是懲罰項參數(其取值大於0), 加懲罰項主要爲了讓模型參數的取值不能過大. 當
趨於無窮大時, 對應
趨向於0, 而
表示的是因變量隨着某一自變量改變一個單位而變化的數值(假設其餘自變量均保持不變), 這時, 自變量之間的共線性對因變量的影響幾乎不存在, 故其能有效解決自變量之間的多重共線性問題, 同時也能防止過擬合.原理
嶺迴歸的正則化項是對求平方和, 既然能求平方也就能取絕對值, 而Lasso迴歸的L1範數正是對
取絕對值, 故其損失函數能夠表示爲百度
當只有兩個自變量時, L1範數在二維上對應的圖形是矩形(頂點均在座標軸上, 即其中一個迴歸係數爲0), 對於這樣的矩形來講其頂點更容易與同心橢圓(等值線)相交, 而相交的點則爲最小損失函數的最優解. 也就是說Lasso會出現迴歸係數爲0的狀況. 對於L2範數來講則是圓形,其不會相交於座標軸上的點, 天然也就不會出現迴歸係數爲0的狀況. 固然多個自變量也是一樣的道理sso
相同點:引用
1. 嶺迴歸和Lasso迴歸均是加了正則化項的線性迴歸模型, 本質上它們都是線性迴歸模型.方法
2. 二者均能在必定程度上解決多重共線性問題, 而且能夠有效避免過擬合.
3. 迴歸係數均受正則化參數的影響, 都可以用圖形表示迴歸係數和正則化參數的關係, 並能夠經過該圖形進行變量以及正則化參數的篩選.
不一樣點:
1. 嶺迴歸的迴歸係數均不爲0, Lasso迴歸部分迴歸係數爲0.