如果没有提供种子,NumPy如何为其随机数生成器提供种子?

例如,假设我调用时numpy.random.uniform(0, 1, 10)没有调用任何与种子相关的函数。NumPy 必须使用一些默认种子,但我在文档中找不到它。当没有指定种子时,NumPy 如何种子它的随机数?

回答

对于 NumPy 的遗留numpy.random.*函数,包括numpy.random.uniform,使用一个RandomState没有参数初始化的全局对象。因为种子没有传递给这个RandomState,“MT19937 BitGenerator 是通过从/dev/urandom(或 Windows 模拟)读取数据(如果可用)或从时钟读取种子来初始化的”(https://numpy.org/doc/stable/reference/随机/legacy.html#numpy.random.RandomState)。

Likewise, NumPy's newer BitGenerator classes, such as PCG64, are seeded by default with "fresh, unpredictable entropy ... pulled from the OS" (example for default_rng).


以上是如果没有提供种子,NumPy如何为其随机数生成器提供种子?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>