请注意,对于现代伪随机数生成器,the seed and the state are related but different concepts。设置种子将实现可重复性,但要进行完全控制,您需要状态。 使用seed()接口意味着您将在传统模式下生成伪随机数(以保持与旧版本的numpy的向后兼容性),并被限制为单个整数的状态控制。目前的建议是,您应该基于更新的Generator方法编写新代码。该链接中有很多文档告诉您如何实现可重复的随机流,以及如何安全地构建多个可重复的流以进行并行化。 如果您坚持使用传统模式,并且确实认为需要完全控制Mersenne Twister的状态,则可以使用set_state,它可以让您控制完整的19937位内部状态。
1条答案
按热度按时间p8ekf7hl1#
请注意,对于现代伪随机数生成器,the seed and the state are related but different concepts。设置种子将实现可重复性,但要进行完全控制,您需要状态。
使用
seed()
接口意味着您将在传统模式下生成伪随机数(以保持与旧版本的numpy的向后兼容性),并被限制为单个整数的状态控制。目前的建议是,您应该基于更新的Generator方法编写新代码。该链接中有很多文档告诉您如何实现可重复的随机流,以及如何安全地构建多个可重复的流以进行并行化。如果您坚持使用传统模式,并且确实认为需要完全控制Mersenne Twister的状态,则可以使用set_state,它可以让您控制完整的19937位内部状态。