mindspore.ops.Dropout2D
- class mindspore.ops.Dropout2D(keep_prob=0.5)[源代码]
在训练期间,根据概率 \(1-keep\_prob\) ,随机地将一些通道设置为0,且服从伯努利分布。(对于shape为 \((N, C, H, W)\) 的四维Tensor,通道特征图指的是shape为 \((H, W)\) 的二维特征图。)
Dropout2D 可以提高通道特征图之间的独立性。
说明
保持概率 \(keep\_prob\) 等于
mindspore.ops.dropout2d()
中的 \(1 - p\) 。- 参数:
keep_prob (float,可选) - 输入通道保留率,数值范围在0到1之间,例如 keep_prob = 0.8,意味着过滤20%的通道。默认值:0.5。
- 输入:
x (Tensor) - shape为 \((N, C, H, W)\) 的四维张量,其中N是批处理,C是通道数,H是特征高度,W是特征宽度。数据类型应为int8、int16、int32、int64、float16或float32。
- 输出:
output (Tensor) - shape和数据类型与 x 相同。
mask (Tensor) - shape与 x 相同,数据类型为bool。
- 异常:
TypeError - x 不是Tensor。
TypeError - x 的数据类型不是int8、int16、int32、int64、float16、float32或float64。
TypeError - keep_prob 的数据类型不是float。
ValueError - keep_prob 值不在 [0.0,1.0] 之间。
ValueError - x 的维度不等于4。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> dropout = ops.Dropout2D(keep_prob=0.5) >>> x = Tensor(np.ones([2, 1, 2, 3]), mindspore.float32) >>> output, mask = dropout(x) >>> print(output.shape) (2, 1, 2, 3)