深度學習中的正則化(一)

  • 本文首發自公衆號:RAIS,點擊直接關注。

前言

本系列文章爲《Deep Learning》讀書筆記,可以參看原書一起閱讀,效果更佳。本文我們聊一聊深度學習中的正則化。

深度學習中的正則化

一般來說,深度學習所要做的事情是用已有的訓練集訓練一個網絡模型,然後針對新的數據給出預測,我們期望我們的模型在訓練集和測試集上都有良好的表現,但是有的時候兩者不可兼得。一種情況是在訓練集上表現很好,在測試集上表現不好或表現一般;另一種情況是在訓練集上表現不好或表現一般,在測試集上表現很好。相比較而言我們更傾向於後者,因爲這是我們訓練模型的目的。

爲什麼會出現這種情況,難道不是應該訓練集上表現的越好在測試集上表現越好嗎?不是的,我們在前面的文章中分析過,過度的擬合一個訓練集往往會放大哪些沒有那麼重要的向量或因素,過擬合會導致泛化能力的下降,正則化就是爲了減小測試誤差的,雖然有的時候可能會以增大訓練誤差爲代價,但是這是值得的,這些策略統稱爲正則化。下面給出一個簡單的非嚴謹的正則化定義:

正則化:減小泛化誤差而不是訓練誤差所做的對算法的修改

我們經常會對估計進行正則化,估計的正則化採取的方式是以偏差的增大來換取方差的減小,尤其是顯著的減小方差而較小的增大偏差往往是我們追求的目標。接下來我們就分別分析介紹一下正則化的策略。

正則化的策略

參數範數懲罰

\[\widetilde{J}(θ; X, y) = J(θ; X, y) + αΩ(θ), α∈[0, ∞) \]

α 是懲罰參數,當 α 爲 0 時代表沒有懲罰;Ω 是範數懲罰項;J 爲目標。神經網絡中,參數包括每一層的仿射變換的權重和偏置,我們只對權重做懲罰。

L2 正則化(權重衰減)

感知有較高方差輸入,與輸出目標協方差較小的特徵的權重會收縮。

\[目標函數:\widetilde{J}(θ; X, y) = J(θ; X, y) + \frac{α}{2}w^Tw,Ω(θ)=\frac{1}{2}||w||^2_2 \\ 梯度:\nabla_w\widetilde{J}(θ;X,y)=αw+\nabla_wJ(θ;X,y) \\ 單步梯度下降更新權重:w\leftarrow w-\epsilon(αw+\nabla_wJ(θ;X,y)) \]
L1 正則化

\[目標函數:\widetilde{J}(θ; X, y) = J(θ; X, y) + α||w||_1 \\ 梯度:\nabla_w\widetilde{J}(θ;X,y)=αsign(w)+\nabla_wJ(θ;X,y) \]

總結

本文描述了正則化策略中最常見的一種,參數範數懲罰,並介紹了 L2 和 L1 兩種最常見的範數懲罰策略。

  • 本文首發自公衆號:RAIS,點擊直接關注。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章