2

DQN上的 OpenAI 基线代码中,tf.stop_gradient在构建操作图期间用于目标网络的 q 值,以防止目标 q 值对最小化损失的贡献。(第 213 行)

但是,在调用 时minimizevar_list仅将 指定为tf.Variable在被优化的 q 网络下的具有范围的变量,不包括在目标 q 网络下的具有范围的变量。(第 223 行)

我不确定他们为什么两者都做。这两种方法似乎达到了相同的结果。

4

1 回答 1

2

这是多余的。IMO 代码读起来更好——您知道渐变不会流经该表达式,而且您确切知道哪些变量会受到影响。

一个确实足以达到同等效果。

于 2017-05-31T08:27:36.860 回答