View source on GitHub |
Applies Dropout to the input.
tf.compat.v1.layers.dropout(
inputs, rate=0.5, noise_shape=None, seed=None, training=False, name=None
)
Migrate to TF2
This API is not compatible with eager execution or tf.function
.
Please refer to tf.layers section of the migration guide
to migrate a TensorFlow v1 model to Keras. The corresponding TensorFlow v2
layer is tf.keras.layers.Dropout
.
Structural Mapping to Native TF2
None of the supported arguments have changed name.
Before:
y = tf.compat.v1.layers.dropout(x)
After:
To migrate code using TF1 functional layers use the Keras Functional API:
x = tf.keras.Input((28, 28, 1))
y = tf.keras.layers.Dropout()(x)
model = tf.keras.Model(x, y)
Description
Dropout consists in randomly setting a fraction rate
of input units to 0
at each update during training time, which helps prevent overfitting.
The units that are kept are scaled by 1 / (1 - rate)
, so that their
sum is unchanged at training time and inference time.
Args | |
---|---|
inputs
|
Tensor input. |
rate
|
The dropout rate, between 0 and 1. E.g. "rate=0.1" would drop out 10% of input units. |
noise_shape
|
1D tensor of type int32 representing the shape of the
binary dropout mask that will be multiplied with the input.
For instance, if your inputs have shape
(batch_size, timesteps, features) , and you want the dropout mask
to be the same for all timesteps, you can use
noise_shape=[batch_size, 1, features] .
|
seed
|
A Python integer. Used to create random seeds. See
tf.compat.v1.set_random_seed
for behavior.
|
training
|
Either a Python boolean, or a TensorFlow boolean scalar tensor (e.g. a placeholder). Whether to return the output in training mode (apply dropout) or in inference mode (return the input untouched). |
name
|
The name of the layer (string). |
Returns | |
---|---|
Output tensor. |
Raises | |
---|---|
ValueError
|
if eager execution is enabled. |