深度學習 網路正則化

2021-08-20 01:48:54 字數 817 閱讀 1182

in

(1n∑

i=1n

(yi−

f(xi

))2+

r(d)

)min(1n∑i=1n(yi−f(xi))2+r(d))2=

12λ|

|ω||

22l2=12λ||ω||222=

λ||ω

||1=

∑i|ω

i|l2=λ||ω||1=∑i|ωi|1|

|ω||

1+λ2

||ω|

|22λ1||ω||1+λ2||ω||22|ω

||2<

c||ω||2

原理:對於某層神經元,在訓練階段均以概率p隨機將該神經元權重設定為0,在測試階段所有神經元均呈啟用狀態,但其權重需要乘(1 - p)以保證訓練和測試階段各自權重擁有相同的期望。 

如圖: 

由於失活的神經元無法參與到網路的訓練,因此每次訓練(前向操作和反向操作時相當於面對乙個全新的網路)。舉例:以兩層網路,各層有三個神經元的簡單神經網路為例,若每層隨機失活乙個神經元,該網路共可產生9種子網路。測試階段則相當於9個子網路的平均整合。 

注意:隨機失活操作在工程實現上並沒有完全遵照其原理,而是在訓練階段直接將隨機失活後的網路響應乘以 1 / (1 - p),這樣測試階段便不需做任何量級調整。這樣的隨機失活被稱為「倒置隨機失活」。

深度學習網路模組化

在設計深度神經網路的時候,往往需要迭代很多個結構相似 引數不同的模組,這時候如果把乙個個的模組寫出來當然可以,而且邏輯很清晰,但缺點是 工作量大 形式上太笨。一種更為簡潔的方法是類似定義函式或定義類一樣把乙個個模組給抽象出來,然後把模組在神經網路中引數化。如下 import torch.nn as ...

深度學習網路結構

lenet 一共有五層,兩層卷積加三層全連線,架構如下 卷積部分 均無padding 輸入kernel size stride kernel個數 輸出池化 第一層卷積 32 32 3 5 51 628 28 6 14 14 6 第二層卷積 14 14 6 5 51 1610 10 16 5 5 16...

深度學習 網路訓練技巧

1.1 學習率 learning rate 學習率 是控制模型學習效率 步長 的權重。學習率的大小區分區別 學習率大 學習率小 學習速度快慢 應用場合 訓練初期 數次epoch過後 缺點1.容易損失過大 2.容易發生振盪 1.容易過擬合 2.收斂速度慢 學習率的設定 在訓練過程中,一般根據訓練輪數設...