code: def glorot_normal(seed=None):
      """The Glorot normal initializer, aka Xavier normal initializer.
  
      It draws samples from a truncated normal distribution centered on 0
      with standard deviation (after truncation) given by
      `stddev = sqrt(2 / (fan_in + fan_out))` where `fan_in` is the number
      of input units in the weight tensor and `fan_out` is the number of
      output units in the weight tensor.
  
      Args:
        seed: PRNG seed; see `tfp.random.sanitize_seed` for details.
          Default value: `None`.
  
      Returns:
        init_fn: A python `callable` which takes a shape `Tensor`, dtype and an
          optional scalar `int` number of batch dims and returns a randomly
          initialized `Tensor` with the specified shape and dtype.
  
      References:
        [Glorot et al., 2010](http://proceedings.mlr.press/v9/glorot10a.html)
        ([pdf](http://jmlr.org/proceedings/papers/v9/glorot10a/glorot10a.pdf))
      """
      return lambda shape, dtype, batch_ndims=0: _initialize(  # pylint: disable=g-long-lambda
          shape,
          dtype,
          batch_ndims,
          scale=1.0,
          mode="fan_avg",
          distribution="truncated_normal",
          seed=seed,
      )
  
file_path: probability/tensorflow_probability/python/experimental/nn/initializers/initializers.py
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import samplers
label_desc: Use image node_id 1 for calling a global function with example usage: glorot_normal(seed) and returns: function