【发布时间】:2020-04-18 08:02:11
【问题描述】:
我使用一些类似于以下的代码 - 用于数据增强:
from torchvision import transforms
#...
augmentation = transforms.Compose([
transforms.RandomApply([
transforms.RandomRotation([-30, 30])
], p=0.5),
transforms.RandomHorizontalFlip(p=0.5),
])
在我的测试期间,我想在每次更改模型训练设置时修复随机值以重现相同的随机参数。我该怎么做?
我想做类似于np.random.seed(0) 的事情,所以每次我第一次用概率调用随机函数时,它都会以相同的旋转角度和概率运行。换句话说,如果我根本不更改代码,当我重新运行它时,它必须重现相同的结果。
或者,我可以分离变换,使用p=1,将角度min 和max 固定为特定值并使用numpy 随机数来生成结果,但我的问题是我是否可以保持上面的代码不变.
【问题讨论】:
标签: python deep-learning neural-network pytorch torchvision