AlphaDropout¶
- class torch.nn.AlphaDropout(p=0.5, inplace=False)[source][source]¶
在輸入上應用 Alpha Dropout。
Alpha Dropout 是一種 Dropout 類型,能維持自我正規化的特性。對於具有零均值和單位標準差的輸入,Alpha Dropout 的輸出會維持輸入原始的均值和標準差。Alpha Dropout 與 SELU 激活函數搭配使用,SELU 確保輸出具有零均值和單位標準差。
在訓練期間,它會使用來自白努利分佈的樣本,以機率 p 隨機遮罩輸入張量中的某些元素。要遮罩的元素在每次前向呼叫時都會隨機化,並且會進行縮放和平移,以維持零均值和單位標準差。
在評估期間,該模組僅計算一個恆等函數。
更多詳細資訊可以在論文 Self-Normalizing Neural Networks 中找到。
- 形狀
輸入: 。輸入可以是任何形狀
輸出: 。輸出與輸入的形狀相同
範例
>>> m = nn.AlphaDropout(p=0.2) >>> input = torch.randn(20, 16) >>> output = m(input)