# tf.contrib.layers.xavier_initializer

### Aliases:

• tf.contrib.layers.xavier_initializer
• tf.contrib.layers.xavier_initializer_conv2d
tf.contrib.layers.xavier_initializer(
uniform=True,
seed=None,
dtype=tf.float32
)


See the guide: Layers (contrib) > Initializers

Returns an initializer performing "Xavier" initialization for weights.

This function implements the weight initialization from:

This initializer is designed to keep the scale of the gradients roughly the same in all layers. In uniform distribution this ends up being the range: x = sqrt(6. / (in + out)); [-x, x] and for normal distribution a standard deviation of sqrt(2. / (in + out)) is used.

#### Args:

• uniform: Whether to use uniform or normal distributed random initialization.
• seed: A Python integer. Used to create random seeds. See tf.set_random_seed for behavior.
• dtype: The data type. Only floating point types are supported.

#### Returns:

An initializer for a weight matrix.