问题小记--第1篇: pytorch中随机初始化种子

随机数种子manual_seed

  • torch.manual_seed(seed)

用于设计初始化种子,保证每次随机初始化数据时,得到的数据是相同的. 从下面的实例可以看出,随机初始化种子相当于固定了随机初始化的顺序,保证每次随机初始化的数据都是相同的.

import torch

seed = 10
torch.manual_seed(seed)  # 设置随机初始化种子 1
a = torch.rand([2,3])
torch.manual_seed(seed)  # 设置随机初始化种子 2
b = torch.rand([2,3])

# 结果, a==b,两者相等
a = tensor([[0.4581, 0.4829, 0.3125],
        [0.6150, 0.2139, 0.4118]])
b = tensor([[0.4581, 0.4829, 0.3125],
        [0.6150, 0.2139, 0.4118]])

# 如果票注释掉第二个随机初始化种子, a != b
seed = 10
torch.manual_seed(seed)  # 设置随机初始化种子 1
a = torch.rand([2,3])
# torch.manual_seed(seed)  # 设置随机初始化种子 2
b = torch.rand([2,3])

# 结果 a != b
a = tensor([[0.4581, 0.4829, 0.3125],
        [0.6150, 0.2139, 0.4118]])
b = tensor([[0.6938, 0.9693, 0.6178],
        [0.3304, 0.5479, 0.4440]])

你可能感兴趣的:(问题小记)