Applies Alpha Dropout to the input.

    Alpha Dropout is a dropout that keeps mean and variance of inputs to their original values, in order to ensure the self-normalizing property even after this dropout.

    layer_alpha_dropout(
      object,
      rate,
      noise_shape = NULL,
      seed = NULL,
      input_shape = NULL,
      batch_input_shape = NULL,
      batch_size = NULL,
      dtype = NULL,
      name = NULL,
      trainable = NULL,
      weights = NULL
    )

    Arguments

    object

    Model or layer object

    rate

    float, drop probability (as with layer_dropout()). The multiplicative noise will have standard deviation sqrt(rate / (1 - rate)).

    noise_shape

    Noise shape

    seed

    An integer to use as random seed.

    input_shape

    Dimensionality of the input (integer) not including the samples axis. This argument is required when using this layer as the first layer in a model.

    batch_input_shape

    Shapes, including the batch size. For instance, batch_input_shape=c(10, 32) indicates that the expected input will be batches of 10 32-dimensional vectors. batch_input_shape=list(NULL, 32) indicates batches of an arbitrary number of 32-dimensional vectors.

    batch_size

    Fixed batch size for layer

    dtype

    The data type expected by the input, as a string (float32, float64, int32...)

    name

    An optional name string for the layer. Should be unique in a model (do not reuse the same name twice). It will be autogenerated if it isn't provided.

    trainable

    Whether the layer weights will be updated during training.

    weights

    Initial weights for layer.

    Details

    Alpha Dropout fits well to Scaled Exponential Linear Units by randomly setting activations to the negative saturation value.

    Input shape

    Arbitrary. Use the keyword argument input_shape (list of integers, does not include the samples axis) when using this layer as the first layer in a model.

    Output shape

    Same shape as input.

    References

    See also