我的问题是为什么当我训练相同的算法两次时,每次训练它都会得到不同的结果? 是正常的还是数据或代码有问题?
算法为deep deterministic policy gradient
。
答案 0 :(得分:3)
这是绝对正常的。数据或代码都没有问题。
可以将算法初始化为随机状态,例如人工神经网络中的初始权重。 尝试如下设置numpy种子以提高结果的可重复性:
import numpy as np
np.random.seed(42)
从here了解更多信息。
答案 1 :(得分:2)
当您初始化模型的权重时,权重通常会根据您使用的方式随机进行初始化,很可能是np.random.rand(),因此每次都会产生不同的结果。
如果不想随机分配权重,请使用np.random.seed(10)始终获得相同的结果。如果使用其他任何插件,我肯定有相同的命令。
编辑:在这种情况下,我看到您使用了张量流:
tf.random.set_random_seed(10)