深度學習 避免過擬合的方法

2021-08-21 08:35:05 字數 1635 閱讀 7144

首先說一下什麼叫做過擬合?

如上圖所示,擬合的引數「完美」學習到了我們給出資料,生成的模型可以完全經過所有資料。但是這樣的表現卻只是在訓練集,在測試集表現不好。而我們所需要的是具有更好泛化能力的黑色直線。

l

2l_2

l2​正則化:

c =c

0+λ2

nωtω

c =c_0 +\frac \omega^t\omega

c=c0​+

2nλ​

ωtωc

0c_0

c0​代表原始的代價函式,後面的是正則化項。λ

\lambda

λ是正則化係數,權衡正則化和c

0c_0

c0​的比重。

l

2l_2

l2​正則化是如何防止過擬合的呢

∂ c∂

ω=∂c

0∂ω+

λnω∂

c∂b=

∂c0∂

b\frac = \frac + \frac\omega \\ \frac = \frac

∂ω∂c​=

∂ω∂c

0​​+

nλ​ω

∂b∂c

​=∂b

∂c0​

​ 可以看到l

2l_2

l2​正則化對b的更新沒有影響,但是對於ω

\omega

ω的更新有影響。

ω →ω

−lea

rnin

grat

e∗∂c

∂ω\omega \rightarrow \omega - learningrate * \frac

ω→ω−le

arni

ngra

te∗∂

ω∂c​

由於加上了正則化項,並且λ

>

0\lambda>0

λ>

0,所以會導致ω

\omega

ω變得更小。

那麼為什麼ω

\omega

ω變小可以防止過擬合?

更小的權值,從某種意義上說,表示網路的複雜度更低,對資料的擬合感剛好。

dropout是在訓練時隨機遮蔽一定比例(超引數)的隱藏層單元,並保持輸入和輸出層不變。下一次epoch的時候,再次隨機遮蔽一定比例的隱藏層單元。注意,第一次遮蔽的隱藏層單元在第二次的時候已經解除遮蔽。

對進行翻轉

隨機的切割或者放大縮小

色彩抖動:隨機增加亮度和對比度

隨機層:在訓練時隨機忽略一些層,在測試時使用全部層。(最近新提出的)

深度學習怎樣避免過擬合

過擬合的原因是相對於訓練樣本的數量,模型的容量過大,導致無法降低泛化誤差。解決的方法就有增加訓練樣本的數量,限制模型的容量,和使用整合方法。增加訓練樣本的數量的方法有 1.資料集增強 限制模型的容量的方法有 1.引數範數懲罰 有l2正則,和l1正則 2.提前終止 early stopping 當驗證...

深度學習中過擬合與防止過擬合的方法

1.什麼是過擬合?過擬合 overfitting 是指在模型引數擬合過程中的問題,由於訓練資料報含抽樣誤差,訓練時,複雜的模型將抽樣誤差也考慮在內,將抽樣誤差也進行了很好的擬合。具體表現就是最終模型在訓練集上效果好 在測試集上效果差。模型泛化能力弱。2.過擬合產生的原因?1 在對模型進行訓練時,有可...

深度學習中過擬合與防止過擬合的方法

過擬合 overfitting 是指在模型引數擬合過程中的問題,由於訓練資料報含抽樣誤差,訓練時,複雜的模型將抽樣誤差也考慮在內,將抽樣誤差也進行了很好的擬合。具體表現就是最終模型在訓練集上效果好,在測試集上效果差,模型泛化能力弱。1 在對模型進行訓練時,有可能遇到訓練資料不夠,即訓練資料無法對整個...