Dropout consists in randomly setting a fraction rate of input units to 0 at each update during training time, which helps prevent overfitting.

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

## Arguments

object Model or layer object float between 0 and 1. Fraction of the input units to drop. 1D integer tensor 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=c(batch_size, 1, features). integer to use as random seed. 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. 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. Fixed batch size for layer 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. Whether the layer weights will be updated during training. Initial weights for layer.

Other core layers: layer_activation, layer_activity_regularization, layer_dense, layer_flatten, layer_input, layer_lambda, layer_masking, layer_permute, layer_repeat_vector, layer_reshape
Other dropout layers: layer_spatial_dropout_1d, layer_spatial_dropout_2d, layer_spatial_dropout_3d