觀察神經網絡喺有冇 Dropout 嘅情況下嘅表現差異:
觀察重點:
- 冇 Dropout 嘅網絡喺訓練集上更快達到高準確率
- 有 Dropout 嘅網絡喺測試集上表現更好
- Dropout 會導致訓練過程中準確率波動
- 「保留率」越低,正則化效果越強
Dropout 係乜嘢?
Dropout 係一種深度學習中嘅正則化技術,透過喺訓練過程中隨機關閉(「熄燈」)部分神經元,防止神經網絡過度擬合訓練數據。
運作原理
每次前向傳播時,Dropout 會以一定機率 (1-keep_prob) 暫時關閉神經元:
- 保留率 (Keep Prob) = 0.5 表示平均有一半神經元會被關閉
- 每個批次 (batch) 都會重新隨機抽選要關閉嘅神經元
- 被關閉嘅神經元輸出變為0,且唔會更新相關權重
- 測試/推斷階段會關閉 Dropout,所有神經元都參與計算
點解 Dropout 有效?
- 集成學習效果:隨機關閉神經元等同於訓練多個唔同嘅子網絡,最終效果似多個模型嘅平均
- 減少神經元共適應:神經元唔能依賴特定搭檔,迫使佢哋更加獨立學習
- 引入噪聲:隨機關閉神經元增加咗訓練嘅噪聲,減少對訓練數據嘅死記
Dropout 適用場景
- 數據量相對模型複雜度較小時
- 觀察到明顯嘅過擬合現象
- 特別適合大型深度神經網絡
點使用呢個示範
- 調節 Dropout 保留率,觀察對網絡學習嘅影響
- 比較開啟/關閉 Dropout 時,訓練集同測試集準確率嘅差異
- 觀察網絡圖中被「熄燈」嘅神經元(灰色)
- 注意訓練進度圖中嘅波動情況