jax.nn.initializers.truncated_normal#

jax.nn.initializers.truncated_normal(stddev=0.01, dtype=<class 'jax.numpy.float64'>, lower=-2.0, upper=2.0)[源代码]#

构建一个返回截断正态随机数组的初始化器。

参数:
  • stddev (RealNumeric) – 可选;未截断分布的标准差。 请注意,此函数不应用方差缩放初始化器中使用的标准差校正,如果用户希望使用它,则应通过 stddev 参数自行应用此校正。

  • dtype (DTypeLikeInexact) – 可选;初始化器的默认数据类型。

  • lower (RealNumeric) – 表示截断下限的浮点数。在输出乘以 stddev 之前应用。

  • upper (RealNumeric) – 表示截断上限的浮点数。在输出乘以 stddev 之前应用。

返回:

一个初始化器,它返回的值遵循均值为 0、标准差为 stddev 且范围为 \(\rm{lower * stddev} < x < \rm{upper * stddev}\) 的截断正态分布的数组。

返回类型:

Initializer

>>> import jax, jax.numpy as jnp
>>> initializer = jax.nn.initializers.truncated_normal(5.0)
>>> initializer(jax.random.key(42), (2, 3), jnp.float32)  
Array([[ 2.9047365,  5.2338114,  5.29852  ],
       [-3.836303 , -4.192359 ,  0.6022964]], dtype=float32)