是否可以将一个神经网络的输出视为两组或更多组输出?
在q学习环境中,我会进一步解释自己:
想象一下,我在同一环境中有两个代理,每个代理 具有不同数量的可执行动作。两位代理商 将具有包含环境变量的相同输入向量 选择他们的行动。
问题是:
我可以使用唯一的神经网络来控制两个代理吗?
一个例子:
代理1具有3个可执行动作,代理2仅具有2个可执行动作 动作。重要的是代理必须工作 合作以最大化回报。我可以将1个神经网络用于 5个输出为两个代理选择最佳行动?如 网络的前3个输出将是第一个的Q值 agent和其他2个将是agent 2的Q值。我的奖赏 功能将始终基于全局结果,每个代理商将 没有具体奖励。
有可能吗?因为我什么都没说。 如果您需要更高的精度,请询问。
我也知道可能的解决方案应该是使网络具有3 * 2个输出,每个输出将包含几个动作(每个代理1个动作),但是我真的很想知道是否有人已经做了类似的事情我之前曾解释过,或者只是有人知道这行不通以及原因。
答案 0 :(得分:1)
我不知道专门用于强化学习的方法,但是多输出神经网络在文献中非常普遍。
如果您希望一个网络同时控制两个代理,则最好在网络分成两个不同的分支之前共享网络的早期阶段,然后在每个分支中都有几层。
有关如何处理多个输出的示例,您可以查看this link。