seed的作用

# Setup seeds设置种子
    torch.manual_seed(cfg.get("seed", 1337))  # 为CPU设置随机种子,cfg为字典,get方法如果不存在该键,则返回默认值
    torch.cuda.manual_seed(cfg.get("seed", 1337))  # 为当前GPU设置随机种子
    # 如果使用多个GPU,应该使用torch.cuda.manual_seed_all()为所有的GPU设置种子。
    np.random.seed(cfg.get("seed", 1337))
    random.seed(cfg.get("seed", 1337))
# Setup device
    device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

seed() 方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数

以下是 seed() 方法的语法:

import random

random.seed( [x] )

seed(()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

x -- 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。x可以是任意的整数,目的是做一个标记,不同的x的值固定的是不同的随机数

其他的说法: seed( ) 用于指定随机数生成时所用算法开始的整数值,如果使用相同的seed( )值,则每次生成的随即数都相同,如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。

本函数没有返回值。

其他重要的例子和思考在这个链接上面:numpy.random.seed()的使用

seed( ) 用于指定随机数生成时所用算法开始的整数值。
1.如果使用相同的seed( )值,则每次生成的随即数都相同;
2.如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。
3.设置的seed()值仅一次有效

你可能感兴趣的:(python)