L1正則化和L2正則化
在這裏我們首先需要明白 結構風險最小化 原理:
我們所謂的正則化,就是在原來 Loss Function 的基礎上,加了壹些正則化項,或者叫做模型復雜度懲罰項。以我們的線性回歸為例子。
優化目標(損失函數):
加上L1正則項(lasso回歸):
加上L2正則項(Ridge回歸):
下面我們需要理解加了正則化項之後,對於目標函數求解的時候,最終解有什麽變化。
我們從圖像角度來理解:
假設X是壹個二維樣本,那麽要求解的參數也 也是二維的。下圖叫做原函數曲線等高線圖。目標函數在圖中的等高線(同顏色)每壹組 , ? 帶入值都想同,這裏代表著多組解。
下面看L1和L2正則項加入後的函數圖像:
對比兩幅圖我們可以看出來:
下面看這幾步:
L2正則化(嶺回歸)的證明類似。不過結論是L1正則化比L2正則化更加容易獲得稀疏解。
我們總結壹下,正則化之所以能夠降低的原因在於,正則化是結構風險最小化的壹種策略實現。
給 loss function 加上正則項,新得到的目標函數 h = f+normal,需要在 f 和 normal 中做壹個 trade-off。如果還是像原來只優化 f,那麽normal就比較大, h 就不能得到最優解。因此可以看出加正則項可以讓解更加簡單,符合奧卡姆剃刀理論;同時也符合在偏差和方差(方差表示模型的復雜度)分析中,通過降低模型復雜度,得到更小的泛化誤差,降低過擬合。
看壹下L1正則化和L2正則化的區別:
L1正則化就是在 loss function 後面加上L1範數,這樣比較容易求到稀疏解。L2 正則化是在 LF 後面加 L2範數 平方,相比L1正則來說,得到的解比較平滑(不是稀疏),但是同樣能夠保證解中接近於0(不等0)的維度比較多,降低模型的復雜度。