論文筆記:dropout


**Improving neural networks by preventing co-adaptation of feature detectors **
arXiv preprint arXiv: 1207.0580, 2012
G.E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov

**Dropout: A Simple Way to Prevent Neural Networks from Overfitting **
JMLR(Journal of Machine Learning Research), 2014
G.E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov

解決什么問題(What)
很大的神經網絡在小數據集上訓練,往往會導致過擬合
對每個訓練樣本,采用dropout的方法,隨機刪除一半的神經元,可以有效減少過擬合
模型結合通常能夠提高機器學習方法的表現。但是,訓練大網絡的計算代價太高,又要訓練一些不同的大網絡,代價就更高了,而且還需要大量的數據,現實中往往沒有足夠的數據。就算訓練了那么多大網絡,用來實際應用也是不可行的,因為模型太大導致了很慢的響應速度。
可以使用dropout來防止過擬合,它起到了一個(和結合多個不同網絡)近似的效果

為什么能解決(Why)
因為dropout防止了復雜的共適應co-adaptation,co-adaptation的意思是每個神經元學到的特征,必須結合其它的特定神經元作為上下文,才能提供對訓練的幫助。
減小co-adaptation,就是要使每個神經元學到的特征,能更通用地提供幫助,它必須組合大量的內部上下文信息。

具體做法(How)
每次更新參數之前,每個神經元有一定的概率被丟棄,假設為p%,p可以設為50或者根據驗證集的表現來選取,輸入層的p比較小,保留概率接近於1
測試階段不dropout,保留所有單元的權重,而且要乘以保留概率1-p%,為了保證輸出期望一致
dropout不只用於前饋神經網絡,還可以用於圖模型,比如玻爾茲曼機。

對dropout的直觀解釋(Why)
對每個樣本都隨機地丟棄一半的單元,使得每個單元不能依賴其它單元來做出決策(這樣學到的特征更獨立)
訓練階段對於每個mini-batch網絡的結構是不一樣的(因為隨機丟棄了一半的單元),測試階段每個單元乘以保留概率。這樣的效果近似於對多個不同的瘦網絡做平均(類似集成的效果,能提供更准確的預測
可以視作一種正則方法,通過給隱藏單元增加噪音

生物學上的motivation(Where)
有性生殖取一半父親基因,一半母親基因,還有低概率的基因突變,產生后代
無性生殖直接取父代的基因,加低概率的基因突變,產生后代
直覺上無性生殖更好,因為它把父代的優秀基因直接傳給了后代。但是有性生殖是物種演化中最重要的方式,一個可能的解釋是自然選擇的准則並不是保持個體健康,而是基本的混合交流。基因不能依賴於當前已存在的基因,它需要和其它的基因共同協同學習有用的東西。
基於這個理論,使用dropout可以減小和固有神經元之間的依賴,使得它們可以隨機地和其它神經元來共同學習,這可以使得神經元更加魯棒,能夠學到更多有用的特征。

權重約束
使用權重約束(也叫Max-norm),大的學習率衰減,高動量可以提升模型表現
用w表示任一隱藏單元的輸入向量,當w的l2范式要大於某個閾值c時,把它約束為c。
這樣可以使用更大的學習率,因為不用擔心w的范式太大導致權重爆炸
dropout提供的噪音允許優化探索不同區域的權重空間(原先難以抵達的區域),所以可以使用較大的學習率衰減,從而做更少的探索,最后陷入最小值

MNIST實驗
28*28的手寫數字圖像,10分類,6萬訓練集,1萬測試集

SVHN(Street View House Number)實驗
32*32*3的房子門牌號圖像,識別房子門牌號,60萬訓練集,2萬6測試集

CIFAR-10和CIFAR-100實驗
32*32*3的現實圖像,10分類和100分類,5萬訓練集,1萬測試集

ImageNet實驗

和其它正則化方法的比較

其它

  • 和貝葉斯神經網絡的比較
  • 做了相關實驗,發現dropout網絡的特征更具有多樣性,更稀疏。
  • 做了相關實驗,討論了dropout rate和數據集大小對模型表現的影響
  • 在測試階段,通常使用Weight Scaling來預測(前面說的乘以1-p%),但是也可以使用另外一種方法Monte-Carlo來預測。
  • 通常使用伯努利分布(p的概率為1,1-p的概率為0)來dropout,但是也可以使用高斯分布來dropout
  • 闡述了Dropout RBM的構建和學習


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM