【问题标题】:How can I obtain reproducible results using Keras during development?在开发过程中如何使用 Keras 获得可重现的结果?
【发布时间】:2019-09-24 08:06:01
【问题描述】:

我关注了这个link,但我无法设置PYTHONHASHSEED=0PYTHONHASHSEED=0,它不起作用。我的代码如下:

import tensorflow as tf
import numpy as np
import random as rn
sd = 1
np.random.seed(sd)
rn.seed(sd)
config = tf.ConfigProto(intra_op_parallelism_threads=1,inter_op_parallelism_threads=1)
from keras import backend as K
tf.set_random_seed(sd)
sess = tf.Session(graph=tf.get_default_graph(), config=config)
K.set_session(sess)
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"] = ""
os.environ['PYTHONHASHSEED'] = '0'

每次我运行代码时,它都会给出不同的结果。我的环境包括

  • Keras 2.2.4
  • 使用 tensorflow-CPU 1.14.0 作为后端。
  • python 3.7
  • Windows 10

谁能帮我得到一个可重现的结果?

【问题讨论】:

    标签: python tensorflow keras


    【解决方案1】:

    说实话,你不能可靠,显然 Keras 开发人员似乎并不关心这一点(请参阅 this issue)。

    你可以找到一些技巧也许在那里做,但大部分都是在协作上尝试但没有运气,抱歉。

    【讨论】:

      猜你喜欢
      • 2019-12-06
      • 2015-12-01
      • 2020-07-19
      • 2017-12-27
      • 2021-05-11
      • 2018-03-02
      • 2016-11-12
      • 1970-01-01
      • 2020-11-22
      相关资源
      最近更新 更多