jax.extend.random.threefry_prng_impl

jax.extend.random.threefry_prng_impl#

jax.extend.random.threefry_prng_impl = ((2,), <function threefry_seed>, <function threefry_split>, <function threefry_random_bits>, <function threefry_fold_in>, 'threefry2x32', 'fry')#

指定 PRNG 密钥形状和操作。

PRNG 实现由密钥类型 K 和对这些密钥进行操作的一组函数确定。密钥类型 K 是一种数组类型,其元素类型为 uint32,形状由 key_shape 指定。每个操作的类型签名为

seed :: int[] -> K
fold_in :: K -> int[] -> K
split[shape] :: K -> K[*shape]
random_bits[shape, bit_width] :: K -> uint<bit_width>[*shape]

PRNG 实现通过 PRNGKeyArray 类适应到密钥 K 的类数组对象,该类应通过 random_seed 函数创建。