jax.nn.initializers.glorot_uniform

jax.nn.initializers.glorot_uniform#

jax.nn.initializers.glorot_uniform(in_axis=-2, out_axis=-1, batch_axis=(), dtype=<class 'jax.numpy.float64'>)[source]#

构建 Glorot 均匀初始化器(也称为 Xavier 均匀初始化器)。

一个 Glorot 均匀初始化器jax.nn.initializers.variance_scaling() 的一个特例,其中 scale = 1.0mode="fan_avg"distribution="uniform"

参数:
  • in_axis (int | Sequence[int]) – 权重数组中输入维度的轴或轴序列。

  • out_axis (int | Sequence[int]) – 权重数组中输出维度的轴或轴序列。

  • batch_axis (Sequence[int]) – 权重数组中应忽略的轴或轴序列。

  • dtype (DTypeLikeInexact) – 权重的 dtype。

返回:

一个初始化器。

返回类型:

初始化器

示例

>>> import jax, jax.numpy as jnp
>>> initializer = jax.nn.initializers.glorot_uniform()
>>> initializer(jax.random.key(42), (2, 3), jnp.float32)  
Array([[ 0.50350785,  0.8088631 ,  0.81566876],
       [-0.6393332 , -0.6865721 ,  0.11003882]], dtype=float32)