本文主要是介绍python随机性实验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
20210408
0. 引言
在另外一篇文章中说明了在使用深度学习库的时候,实验结果的可复现的属性,《深度学习实验结果可复现所需设置 - 随机数等内容设置》,文中提到,如果是用GPU加速的话,那么很可能导致实验无法复现。那么就只能使用CPU。好在手里服务器比较多,机器性能也还不错。
那么多台机器设置了随机性内容之后,输出结果是否也是一样的呢?!
1. 实验
其实实验之前我也大概知道结果,一般来说应该是一样的,这取决于随机数生成原理。但是还是通过实验来查看结果。代码很简单
#! /bin/pyton3
import os
os.environ['PYTHONHASHSEED'] = '0' print(hash("keras"))import random
random.seed(10)
for i in range(10):print(f"{random.randint(1,10)}")
这里要说明的是,通过python 3.6.8
进行实验,但是上述结果中,通过设置python哈希种子的方法并不生效,而通过环境变量的方法将这部分传入是可以的。
PYTHONHASHSEED=0 python3 test.py
在两台不同的机器上执行上述命令,得到的结果是一样的。
这篇关于python随机性实验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!