1. 程式人生 > >drop out為什麽能夠防止過擬合

drop out為什麽能夠防止過擬合

正則 復雜 訓練數據 它的 一個 解決 過程 drop 投票

來源知乎:

dropout 的過程好像很奇怪,為什麽說它可以解決過擬合呢?(正則化)

  • 取平均的作用: 先回到正常的模型(沒有dropout),我們用相同的訓練數據去訓練5個不同的神經網絡,一般會得到5個不同的結果,此時我們可以采用 “5個結果取均值”或者“多數取勝的投票策略”去決定最終結果。(例如 3個網絡判斷結果為數字9,那麽很有可能真正的結果就是數字9,其它兩個網絡給出了錯誤結果)。這種“綜合起來取平均”的策略通常可以有效防止過擬合問題。因為不同的網絡可能產生不同的過擬合,取平均則有可能讓一些“相反的”擬合互相抵消。dropout掉不同的隱藏神經元就類似在訓練不同的網絡(隨機刪掉一半隱藏神經元導致網絡結構已經不同),整個dropout過程就相當於 對很多個不同的神經網絡取平均。而不同的網絡產生不同的過擬合,一些互為“反向”的擬合相互抵消就可以達到整體上減少過擬合。
  • 減少神經元之間復雜的共適應關系: 因為dropout程序導致兩個神經元不一定每次都在一個dropout網絡中出現。(這樣權值的更新不再依賴於有固定關系的隱含節點的共同作用,阻止了某些特征僅僅在其它特定特征下才有效果的情況)。 迫使網絡去學習更加魯棒的特征 (這些特征在其它的神經元的隨機子集中也存在)。換句話說假如我們的神經網絡是在做出某種預測,它不應該對一些特定的線索片段太過敏感,即使丟失特定的線索,它也應該可以從眾多其它線索中學習一些共同的模式(魯棒性)。(這個角度看 dropout就有點像L1,L2正則,減少權重使得網絡對丟失特定神經元連接的魯棒性提高)

drop out為什麽能夠防止過擬合