在随机数生成中,种子起到确定性作用。给定相同的种子,每次运行相同的随机数生成算法都会得到相同的随机数序列。这对于实验的可重复性和结果的一致性非常重要。
torch.manual_seed(seed)
是PyTorch中用于设置随机数种子的函数。这个函数接受一个整数参数seed
作为输入,并将其用作生成随机数的种子。当调用torch.manual_seed(seed)
时,PyTorch会使用该种子初始化全局随机数生成器。这将导致后续的随机操作(如初始化模型权重、数据加载的随机化等)在相同的种子下产生相同的结果。
需要注意的是,torch.manual_seed(seed)
只控制由PyTorch生成的随机数。如果代码依赖于其他库或函数(如NumPy),它们可能具有自己的随机数生成方式,需要单独设置它们的随机种子以确保一致性。
import torch
# 设置随机数种子为固定值
seed = 123
torch.manual_seed(seed)
# 使用随机数生成器生成随机数
random_tensor = torch.rand(3, 3)
print(random_tensor)