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

Muhammad Maisam Abbas 2021年7月4日
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,並再次基於該種子生成一個由五個偽隨機陣列成的序列。請注意,兩次我們都獲得了相同的值序列。兩次,隨機數都是通過對相同的種子應用相同的操作來生成的。當我們想在不同的機器上生成相同的隨機數序列時,這種預先確定的隨機數生成型別很有用。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn