Tensorflow 是否可以用“训练”来训练神经网络;分裂的;输出 有可能考虑一个神经网络的输出作为两个或多个输出组吗?< /强>

Tensorflow 是否可以用“训练”来训练神经网络;分裂的;输出 有可能考虑一个神经网络的输出作为两个或多个输出组吗?< /强> ,tensorflow,neural-network,reinforcement-learning,q-learning,Tensorflow,Neural Network,Reinforcement Learning,Q Learning,我对自己做了更多的解释(在q学习环境中): 假设我在同一个环境中有两个代理,每个代理 具有不同数量的可执行操作。两个代理人 将具有包含环境变量的相同输入向量 选择他们的行动 问题是: 我可以使用一个独特的神经网络来控制这两个代理吗? 一个例子: 代理1有3个可执行的操作,代理2只有2个可执行的操作 行动。一件重要的事情是代理必须工作 合作以获得最大的回报。我可以用1个神经网络和 为两个代理选择最佳操作的5个输出?像 网络的前3个输出将是第一个输出的Q值 代理和其他2个将是代理2的Q值。我的报酬

我对自己做了更多的解释(在q学习环境中):

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

问题是:

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

一个例子:

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

可能吗?因为我没发现有人在谈论这个。 如果你需要更高的精确度,尽管问吧


我也知道一个可能的解决方案应该是创建一个具有3*2个输出的网络,每个输出将是一对操作(每个代理1个操作),但我真的很想知道是否有人已经做了我之前解释过的事情,或者只是有人知道这不能工作以及原因。

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

如果您希望一个网络控制两个代理,那么在将网络分成两个不同的分支(每个分支中有几层)之前,共享网络的早期阶段可能是一个好主意


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

谢谢您的回答,我将尝试这两种方法!感谢链接如果您对答案满意,请将其标记为解决您的问题,以便此问题得到解决。我将等待1或2天,看看是否有人已经进行了试验,因为我看到了你给我的链接的一个不同点,那就是我将只使用一个损失,因为共同的回报,如果你将对两个代理使用一个联合损失,实际上,你可能会把它们看作是一个包含两个代理的状态的单个代理,然后使用两个分支不再真正意义上。是的,但这就是为什么我会尝试两个想法,一个分支和不同的奖励和损失,一个你定义它。