之前理解的不到位numpy.random.seed, torch.manual_seed使用_LUQC638的博客-CSDN博客
只要随机数种子N是不变的,那么只要np.random.seed(N)或者torch.manual_seed(N)被执行,那么产生随机数就是一样的。比如说在训练模型的程序中,只包含一次np.random.seed(N)和torch.manual_seed(N) *** 作,每次运行该程序文件的时候,由于N不变,那么就保证了无论第几次运行该程序文件,产生的初始参数都是一样的。如所示:同一段代码运行两次,产生的初始化参数是一样的。
import torch import torch.nn as nn import datetime if __name__ == '__main__': print(datetime.datetime.now()) torch.manual_seed(2) model = nn.Conv2d(8,16,3,stride=2) for para in model.state_dict(): # para is the key print(para,'t',model.state_dict()[para])
两次运行结果局部截图:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)