jax.random.dirichlet#
- jax.random.dirichlet(key, alpha, shape=None, dtype=<class 'float'>)[source]#
使用给定的形状和浮点类型采样狄利克雷随机值。
这些值根据概率密度函数分布
\[f(\{x_i\}; \{\alpha_i\}) \propto \prod_{i=1}^k x_i^{\alpha_i - 1}\]其中 \(k\) 是维度,并且 \(\{x_i\}\) 满足
\[\sum_{i=1}^k x_i = 1\]并且 \(0 \le x_i \le 1\) 对于所有 \(x_i\)。
- 参数:
key (KeyArrayLike) – 用作随机键的 PRNG 键。
alpha (RealArray) – 形状为
(..., n)
的数组,用作随机变量的浓度参数。shape (Shape | None | None) – 可选,一个非负整数元组,指定结果批次形状;即,结果形状的前缀,不包括值为
n
的最后一个元素。必须与alpha.shape[:-1]
广播兼容。默认值 (None) 生成的结果形状等于alpha.shape
。dtype (DTypeLikeFloat) – 可选,返回值的浮点类型(如果 jax_enable_x64 为真,则默认为 float64,否则为 float32)。
- 返回值:
一个随机数组,其指定的类型和形状由
shape + (alpha.shape[-1],)
给出(如果shape
不为 None),否则为alpha.shape
。- 返回类型: