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

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

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

  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.lryc.cn/news/509595.html

相关文章:

  • [手机Linux] 七,NextCloud优化设置
  • Ruby+Selenium教程
  • 【论文阅读笔记】Learning to sample
  • 边缘计算收益稳定
  • 域名和服务器是什么?域名和服务器是什么关系?
  • IBatis和MyBatis在细节上的不同有哪些
  • 使用Python获取PDF文本和图片的精确位置
  • 【AI日记】24.12.25 kaggle 比赛 2-13
  • 【网络安全】用 Frida 修改软件为你所用
  • 《信管通低代码信息管理系统开发平台》Windows环境安装说明
  • 使用强化学习与遗传算法优化3D低空物流路径_版本2
  • 【MinIO系列】MinIO Client (mc) 完全指南
  • 【微信小程序】2|轮播图 | 我的咖啡店-综合实训
  • React与Vue的区别(相同点和不同点)
  • Python语言的文件操作
  • 前端Pako.js 压缩解压库 与 Java 的 zlib 压缩与解压 的互通实现
  • unity 打包出来的所有执行文件内容打包成一个exe程序
  • 华为管理变革之道:组织文化与活力
  • 仿闲鱼的二手交易小程序软件开发闲置物品回收平台系统源码
  • PostgreSQL CRUD 操作指南
  • 4X4规模S盒分量布尔函数计算工具(附各大常见分组加密算法S盒查找表和其对应分量布尔函数截图)
  • 模拟——郑益慧_笔记1_绪论
  • 金融租赁系统的发展与全球化战略实施探讨
  • vue3入门教程:计算属性
  • Docker怎么关闭容器开机自启,批量好几个容器一起操作?
  • shell脚本(全)
  • 华为手机建议使用adb卸载的app
  • 论文解读 | EMNLP2024 一种用于大语言模型版本更新的学习率路径切换训练范式
  • Java基础(Json和Java对象)
  • Linux 中检查 Apache Web Server (httpd) 正常运行时间的 4 种方法