np.random.seed() 的使用詳解
在學(xué)習(xí)人工智能時(shí),大量的使用了np.random.seed(),利用隨機(jī)數(shù)種子,使得每次生成的隨機(jī)數(shù)相同。
我們帶著2個(gè)問題來進(jìn)行下列實(shí)驗(yàn)
- np.random.seed()是否一直有效
- np.random.seed(Argument)的參數(shù)作用?
例子1
import numpy as np
if __name__ == '__main__':
i = 0
while (i < 6):
if (i < 3):
np.random.seed(0)
print(np.random.randn(1, 5))
else:
print(np.random.randn(1, 5))
pass
i += 1
print("-------------------")
i = 0
while (i < 2):
print(np.random.randn(1, 5))
i += 1
print(np.random.randn(2, 5))
print("---------重置----------")
np.random.seed(0)
i = 0
while (i < 8):
print(np.random.randn(1, 5))
i += 1

可以看出,np.random.seed()對(duì)后面的隨機(jī)數(shù)一直有效。
兩次利用隨機(jī)數(shù)種子后,即便是跳出循環(huán)后,生成隨機(jī)數(shù)的結(jié)果依然是相同的。第一次跳出while循環(huán)后,進(jìn)入第二個(gè)while循環(huán),得到的兩個(gè)隨機(jī)數(shù)組確實(shí)和加了隨機(jī)數(shù)種子不一樣。但是,后面的加了隨機(jī)數(shù)種子的,八次循環(huán)中的結(jié)果和前面的結(jié)果是一樣的。說明,隨機(jī)數(shù)種子對(duì)后面的結(jié)果一直有影響。同時(shí),加了隨機(jī)數(shù)種子以后,后面的隨機(jī)數(shù)組都是按一定的順序生成的。
例子2,隨機(jī)數(shù)種子參數(shù)的作用
import numpy as np
if __name__ == '__main__':
i = 0
np.random.seed(0)
while (i < 3):
print(np.random.randn(1, 5))
i += 1
i = 0
print("---------------------")
np.random.seed(1)
i = 0
while (i < 3):
print(np.random.randn(1, 5))
i += 1

當(dāng)隨機(jī)數(shù)種子參數(shù)為0和1時(shí),生成的隨機(jī)數(shù)結(jié)果相同。說明該參數(shù)指定了一個(gè)隨機(jī)數(shù)生成的起始位置。每個(gè)參數(shù)對(duì)應(yīng)一個(gè)位置。并且在該參數(shù)確定后,其后面的隨機(jī)數(shù)的生成順序也就確定了。
所以,隨機(jī)數(shù)種子的參數(shù)怎么選擇?這個(gè)參數(shù)只是確定一下隨機(jī)數(shù)的起始位置,可隨意分配。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)簡(jiǎn)單網(wǎng)頁(yè)圖片抓取完整代碼實(shí)例
這篇文章主要介紹了Python實(shí)現(xiàn)簡(jiǎn)單網(wǎng)頁(yè)圖片抓取完整代碼實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12
python實(shí)現(xiàn)密碼驗(yàn)證合格程序的思路詳解
這篇文章主要介紹了python實(shí)現(xiàn)密碼驗(yàn)證合格程序的思路詳解,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06
Python實(shí)現(xiàn)在PDF插入頁(yè)眉頁(yè)腳
在處理篇幅較長(zhǎng)、結(jié)構(gòu)復(fù)雜的PDF文檔時(shí),頁(yè)眉和頁(yè)腳的設(shè)計(jì)與插入就顯得尤為重要,本文主要介紹了如何使用Python代碼操作PDF文檔,在PDF文檔中插入自定義的頁(yè)眉和頁(yè)腳,有需要的可以參考下2024-04-04
Python延時(shí)操作實(shí)現(xiàn)方法示例
這篇文章主要介紹了Python延時(shí)操作實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了Python基于sched庫(kù)與time庫(kù)實(shí)現(xiàn)延時(shí)操作的方法,需要的朋友可以參考下2018-08-08
使用pygame寫一個(gè)古詩(shī)詞填空通關(guān)游戲
這篇文章主要介紹了使用pygame寫一個(gè)古詩(shī)詞填空通關(guān)游戲,之前寫的詩(shī)詞填空的游戲支持python2,現(xiàn)在對(duì)程序進(jìn)行了修改,兼容支持python2和python3,需要的朋友可以參考下2019-12-12
Streamlit+Echarts實(shí)現(xiàn)繪制精美圖表
在數(shù)據(jù)分析和可視化的領(lǐng)域,選擇合適的工具可以讓我們事半功倍,本文主要為大家介紹兩個(gè)工具,Streamlit和ECharts,感興趣的小伙伴可以跟隨小編一起了解下2023-09-09

