Pytorch在dataloader类中设置shuffle的随机数种子方式

yipeiwu_com6年前Python基础

如题:Pytorch在dataloader类中设置shuffle的随机数种子方式

虽然实验结果差别不大,但是有时候也悬殊两个百分点

想要复现实验结果

发现用到随机数的地方就是dataloader类中封装的shuffle属性

查了半天没有关于这个的设置,最后在设置随机数种子里面找到了答案

以下方法即可:

def setup_seed(seed):
   torch.manual_seed(seed)
   torch.cuda.manual_seed_all(seed)
   np.random.seed(seed)
   random.seed(seed)
   torch.backends.cudnn.deterministic = True
# 设置随机数种子
setup_seed(20)

以上这篇Pytorch在dataloader类中设置shuffle的随机数种子方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

django 常用orm操作详解

Django流程: 1 创建Django项目 : django-admin startproject projectname 2 创建应用: : python manage.py sta...

Python3内置模块random随机方法小结

前言 random是Python中与随机数相关的模块,其本质就是一个伪随机数生成器,我们可以利用random模块基础生成各种不同的随机数,以及一些基于随机数的操作。 生成随机数相关 生...

对Python模块导入时全局变量__all__的作用详解

对Python模块导入时全局变量__all__的作用详解

Python中一个py文件就是一个模块,“__all__”变量是一个特殊的变量,可以在py文件中,也可以在包的__init__.py中出现。 1、在普通模块中使用时,表示一个模块中允许哪...

Python实现类似比特币的加密货币区块链的创建与交易实例

Python实现类似比特币的加密货币区块链的创建与交易实例

虽然有些人认为区块链是一个早晚会出现问题的解决方案,但是毫无疑问,这个创新技术是一个计算机技术上的奇迹。那么,究竟什么是区块链呢? 区块链 以比特币(Bitcoin)或其它加密货币按...

Python字符串逐字符或逐词反转方法

目的   把字符串逐字符或逐词反转过来,这个蛮有意思的。 方法   先看逐字符反转吧,第一种设置切片的步长为-1 复制代码 代码如下:   revchars=astring[::-1]...