numpy.random.SeedSequence#
- class numpy.random.SeedSequence(entropy=None, *, spawn_key=(), pool_size=4)#
- SeedSequence 以可复现的方式混合熵源,为独立的、很可能不重叠的 BitGenerators 设置初始状态。 - 实例化 SeedSequence 后,您可以调用 - generate_state方法来获取适当大小的种子。调用- spawn(n)将创建- n个 SeedSequence,这些 SeedSequence 可用于为独立的 BitGenerators(例如,用于不同线程)提供种子。- 参数:
- entropy{None, int, sequence[int]},可选
- 用于创建 - SeedSequence的熵。所有整数值必须是非负的。
- spawn_key{(), sequence[int]},可选
- 一个额外的熵源,基于此 - SeedSequence在通过- SeedSequence.spawn方法创建的此类对象树中的位置。通常,只有- SeedSequence.spawn会设置此值,用户不会。
- pool_size{int},可选
- 要存储的池化熵的大小。默认为 4,提供一个 128 位熵池。如果使用更大的 PRNG,8(用于 256 位)是另一个合理的选择,但选择其他值几乎没有什么好处。 
- n_children_spawned{int},可选
- 已生成的子代的数量。仅在从序列化形式重建 - SeedSequence时才传递此参数。
 
 - 注意事项 - 实现可复现比特流的最佳实践是,对初始熵使用默认值 - None,然后使用- SeedSequence.entropy来记录/序列化- entropy以实现可复现性。- >>> sq1 = np.random.SeedSequence() >>> sq1.entropy 243799254704924441050048792905230269161 # random >>> sq2 = np.random.SeedSequence(sq1.entropy) >>> np.all(sq1.generate_state(10) == sq2.generate_state(10)) True - 属性:
- entropy
- n_children_spawned
- pool
- pool_size
- spawn_key
- state
 
 - 方法 - generate_state(n_words[, dtype])- 返回 PRNG 播种所需的字数。 - spawn(n_children)- 通过扩展 - spawn_key,生成多个子- SeedSequence对象。