當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch FeatureAlphaDropout用法及代碼示例


本文簡要介紹python語言中 torch.nn.FeatureAlphaDropout 的用法。

用法:

class torch.nn.FeatureAlphaDropout(p=0.5, inplace=False)

參數

  • p(float,可選的) -元素歸零的概率。默認值:0.5

  • inplace(bool,可選的) -如果設置為 True ,將就地執行此操作

隨機屏蔽整個通道(通道是特征圖,例如,批量輸入中的 樣本的 -th 通道是輸入張量的張量 )。不像在常規 Dropout 中那樣將激活值設置為零,而是將激活值設置為 SELU 激活函數的負飽和值。更多細節可以在論文Self-Normalizing Neural Networks 中找到。

使用來自伯努利分布的樣本,每個前向調用的每個樣本都將獨立屏蔽每個元素,概率為 p。要屏蔽的元素在每次前向調用時都是隨機的,並縮放和移動以保持零均值和單位方差。

通常輸入來自nn.AlphaDropout 模塊。

如論文中所述使用卷積網絡的高效對象定位,如果特征圖中的相鄰像素是強相關的(通常在早期卷積層中就是這種情況),那麽 i.i.d. dropout 不會規範激活,否則隻會導致有效的學習率降低。

在這種情況下,nn.AlphaDropout() 將有助於促進特征圖之間的獨立性,應改為使用。

形狀:
  • 輸入:

  • 輸出: (與輸入的形狀相同)。

例子:

>>> m = nn.FeatureAlphaDropout(p=0.2)
>>> input = torch.randn(20, 16, 4, 32, 32)
>>> output = m(input)

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.nn.FeatureAlphaDropout。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。