首页 > 解决方案 > numpy random.seed() 取值的解释

问题描述

我很想知道,种子方法如何解释我们传递给它的值。我知道 numpy.random 包的种子方法用于维护随机函数的状态,以便每次执行代码时它都会生成相同的输出,但它是否指定了随机函数将生成的任何内容是统计标准化的还是总数的方差将您传递给种子方法的数字或任何东西?

import numpy as np
np.random.seed(101)
np.random.randn(4,4)

# will give the output
0.421177  0.587635  0.788256  0.482779
0.606076 -0.313919 -0.750010  0.569556
-0.901587  0.674378  0.504509 -0.555530
0.187578 -0.688103 -0.803551  0.816346

总的来说,我的问题是:这个生成的数字中是否有任何属性与我们提供给种子方法的数字相关?

标签: python-3.xnumpyrandomseed

解决方案


根据文档,numpy.random.RandomState使用的种子用于 Mersenne Twister 伪随机数生成器实现。

如果我理解正确的话,种子就是梅森捻线机系列的起点。

https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.random.RandomState.html#numpy.random.RandomState

https://en.wikipedia.org/wiki/Mersenne_Twister


推荐阅读