fantomas 发表于 2018-10-13 17:37:07

如何使用TensorFlow获得稳定的结果,设置随机种子

I'm trying to run a neural network multiple times with different parameters in order to calibrate the networks parameters (dropout probabilities, learning rate e.d.). However I am having the problem that running the network while keeping the parameters the same still gives me a different solution


解决办法:
设置当前TensorFlow随机种子仅影响当前默认图形。由于您要为训练创建新图并将其设置为默认值(使用g.as_default():),因此必须使用块设置随机种子。 例如,循环应如下所示:


for i in range(3):
g = tf.Graph()
with g.as_default():
    tf.set_random_seed(1)
    accuracy_result, average_error = network.train_network(
      parameters, inputHeight, inputWidth, inputChannels, outputClasses)请注意,这将对外部for循环的每次迭代使用相同的随机种子。如果要在每次迭代中使用不同但仍然确定的种子,可以使用tf.set_random_seed(i + 1)。






页: [1]
查看完整版本: 如何使用TensorFlow获得稳定的结果,设置随机种子