Keras 3 API 文档 / 层 API / 正则化层 / SpatialDropout2D 层

SpatialDropout2D 层

[源代码]

SpatialDropout2D

keras.layers.SpatialDropout2D(
    rate, data_format=None, seed=None, name=None, dtype=None
)

Dropout 的空间二维版本。

此版本的功能与 Dropout 相同,但它会丢弃整个二维特征图,而不是单个元素。如果在特征图中的相邻像素强相关(这在早期卷积层中通常如此),那么常规 Dropout 将无法对激活进行正则化,并且只会导致有效学习率降低。在这种情况下,SpatialDropout2D 将有助于促进特征图之间的独立性,因此应该改用此层。

参数

  • rate: 0 到 1 之间的浮点数。要丢弃的输入单元的比例。
  • data_format: "channels_first""channels_last"。在 "channels_first" 模式下,通道维度(深度)在索引 1 处;在 "channels_last" 模式下,它在索引 3 处。它默认为您的 Keras 配置文件 ~/.keras/keras.json 中找到的 image_data_format 值。如果您从未设置过,则默认为 "channels_last"

调用参数

  • inputs: 一个 4D 张量。
  • training: Python 布尔值,指示层应在训练模式(应用 dropout)还是推断模式(直通)下运行。

输入形状

如果 data_format='channels_first',则形状为 (样本数, 通道数, 行数, 列数) 的 4D 张量;如果 data_format='channels_last',则形状为 (样本数, 行数, 列数, 通道数) 的 4D 张量。

输出形状 与输入相同。

参考