5. 正則化
5.0 手推L1,L2
5.1 什么是正則化,如何理解
定義: 在損失函數后加上一個正則化項(懲罰項),其實就是常說的結構風險最小化策略,即損失函數 加上正則化。一般模型越復雜,正則化值越大。
正則化項是用來對模型中某些參數進行約束,正則化的一般形式如下:
第一項是損失函數(經驗風險),第二項是正則化項
公式可以看出,加上懲罰項后損失函數的值會增大,要想損失函數最小,懲罰項的值要盡可能的小,模型參數就要盡可能的小,這樣就能減小模型參數,使得模型更加簡單。
5.3 L0 L1 L2正則化
L0范數是指向量中非0的元素的個數。如果我們用L0范數來規則化一個參數矩陣W的話,就是希望W的大部分元素都是0。L0范數不連續,不可求導,很難優化求解(NP難問題)
L1范數是指向量中各個元素絕對值之和。L1范數是L0范數的最優凸近似,而且它比L0范數要容易優化求解。
L2范數是指向量各元素的平方和然后求平方根。我們讓L2范數的規則項 ||w||2 最小,可以使得W的每個元素都很小,都接近于0,但與L1范數不同,它不會讓它等于0,而是接近于0。
5.3 L1 L2正則化的區別
稀疏性:L1>L2。L1會趨向于產生少量的特征,而其他的特征都是0,而L2會選擇更多的特征,這些特征都會接近于0。Lasso在特征選擇時候非常有用,而Ridge就只是一種規則化而已。
魯棒性:L1>L2。魯棒性定義為對數據集中異常值的容忍力。L1 范數比L2范數更魯棒,原因相當明顯:從定義中可以看到,L2?范數取平方值,因此它以指數方式增加異常值的影響;L1范數只取絕對值,因此它會線性地考慮它們。
解的數量:L1多個,L2一個。
5.4 L1在0處不可導是怎么處理的
- 坐標軸下降法是沿著坐標軸的方向,Eg: lasso回歸的損失函數是不可導的
- 近端梯度下降(Proximal Algorithms)
- 交替方向乘子法(ADMM)