是否可以训练具有“分离”输出的神经网络

时间:2019-06-05 07:42:54

标签: tensorflow neural-network reinforcement-learning q-learning

是否可以将一个神经网络的输出视为两组或更多组输出?

在q学习环境中,我会进一步解释自己:

  

想象一下,我在同一环境中有两个代理,每个代理   具有不同数量的可执行动作。两位代理商   将具有包含环境变量的相同输入向量   选择他们的行动。

问题是:

我可以使用唯一的神经网络来控制两个代理吗?

一个例子:

  

代理1具有3个可执行动作,代理2仅具有2个可执行动作   动作。重要的是代理必须工作   合作以最大化回报。我可以将1个神经网络用于   5个输出为两个代理选择最佳行动?如   网络的前3个输出将是第一个的Q值   agent和其他2个将是agent 2的Q值。我的奖赏   功能将始终基于全局结果,每个代理商将   没有具体奖励。

有可能吗?因为我什么都没说。 如果您需要更高的精度,请询问。

我也知道可能的解决方案应该是使网络具有3 * 2个输出,每个输出将包含几个动作(每个代理1个动作),但是我真的很想知道是否有人已经做了类似的事情我之前曾解释过,或者只是有人知道这行不通以及原因。

1 个答案:

答案 0 :(得分:1)

我不知道专门用于强化学习的方法,但是多输出神经网络在文献中非常普遍。

如果您希望一个网络同时控制两个代理,则最好在网络分成两个不同的分支之前共享网络的早期阶段,然后在每个分支中都有几层。

有关如何处理多个输出的示例,您可以查看this link