class_docstr: Apply multiplicative 1-centered Gaussian noise.
  As it is a regularization layer, it is only active at training time.
  
  When you use this layer as the first layer of a model, you need to provide the argument
  input_shape (a shape tuple, does not include the batch dimension).
  
  # Arguments
  p: Drop probability. Float between 0 and 1.
     The multiplicative noise will have standard deviation 'sqrt(p/(1-p))'.
  input_shape: A shape tuple, not including batch.
  name: String to set the name of the layer.
        If not specified, its name will by default to be a generated string.
  
  >>> gaussiandropout = GaussianDropout(0.45, input_shape=(4, 8))
  creating: createZooKerasGaussianDropout
code: def __init__(self, p, input_shape=None, **kwargs):
      super(GaussianDropout, self).__init__(
          None,
          float(p),
          list(input_shape) if input_shape else None,
          **kwargs,
      )
  
file_path: analytics-zoo/pyzoo/zoo/pipeline/api/keras/layers/noise.py
imports: import sys
  from ..engine.topology import ZooKerasLayer
label_desc: Use image node_id 1 to create a new GaussianDropout object from inherited base classes: ZooKerasLayer with example: obj = GaussianDropout(p, input_shape)