FeatureAlphaDropout¶
- class torch.nn.FeatureAlphaDropout(p=0.5, inplace=False)[源代码]¶
随机屏蔽整个通道。
通道是一个特征图,例如批输入中第 个样本的第 个通道是输入张量的张量 )。与常规 Dropout 中将激活设置为零不同,激活设置为 SELU 激活函数的负饱和值。更多详细信息可以在论文 自归一化神经网络 中找到。
每个元素将在每次正向调用时独立地针对每个样本以概率
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)