我正在尝试将在纯python中编码的强化学习脚本调整为张量流。
我设计了它并且当我开始通过它进行采样时,我在前向传播中获得了完全相同的值(对于第一个样本),但后来我反向传播并且梯度值不相同(甚至不接近)。
我认为它与RELU通过RELU的非线性有关,但是我再也不确定了。
逐步反向传播网络架构的最简单方法是什么?
答案 0 :(得分:5)
一种方法是打印反向传播梯度的值:
optimizer = tf.train.AdamOptimizer()
variables = tf.trainable_variables()
gradients = optimizer.compute_gradients(cost, variables)
然后,您可以通过将计算梯度的值传递给sess.run
函数