我正在使用具有以下 mwe 的 numpy 随机数生成器:
import numpy as np np.random.seed(40) print(np.random.randint(-3, 4)) rng = np.random.default_rng(seed=40) print(rng.integers(-3, 4))
输出:
3 0
为什么输出不同?
numpy.random.randint 和 numpy.random.seed 使用旧的随机 API,其底层实现完全不同。 numpy.random.default_rng 创建一个 Generator 对象,这是新的 API。
这两个 API 实际上是两个完全独立的 RNG 库,恰好位于同一命名空间中。即使使用相同的种子,输出也不会匹配。
以上就是为什么使用相同的种子会得到不同的随机数?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号