dropout原始碼學習

2021-08-20 11:59:29 字數 449 閱讀 4420

注: 這是乙個學習筆記,不定時更新。

裡面用到的技巧: 

1. max-norm regularization

2. dropout 比例的設定,輸入層 隱層都可以執行dropout;

輸入層一般不使用,如果使用的話keep_prob=0.9;

中間層的keep_prob=0.5-0.8,常用0.5

3. 優化演算法:動量+gd

4. 隱單元的啟用函式: sigmoid/ relu/ logistic/ maxout等

maxout之前做實驗基本沒用過,要多注意!

原始碼位址

這個程式開源的比較早,沒有用現有的框架進行實現,而是一步一步用的python比較基礎的**。

cudamat檔案:

1. cudamat package:用gpu進行矩陣運算的加速包

cudamat介紹

2. 

dropout學習筆記

目的 防止過擬合,讓一部分權值停止更新,減少權值之間的依賴 原理 當網路有n個引數時,可以選擇的子網路個數有2 n種,當n很大時,選中相同子網路的概率很小,避免了對同乙個網路重複訓練,過分擬合到訓練集 以前我們網路的計算公式是 採用dropout後計算公式就變成了 上面公式中bernoulli函式,...

深度學習 Drop out

1.原理 在每個訓練批次的前向傳播中,以概率p保留部分神經元。目的是 簡化神經網路的複雜度,降低過擬合風險。根據保留概率p計算乙個概率向量r 1,0,1,0,0,1,1.然後保留部分節點。2.注意點 因為dropout一般只使用在訓練時,而測試時所有的神經元都會保留。為了使訓練和測試時對應,可以有以...

原始碼學習 ArrayList的擴容原始碼分析

原始碼如下 下面是arraylist的擴容機制 arraylist的擴容機制提高了效能,如果每次只擴充乙個,那麼頻繁的插入會導致頻繁的拷貝,降低效能,而arraylist的擴容機制避免了這種情況。如有必要,增加此arraylist例項的容量,以確保它至少能容納元素的數量 param mincapac...