当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.compat.v1.layers.dropout用法及代码示例


将 Dropout 应用于输入。

用法

tf.compat.v1.layers.dropout(
    inputs, rate=0.5, noise_shape=None, seed=None, training=False, name=None
)

参数

  • inputs 张量输入。
  • rate 辍学率,介于 0 和 1 之间。 "rate=0.1" 会丢弃 10% 的输入单元。
  • noise_shape int32 类型的一维张量,表示将与输入相乘的二进制丢失掩码的形状。例如,如果您的输入具有形状 (batch_size, timesteps, features) ,并且您希望所有时间步的 dropout 掩码都相同,则可以使用 noise_shape=[batch_size, 1, features]
  • seed 一个 Python 整数。用于创建随机种子。有关行为,请参见tf.compat.v1.set_random_seed
  • training Python 布尔值或 TensorFlow 布尔标量张量(例如占位符)。是在训练模式(应用 dropout)还是在推理模式(返回未触及的输入)中返回输出。
  • name 图层的名称(字符串)。

返回

  • 输出张量。

抛出

  • ValueError 如果启用了即刻执行。

迁移到 TF2

警告:这个 API 是为 TensorFlow v1 设计的。继续阅读有关如何从该 API 迁移到本机 TensorFlow v2 等效项的详细信息。见TensorFlow v1 到 TensorFlow v2 迁移指南有关如何迁移其余代码的说明。

此 API 是一个遗留 api,仅与 Eager Execution 和 tf.function 兼容,如果您将其与 tf.compat.v1.keras.utils.track_tf1_style_variables 结合使用

请参阅迁移指南的 tf.layers 模型映射部分,了解如何在 TF2 中将 TensorFlow v1 模型与 Keras 一起使用。

对应的 TensorFlow v2 层是 tf.keras.layers.Dropout

到原生 TF2 的结构映射

支持的参数均未更改名称。

前:

y = tf.compat.v1.layers.dropout(x)

后:

要使用 TF1 函数层迁移代码,请使用 Keras 函数 API:

x = tf.keras.Input((28, 28, 1))
 y = tf.keras.layers.Dropout()(x)
 model = tf.keras.Model(x, y)

Dropout 包括在训练期间的每次更新时将输入单元的分数 rate 随机设置为 0,这有助于防止过度拟合。保留的单元按 1 / (1 - rate) 缩放,因此它们的总和在训练时和推理时不变。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.layers.dropout。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。