当前位置: 首页 > article >正文

机器学习和深度学习中的种子设置

一、常见的随机数生成器及其对应的设置方法:

  1. Python内置的随机数生成器

    import random
    random.seed(manual_seed)
    
  2. NumPy的随机数生成器

    import numpy as np
    np.random.seed(manual_seed)
    
  3. PyTorch的随机数生成器

    import torch
    torch.manual_seed(manual_seed)
    
  4. CUDA的随机数生成器(在GPU环境中):

    torch.cuda.manual_seed(manual_seed)
    
  5. 所有GPU的随机数生成器(在多GPU环境中):

    torch.cuda.manual_seed_all(manual_seed)
    
  6. Python的os模块(用于设置环境变量):

    import os
    os.environ['PYTHONHASHSEED'] = str(manual_seed)
    
  7. Python的hashlib模块(用于设置哈希函数的种子):

    import hashlib
    hashlib._seed = manual_seed
    
  8. Python的uuid模块(用于设置UUID生成器的种子):

    import uuid
    uuid._random._seed = manual_seed
    
  9. Python的datetime模块(用于设置日期时间生成器的种子):

    import datetime
    datetime.datetime.now = lambda: datetime.datetime(2022, 1, 1)
    
  10. Python的time模块(用于设置时间生成器的种子):

    import time
    time.time = lambda: 1640995200.0  # 2022-01-01 00:00:00 UTC
    

请注意,这些设置方法可能因Python版本和库的版本而有所不同。在实际使用中,应根据具体情况进行调整。

二、PyTorch

  1. PyTorch的随机数生成器

    import torch
    torch.manual_seed(manual_seed)
    
  2. PyTorch的CUDA随机数生成器(在GPU环境中):

    import torch
    torch.cuda.manual_seed(manual_seed)
    
  3. PyTorch的所有CUDA随机数生成器(在多GPU环境中):

    import torch
    torch.cuda.manual_seed_all(manual_seed)
    
  4. PyTorch的生成器

    import torch
    torch.Generator().manual_seed(manual_seed)
    
  5. PyTorch的优化器随机数生成器

    import torch
    torch.optim.Optimizer.set_random_seed(manual_seed)
    
  6. PyTorch的哈希函数随机数生成器

    import torch
    torch.utils.set_random_seed(manual_seed)

三、TensorFlow

  1. TensorFlow的随机数生成器

    import tensorflow as tf
    tf.random.set_seed(manual_seed)
    
  2. TensorFlow的GPU随机数生成器(在GPU环境中):

    import tensorflow as tf
    tf.config.experimental.enable_tensor_float_32_execution(False)
    
  3. TensorFlow的Keras随机数生成器

    import tensorflow as tf
    tf.keras.backend.set_random_seed(manual_seed)
    
  4. TensorFlow的图像处理随机数生成器

    import tensorflow as tf
    tf.image.set_jitter_random(seed=manual_seed)
    
  5. TensorFlow的优化器随机数生成器

    import tensorflow as tf
    tf.keras.optimizers.Optimizer.set_random_seed(manual_seed)
    
  6. TensorFlow的哈希函数随机数生成器

    import tensorflow as tf
    tf.keras.utils.set_random_seed(manual_seed)
    

http://www.kler.cn/a/456381.html

相关文章:

  • 百度二面,MySQL 怎么做权重搜索?
  • 【前端,TypeScript】TypeScript速成(二):逻辑控制与循环
  • SpringCloud 系列教程:微服务的未来(三)IService接口的业务实现
  • 【Java】IO流练习
  • Pytorch | 利用SMI-FGRM针对CIFAR10上的ResNet分类器进行对抗攻击
  • 每天40分玩转Django:Django类视图
  • 【泰克生物】酵母展示技术在纳米抗体筛选中的应用:优化抗体筛库策略
  • C++入门基础(下)
  • C语言明示常量
  • MATLAB符号对象-微积分与方程求解
  • 电脑没有操作,鼠标光标一直闪烁,旁边一直有个光圈?
  • 人工智能基础软件-Jupyter Notebook
  • 基于汇编实现 hook objc_msgSend,统计方法耗时的方案
  • 奇怪的“LIBTOOL undefined”
  • 波士顿房价预测的详细介绍
  • Pandas01
  • C++ 并发专题 - 实现一个线程安全的队列
  • 4.基于 Couchbase 构建数据仓库的元数据管理方案
  • 【C语言程序设计——循环程序设计】利用循环求数值 x 的平方根(头歌实践教学平台习题)【合集】
  • 钉钉机器人发送excel表(简易版)
  • 使用ArcGIS/ArcGIS pro绘制六边形/三角形/菱形渔网图
  • vim文本编辑器常用命令和快捷键
  • Modern C++ std::atomic简介
  • neo4j无法导入csv文件
  • 渗透测试入门DVWA 教程1:环境搭建
  • 【WRF模拟】最高/最低日气温偏高/偏低的参数调整