随机种子seed设置和知识

机器学习中经常需要设置随机种子,在此记录一下一些知识和常见的设置

1.了解

1.为什么需要设置seed

设置随机种子是为了确保实验的可重复性。在机器学习和深度学习中,很多操作(如权重初始化、数据增强、批处理顺序等)都会涉及到随机性。如果不设置随机种子,每次运行程序时可能会得到不同的结果。通过设置随机种子,你可以确保每次运行的实验使用相同的随机数序列,从而得到一致的结果,便于调试和结果比较。
一句话总结:为了可控,实验结果可重复

2.conda 环境需要安装random吗

不需要在 Conda 环境中单独安装 random,因为它是 Python 标准库的一部分。random 模块默认随 Python 一起安装,所以只要你的 Conda 环境中安装了 Python,就已经包含了 random 模块。

3.在python代码的一个类中import random中设置随机种子,另外一个类中import random还需要设置随机种子吗

在 Python 中,random 模块的状态是全局的,这意味着一旦你在某处设置了随机种子,例如通过 random.seed(),它会影响整个程序中所有使用 random 模块生成的随机数。

因此,如果你在某个类或模块中已经使用 random.seed() 设置了种子,那么其他地方导入 random 模块时,不需要再重复设置种子,除非你希望在不同的地方使用不同的随机数序列。

4.对于numpy,np.random也是像random一样一处设置即可吗

是的,np.random(NumPy 的随机数生成器)和 Python 标准库的 random 模块一样,它的随机数生成器也是全局的。这意味着,一旦你在某处通过 np.random.seed() 设置了随机数种子,这个种子会影响到整个程序中所有使用 np.random 生成的随机数,除非你在其他地方显式地重新设置种子

2.设置

1.env 设置seed

	以openAI的gym为例
	#创建完环境后
	env = gym.make(env_id)
    一个是环境需要设置seed,然后动作空间也需要设置seed
    env.seed(seed)
    env
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值