0

如果我有一个numpy.random.Generator,检查BitGenerator内部使用的最佳方法是什么?是否BitGenerator有任何状态会影响生成的数字?

4

2 回答 2

0

我知道回答我自己的问题很蹩脚,但我确实发现这_bit_generatorGenerator对象的一个​​属性:

>>> import numpy as np

>>> rng = np.random.default_rng(seed=0)

>>> print(rng._bit_generator)

<numpy.random._pcg64.PCG64 at 0x7f97c7bb7b90>

>>> print(rng._bit_generator.state)

{'bit_generator': 'PCG64',
 'state': {'state': 35399562948360463058890781895381311971,
  'inc': 87136372517582989555478159403783844777},
 'has_uint32': 0,
 'uinteger': 0}
于 2021-11-18T23:54:19.477 回答
0

在我的测试工作空间中使用发电机

In [101]: rng.__getstate__()
Out[101]: 
{'bit_generator': 'PCG64',
 'state': {'state': 146432235854318609275567707501468323380,
  'inc': 280910788252749725750054959837409577313},
 'has_uint32': 0,
 'uinteger': 454544037}

创建一些随机数后,state更改

'state': {'state': 189704257871557326744081098317112680436,
于 2021-11-17T22:03:42.083 回答