在機器學習以及深度學習中我們經常會看到正則化這一名詞,下面就淺談一下什么是正則化?以及正則化的意義所在?
一、什么是正則化?

正則化項 (又稱懲罰項),懲罰的是模型的參數,其值恒為非負
λ是正則化系數,是一個超參數,調節懲罰的力度,越大則懲罰力度越大。
二、正則化的目的?

先上圖:
上圖從左到右依次為:欠擬合、理想狀態、過擬合
欠擬合從字面意思來看就是欠缺擬合程度,這一般在復雜度很低的模型中出現。從數學上來看,一元一次函數為一條直線、一元二次函數為一個曲線,以此類推。那么參數越多,其越能擬合更復雜的特征,但是一味的增加模型的復雜度就會造成過擬合現象。一旦過擬合,模型的泛化能力以及魯棒性將特別差。那么怎么結局過擬合現象呢?
在從數學方面分析來看,為了減小過擬合,要將一部分參數置為0,最直觀的方法就是限制參數的個數,因此可以通過正則化來解決,即減小模型參數大小或參數數量,緩解過擬合。
在神經網絡中,激活函數(以sigmoid為例)如下圖

如果我們的正則化系數(lambda)無窮大,則權重w就會趨近于0。權重變小,激活函數輸出z變小。z變小,就到了激活函數的線性區域,從而降低了模型的非線性化程度。
三、L1和L2正則化
(一)L1正則化
L1正則化,又稱Lasso Regression,是指權值向量w中各個元素的絕對值之和。比如 向量A=[1,-1,3], 那么A的L1范數為 |1|+|-1|+|3|。
L1正則化可以讓一部分特征的系數縮小到0,所以L1適用于特征之間有關聯的情況可以產生稀疏權值矩陣(很多權重為0,則一些特征被過濾掉),即產生一個稀疏模型,可以用于特征選擇。L1也可以防止過擬合。
那么L1為什么會產生一個稀疏權值矩陣呢?
L1正則化是權值的 絕對值之和,所以L1是帶有絕對值符號的函數,因此是不完全可微的。機器學習的任務就是要通過一些方法(比如梯度下降)求出損失函數的最小值。當我們在原始損失函數后添加L1正則化項時,相當于對損失函數做了一個約束。

此時我們的任務變成在約束下求出取最小值的解。考慮二維的情況,即只有兩個權值和 ,此時對于梯度下降法,求解函數的過程可以畫出等值線,同時L1正則化的函數也可以在二維平面上畫出來。如下圖:
(1)、從優化問題來看

上面的圖不是很清楚,補充如下:

圖中藍色圓圈線是Loss中前半部分待優化項的等高線,就是說在同一條線上其取值相同,且越靠近中心其值越小。
黃色菱形區域是L1正則項限制。帶有正則化的loss函數的最優解要在黃色菱形區域和藍色圓圈線之間折中,也就是說最優解出現在圖中優化項等高線與正則化區域相交處。從圖中可以看出,當待優化項的等高線逐漸向正則項限制區域擴散時,L1正則化的交點大多在坐標軸上,則很多特征維度上其參數w為0,因此會產生稀疏解;而正則化前面的系數,可以控制圖形的大小。越小,約束項的圖形越大(上圖中的黃色方框);越大,約束項的圖形就越小,可以小到黑色方框只超出原點范圍一點點,這是最優點的值中的可以取到很小的值。
(二)、L2正則化
L2正則化是指權值向量中各個元素的平方和然后再求平方根,對參數進行二次約束,參數w變小,但不為零,不會形成稀疏解 。它會使優化求解穩定快速,使權重平滑。所以L2適用于特征之間沒有關聯的情況。
考慮二維的情況,即只有兩個權值和 ,此時對于梯度下降法,求解函數的過程可以畫出等值線,同時L1正則化的函數也可以在二維平面上畫出來。如下圖:

圖中藍色一圈一圈的線是Loss中前半部分待優化項的等高線,就是說在同一條線上其取值相同,且越靠近中心其值越小。圖中黃色圓形區域是L2正則項限制。帶有正則化的loss函數的最優解要在loss函數和正則項之間折中,也就是說最優解出現在圖中優化項等高線與正則化區域相交處。從圖中可以看出,當待優化項的等高線逐漸向正則項限制區域擴散時L2正則化的交點大多在非坐標軸上,二維平面下L2正則化的函數圖形是個圓,與方形相比,被磨去了棱角。因此與相交時使得或等于零的機率小了許多,這就是為什么L2正則化不具有稀疏性的原因。
四、兩種正則化的不同
(一)、從梯度方面來看


上圖分別為(左側)L1、(右側)L2正則化的反向傳播函數
相對于L1:比原始的更新規則多出了η ∗ λ ∗ s g n ( w ) / n η * λ * sgn(w)/nη∗λ∗sgn(w)/n這一項。當w為正時,更新后的w變小。當w為負時,更新后的w變大——因此它的效果就是讓w往0靠,使網絡中的權重盡可能為0,也就相當于減小了網絡復雜度,防止過擬合。
相對于L2:在不使用L2正則化時,求導結果中w前系數為1,現在w前面系數為 1 − η λ / n 1−ηλ/n1−ηλ/n ,因為η、λ、n都是正的,所以 1 − η λ / n 1−ηλ/n1−ηλ/n小于1,它的效果是減小w,這也就是權重衰減(weight decay)的由來。當然考慮到后面的導數項,w最終的值可能增大也可能減小。更小的權值w,從某種意義上說,表示模型的復雜度更低,對數據的擬合剛剛好(這個法則也叫做奧卡姆剃刀),而在實際應用中,也驗證了這一點,L2正則化的效果往往好于未經正則化的效果。
綜合以上兩個式子:當w ww處于[ 1 , + ∞ ] [1, +\infty][1,+∞]時,L2比L1獲得更大的減小速率,而當w ww處于( 0 , 1 ) (0,1)(0,1)時,L1比L2獲得更快的減小速率,并且當w越小,L1更容易接近到0,而L2更不容易變化。下圖反應的更為形象一些。

(二)、概率方面來看

|