從有約束條件下的凸優化角度思考神經網絡訓練過程中的L2正則化
神經網絡在訓練過程中,為應對過擬合問題,可以采用正則化方法(regularization),一種常用的正則化方法是L2正則化.
- 神經網絡中L2正則化的定義形式如下:
其中,J(W,b)為正則化下的cost function,等式右邊第一項為未使用正則化的損失函數,第二項為正則化項,因為應用的是矩陣的F范數,所以稱為L2 regularization.
2. 下面從有約束條件下的凸優化角度進行分析
上面的等式可以等價為凸優化問題:\(c(W,b)=\frac{1}{m}\sum_{i=1}^{m}l(y^{(i)},\hat y^{(i)})\),約束條件為\(\sum_{i=1}^{m}||W^{(i)}||_F^2\leq R\),構造如下拉格朗日函數:
之所以拉格朗日因子\(\lambda\)除以2m是為了求導結果與前一項W,b的求導結果形式一致,並無影響.
根據KKT條件,最優的\(W^*,\lambda^*\)需滿足:\(\nabla_WL(W^*,\lambda^*)=0,\lambda^*\geq0,\sum_{i=1}^{m}||W^{*(i)}||_F^2 = R\)
由第一個等式求解的\(W^*\)帶有參數\(\lambda\),而\(\lambda\)的值是由第三個等式決定的.也就是說R與\(\lambda\)有確定的對應關系,或者\(\lambda\)的值有R決定.簡單分析可以發現,R與\(\lambda\)成反比例關系,因為\(\lambda\)越大,在cost function中W的懲罰系數越大(\(||W||_F^2\)的系數越大),因此\(\lambda\)能夠抑制W的大小,與R約束W的范數作用類似.
回到神經網絡訓練中的L2正則化上來,一般情況下,我們直接制定\(\lambda\)的大小,其實與之對應的R也就確定了(意味着上面三個條件中第三個等式已經求解出了\(\lambda\)),此時只剩下第一和第二個條件.第一個條件R是常數,對W求導為0,因此簡化為\(\nabla_WJ(W,b)=0\),也就是正則化條件下的梯度下降法.