1. 程式人生 > >【學習筆記】正則化

【學習筆記】正則化

正如我們之前在《深入淺出的資料分析》中的筆記提到過的一樣,一個迴歸模型兼具 解釋功能和預測功能。

解釋功能就是對當前的資料進行擬合,而預測功能則是對未出現的資料進行預測。

在一個神經網路模型中我們同樣也可以設定我們的側重點:

如果讓模型具有更強的解釋功能,我們就需要minimize(loss),這裡稱為 經驗風險最小化

如果讓模型具有更強的預測功能,我們就要防止模型 過度擬合數據(過擬合)。這種稱之為 結構風險最小化

根據奧卡姆剃刀定律,我們可以通過降低模型的複雜度來防止過擬合,這種原則稱之為正則化

這裡我們先按照書中介紹一種正則化,L2正則化:

L2正則化很容易理解,在我們的loss項中加上weights的平方和。原文中這裡給出了例子:

假設我們有6個weights, w1=0.2 , w2=0.5 , w3=5 , w4=1 , w5=0.25 , w6=0.75

這裡我們l2正則化需要在loss中加上的數值就是  0.2^2 + 0.5^2 + 5^2 + 1^2 +0.25^2 + 0.75^2 = 26.915

而正則化的結果我們還會乘以一個常數 lambda

lambda較大的話,整個weights分佈更加偏向正態分佈。

lambda較小的話,整個weights分佈更偏向於平均分佈。

lambda為0則 會取消正則化。

原文中並沒有給出lambda的理想值,因為這個是根據資料而決定的,藉助於tensorboard我們可以嘗試不同的lambda值。