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) – 選填;初始化器的預設 dtype。

  • 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)