• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

tensorflow结果可复现设置-随机种子设置(Random Seed)

武飞扬头像
LoveFishO
帮助7

引言

在进行深度学习实验的时候,可能经常会发现,虽然输入的数据都是一样的,但是输出的结果总是会有不同的波动,这主要是由于在神经网络中,很多网络层参数的初始化会涉及到随机,这个就会导致最终的结果会有一些差距,因此如果我们想要固定某一个结果,并复现这个结果,我们就需要提前设置固定的随机种子

设置

一般来说,我们可以通过对每一层的网络层设置固定的随机种子,保持结果可复现,但是显然这是比较麻烦的一件事,所以我们可以通过 tf.random.set_seed() 来全局固定CPU上的随机性,但是当我们使用GPU训练时,则无法起作用,需要通过 tensorflow-determinism库来实现在GPU上固定随机性


# pip install tensorflow-determinism
# tensorflow-determinism = 0.3.0
# tensorflow = 2.9.1

import random
import numpy as np
import tensorflow as tf 

random_seed = 42 
random.seed(random_seed )  # set random seed for python
np.random.seed(random_seed )  # set random seed for numpy
tf.random.set_seed(random_seed )  # set random seed for tensorflow-cpu
os.environ['TF_DETERMINISTIC_OPS'] = '1' # set random seed for tensorflow-gpu

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhcjfkhi
系列文章
更多 icon
同类精品
更多 icon
继续加载