深度學習第二課--第一週理論知識

什麼是高偏差/高分差?

高偏差:如果訓練集和測試集的誤差率都在15%左右,欠擬合,訓練不充分。
高分差:如果訓練集誤差率爲1%,測試集誤差率爲15%,過擬合,測試誤差高。

如何解決高偏差

  • 更大的網絡
  • 更長的時間
  • 新的網絡結構

如何解決高分差

  • 更多訓練
  • 訓練時進行正則化
  • 新的網絡結構

正則化

在降低代價函數值得同時,將會對網絡的結構進行簡化,此時可以有效的防止過擬合的問題。

L2正則化

J=1mi=1m(YlogA+(1Y)log(1A))+1mλ2lkjWk,j[l]2J_{正則化}= -\frac{1}{m} \sum_{i=1}^m(YlogA+ (1-Y)log(1-A))+\frac{1}{m}\frac{\lambda}{2} \sum_l \sum_k \sum_j W_{k,j}^{[l]2}
其中,lkjWk,j[l]2\sum_l \sum_k \sum_j W_{k,j}^{[l]2}代碼爲=np.sum(np.square(Wl))。

dropout正則化

每次迭代過程中隨即將其中的一些節點失效。遍歷每層的神經元節點,並設置每層節點隨機消失的概率。例如,我們設置所有節點有0.5的概率會消失,在完成這個過程後,會發現有一些節點現在已經被消失,然後,刪除掉與這些節點關聯的連線。此時,會得到一個節點更少,網絡更加簡單的模型結構,對於該樣本,以同樣的結構進行前向傳播和反向傳播。當下一樣本輸入時,需要重新隨機選擇節點置爲失效並進行前向傳播和反向傳播。
ps:
1、由於dropout正則化會隨即置節點失效,因此不方便算代價值。
2、在進行驗證,測試或應用時,不再適用Dropout函數進行隨機失效處理, 主要原因是因爲在測試或驗證階段,我們不希望輸出的結果是隨機的。

什麼是梯度消失/梯度下降

梯度消失:當網絡很深時,w值很大,y^\hat y呈指數式增長。
梯度下降:當網絡很深時,w值很小,y^\hat y呈指數式下降。

梯度校驗

即導數校驗,θ\theta點的梯度=θ\theta點的導數=g(θ)f(θ+ξ)f(θξ)2ξg^{'}(\theta) \approx \frac{f(\theta + \xi) - f(\theta - \xi)}{2\xi}
dQapprox=J(θ+ξ)J(θξ)2ξdQ _{approx}=\frac{J(\theta + \xi)-J(\theta - \xi)}{2\xi}
error=dQapproxdQ2dQapprox+dQ2error=\frac{||dQ_{approx}-dQ||_2}{||dQ _{approx}||+||dQ||_2}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章