有什么区别
a = numpy.random.RandomState(1)
b = a.rand()
相比
b = numpy.random.rand()
我不太确定这是否与播种有关,而且我对播种概念还不陌生。如果这是播种的情况,那么可以有人解释RandomState
方法是如何做到这一点的,也许还可以提供有关何时播种有用的任何提示。谢谢。
答案 0 :(得分:2)
在您的情况1中,第一个句子(a = numpy.random.RandomState(1)
)以伪随机种子开头。这意味着,无论您运行脚本多少次,始终获得相同的“随机”数。
在第二种情况(b = numpy.random.rand()
)中,种子是预定义的,您不知道使用了什么种子。因此,每次运行脚本时,都会获得未知种子的下一个伪随机数。