首页 > 编程知识 正文

随机数字表的使用步骤,神鸭特工随机种子

时间:2023-05-04 09:35:56 阅读:184658 作者:1384

pytorch随机种子

在使用pytorch框架搭建模型的时候,模型中的参数都是进行初始化的,且每次初始化的结果不同,这就导致每次的训练模型不一样,要想在程序不变的情况下,使得每次的输出结果一致,那就要设定随机种子。
先来了解一下随机种子:
拿numpy举例:

import numpy as npn=0while(n<5): np.random.seed(2) n+=1 print(np.random.random())print('n')n=0np.random.seed(2)while(n<5): n+=1 print(np.random.random())

输出的结果为:

0.435994902142003760.435994902142003760.435994902142003760.435994902142003760.435994902142003760.435994902142003760.0259262318278913330.54966247787870910.43532239261827690.42036780208748903

当我们设定一个随机种子时,那么关于随机数的选取就确定了。但是我们可以发现,随机数只会确定最近的一个random的选取,那么后面的随机数是怎么确定的呢?
其实,当我们选取了一个随机种子的时候,在确定了接下来的random之后,还会生成下一个种子,这个种子的形成,和你当前选取的种子有关。所以只要确定一个选取的种子,那么接下来的随机数也会被固定。所以我们没有必要对每个随机数的选取,都人为给定一个种子,只需要设定一次就好。

pytorch设定随机种子

之前使用随机种子的设定使用cpu或gpu时需要不同的代码进行设定,现在已经统一为:

torch.manual_seed(10)

种子的数字10可以自己给定。
这样,当我们在训练模型的时候,在不该变程序的基础上,每次运行的结果就会一致了。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。