NumPy 中的 numpy.random.seed() 函数

本教程将解释 NumPy 中的 numpy.random.seed() 函数。

numpy.random.seed() 函数

numpy.random.seed() 函数用于为 Python 中的伪随机数生成器算法设置种子。伪随机数生成器算法对种子执行一些预定义的操作,并在输出中产生一个伪随机数。种子作为算法的起点。伪随机数是一个看似随机的数字,但实际上并非如此。事实上,计算机无法生成真正的随机数,因为计算机是确定性的并且始终遵循一组给定的指令。这背后的想法是我们将始终为任何机器上的相同种子获得相同的随机数集。

import numpy as np
np.random.seed(1)
array = np.random.rand(5)
np.random.seed(1)
array2 = np.random.rand(5)
print(array)
print(array2)

输出:

[4.17022005e-01 7.20324493e-01 1.14374817e-04 3.02332573e-01
 1.46755891e-01]
[4.17022005e-01 7.20324493e-01 1.14374817e-04 3.02332573e-01
 1.46755891e-01]

在上面的代码中,我们将 NumPy 随机种子设置为 0,并基于该种子生成了一个由五个伪随机数组成的序列。然后我们将种子重置为 0,并再次基于该种子生成一个由五个伪随机数组成的序列。请注意,两次我们都获得了相同的值序列。两次,随机数都是通过对相同的种子应用相同的操作来生成的。当我们想在不同的机器上生成相同的随机数序列时,这种预先确定的随机数生成类型很有用。