1. 程式人生 > >improve deep learning network 課程筆記

improve deep learning network 課程筆記

reg 一個 防止 課程筆記 均值 初始化 bsp 方差 normal

公開課筆記

Bias & variance

  技術分享圖片

  bias: 1. more epoch 2. deeper network 3.hyperparameters

variance : larger dataset 2. regularization

regularization

  技術分享圖片

  L2 norm: weight decay  

  技術分享圖片

  技術分享圖片

dropout regularization

    技術分享圖片

  dropout:在反向傳播誤差更新權值時候,隨機刪除一部分hidden units,以防止過擬合。

other methods for variance:

  data augmentation:圖像有 翻轉、裁剪、扭曲、旋轉等操作

  early stopping

    在validation error開始上升時,停止訓練

   技術分享圖片

    當神經網絡還未運行太多叠代過程的時候,w參數接近於0。開始叠代過程,w的值會變得越來越大。early stopping要做的就是在中間點停止叠代過程。這樣我們將會得到一個中等大小的w參數,這個結果與得到與L2正則化的結果相似,最終得到w參數較小的神經網絡。

  梯度消失和梯度爆炸vanishing & exploding

  神經網絡過深時易產生的現象.

  解決方法:1.高斯分布權重初始化 2. relu 3.clip gradient(解決梯度爆炸)

    技術分享圖片

      4. shortcut

      技術分享圖片

Mini batches

  技術分享圖片

Exponentially weighted average

技術分享圖片

            技術分享圖片

Bias correction

  技術分享圖片

Monumentum

  技術分享圖片

  技術分享圖片

   技術分享圖片

    技術分享圖片

RMSprop

  技術分享圖片

   技術分享圖片

Adam OPTIMIZER

  Momentum + RMSprop

    技術分享圖片

  技術分享圖片

    技術分享圖片

Learning rate decay

  技術分享圖片

  技術分享圖片

  技術分享圖片

  解決方法:Adam optimizer等

Batch normalize

  技術分享圖片

關於batch normalization 論文解讀:https://www.cnblogs.com/guoyaohua/p/8724433.html

  IID獨立同分布假設,就是假設訓練數據和測試數據是滿足相同分布的,這是通過訓練數據獲得的模型能夠在測試集獲得好的效果的一個基本保障。那BatchNorm的作用是什麽呢?BatchNorm就是在深度神經網絡訓練過程中使得每一層神經網絡的輸入保持相同分布的

    技術分享圖片

  技術分享圖片

  Scale and shift: 

    經過變換後網絡表達能力下降,為了防止這一點,每個神經元增加兩個調節參數(scale和shift),這兩個參數通過訓練來學習,用於對變換後的激活反變換,使得網絡表達能力增強。

  技術分享圖片

  技術分享圖片

  在我們訓練的過程中,對於訓練集的Mini-batch,使用指數加權平均,當訓練結束的時候,得到指數加權平均後的均值和方差,而這些值直接用於Batch Norm公式的計算,用以對測試樣本進行預測。

技術分享圖片

improve deep learning network 課程筆記