神经网络和Pytorch的新手。
我在每个迷你批次中有 300 个重播记忆。我见过人们为300个重播记忆计算一个损失,但这对我来说并没有意义。300个重播记忆来自非常不同的游戏状态,为什么将预测和目标之间的300个差异合并为一个值是有意义的?当模型反向传播时,梯度是否会分成 300 个分支,每个分支对应于迷你批次中的一个条目?
例如,仍然使用每个批次中有 300 个重播记忆的小批次。我的策略网络输出超过 10 个操作的概率分布,或 300 x 10 张量,我的目标概率分布具有相同的形状。我想找到我的预测和目标之间的交叉熵损失。我想知道我是否应该在 300 个大小为 [10] 张量的预测目标对之间找到 300 个交叉熵损失,或者在 1 个大小为 [3000] 张量的预测目标对之间找到 1 个交叉熵损失,如果这有意义的话。另外,我应该如何在 Pytorch 中实现这一点?我应该得到什么形式的损失?
已解决。损失将是一个浮点数,它是 300 个迷你批次的总和。