numpy.random.set_state#
- random.set_state(state)#
從元組設定生成器的內部狀態。
當需要手動(重新)設定 RandomState 實例所使用的位元生成器的內部狀態時使用。 預設情況下,RandomState 使用「Mersenne Twister」[1] 虛擬隨機數生成演算法。
- 參數:
- state{tuple(str, 624 個 uints 的 ndarray, int, int, float), dict}
state 元組包含以下項目
字串 ‘MT19937’,指定 Mersenne Twister 演算法。
一個包含 624 個無號整數的 1 維陣列
keys
。一個整數
pos
。一個整數
has_gauss
。一個浮點數
cached_gaussian
。
如果 state 是一個字典,則會直接使用 BitGenerators 的 state 屬性進行設定。
- 回傳值:
- outNone
成功時回傳 ‘None’。
另請參閱
註解
set_state
和get_state
並非使用 NumPy 中任何隨機分佈的必要條件。如果手動更改內部狀態,使用者應確切了解其行為。為了向後相容性,也接受 (str, 624 個 uints 的陣列, int) 的形式,儘管它缺少關於快取 Gaussian 值的一些資訊:
state = ('MT19937', keys, pos)
。參考文獻
[1]M. Matsumoto 和 T. Nishimura,“Mersenne Twister:一種 623 維均勻分佈的虛擬隨機數生成器”,ACM Trans. on Modeling and Computer Simulation,Vol. 8, No. 1, pp. 3-30, Jan. 1998。