# tf.keras.initializers.LecunNormal

<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/keras-team/keras/tree/v2.13.1/keras/initializers/initializers.py#L938-L981) |

Lecun normal initializer.

Inherits From: [`VarianceScaling`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/keras/initializers/VarianceScaling), [`Initializer`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/keras/initializers/Initializer)

#### View aliases


**Main aliases**

[`tf.initializers.LecunNormal`](https://www.tensorflow.org/api_docs/python/tf/keras/initializers/LecunNormal), [`tf.initializers.lecun_normal`](https://www.tensorflow.org/api_docs/python/tf/keras/initializers/LecunNormal), [`tf.keras.initializers.lecun_normal`](https://www.tensorflow.org/api_docs/python/tf/keras/initializers/LecunNormal)

<br />

    tf.keras.initializers.LecunNormal(
        seed=None
    )

Also available via the shortcut function
[`tf.keras.initializers.lecun_normal`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/keras/initializers/LecunNormal).

Initializers allow you to pre-specify an initialization strategy, encoded in
the Initializer object, without knowing the shape and dtype of the variable
being initialized.

Draws samples from a truncated normal distribution centered on 0 with
`stddev = sqrt(1 / fan_in)` where `fan_in` is the number of input units in
the weight tensor.

#### Examples:

    # Standalone usage:
    initializer = tf.keras.initializers.LecunNormal()
    values = initializer(shape=(2, 2))

    # Usage in a Keras layer:
    initializer = tf.keras.initializers.LecunNormal()
    layer = tf.keras.layers.Dense(3, kernel_initializer=initializer)

<br />

<br />

<br />

| ## Args ||
|---|---|
| `seed` | A Python integer. Used to make the behavior of the initializer deterministic. Note that a seeded initializer will not produce the same random values across multiple calls, but multiple initializers will produce the same sequence when constructed with the same seed value. |

<br />

<br />

<br />

| ## References ||
|---|---|
| <br /> - [Klambauer et al., 2017](https://arxiv.org/abs/1706.02515) ||

<br />

## Methods

### `from_config`

[View source](https://github.com/keras-team/keras/tree/v2.13.1/keras/initializers/initializers.py#L96-L115)

    @classmethod
    from_config(
        config
    )

Instantiates an initializer from a configuration dictionary.

#### Example:

    initializer = RandomUniform(-1, 1)
    config = initializer.get_config()
    initializer = RandomUniform.from_config(config)

<br />

<br />

<br />

| Args ||
|---|---|
| `config` | A Python dictionary, the output of `get_config()`. |

<br />

<br />

<br />

<br />

| Returns ||
|---|---|
| An `Initializer` instance. ||

<br />

### `get_config`

[View source](https://github.com/keras-team/keras/tree/v2.13.1/keras/initializers/initializers.py#L980-L981)

    get_config()

Returns the initializer's configuration as a JSON-serializable dict.

<br />

<br />

<br />

| Returns ||
|---|---|
| A JSON-serializable Python dict. ||

<br />

### `__call__`

[View source](https://github.com/keras-team/keras/tree/v2.13.1/keras/initializers/initializers.py#L616-L647)

    __call__(
        shape, dtype=None, **kwargs
    )

Returns a tensor object initialized as specified by the initializer.

<br />

<br />

<br />

| Args ||
|---|---|
| `shape` | Shape of the tensor. |
| `dtype` | Optional dtype of the tensor. Only floating point types are supported. If not specified, [`tf.keras.backend.floatx()`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/keras/backend/floatx) is used, which default to `float32` unless you configured it otherwise (via [`tf.keras.backend.set_floatx(float_dtype)`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/keras/backend/set_floatx)) |
| `**kwargs` | Additional keyword arguments. |

<br />