【发布时间】:2017-10-03 07:20:31
【问题描述】:
我正在尝试使用DeepLearning4j 库在Java 中实现deep deterministic policy gradient algorithm,但是我在有效实现策略梯度方面遇到了一些麻烦。
在许多 tensorflow 实现中,策略梯度是使用以下简单命令计算的
tf.gradients(output, network_params, -action_gradient)
这是否也可以使用 DeepLearning4J 库以简单的方式完成?
【问题讨论】:
-
你可能想看看 rl4j:github.com/deeplearning4j/rl4j 我们有 a3c、策略梯度,......以及尚未构建的内容
-
我研究了 DQN 和 A3C 的实现,但我认为这是不同的。 DDPG 有以下policy gradient。 Q 的动作梯度不是问题,而是策略输出的梯度与参数有关。在其他实现中,可以使用明确的损失函数,但我不知道如何在这里做到这一点。重新表述我的问题。 1)你如何获取参数的输出梯度?所以对于 2 个输出和 10 个参数,梯度应该是 2x10。 2)我可以将它与Q的动作梯度有效地结合起来吗?
标签: deep-learning gradient-descent reinforcement-learning deeplearning4j