AlphaDropout¶
- class torch.nn.AlphaDropout(p=0.5, inplace=False)[source][source]¶
在输入上应用 AlphaDropout。
Alpha Dropout 是一种保持自归一化属性的 Dropout。对于具有零均值和单位标准差的输入,Alpha Dropout 的输出保持输入的原始均值和标准差。Alpha Dropout 与 SELU 激活函数相辅相成,确保输出具有零均值和单位标准差。
在训练过程中,它以概率 p 随机屏蔽输入张量的一些元素,使用伯努利分布的样本。要屏蔽的元素在每个前向调用中随机化,并缩放和偏移以保持零均值和单位标准差。
在评估期间,该模块简单地计算一个恒等函数。
更多细节可以在论文《自归一化神经网络》中找到。
- 参数:
p (浮点数) – 元素被删除的概率。默认值:0.5
inplace (布尔值,可选) – 如果设置为
True
,将在此处进行此操作
- 形状:
输入: 。输入可以是任何形状
输出: 。输出与输入形状相同
示例:
>>> m = nn.AlphaDropout(p=0.2) >>> input = torch.randn(20, 16) >>> output = m(input)