在使用 RLlib 的(1.4.0)PPO 网络在自定义多代理环境上进行了一些训练后,我发现我的连续动作变成了nan(爆炸?),这可能是由糟糕的梯度更新引起的,而梯度更新又取决于损失/目标函数。
据我了解,PPO 的损失函数依赖于三个术语:
- PPO 梯度目标[取决于旧策略和新策略的输出、优势和“剪辑”参数 = 0.3,比如说]
- 价值函数损失
- 熵损失[主要是为了鼓励探索]
总损失 = PPO 梯度目标(裁剪)- vf_loss_coeff * VF 损失 + entropy_coeff * 熵。
我已将熵系数设置为 0。所以我专注于导致总损失的其他两个函数。如下面的进度表所示,总损失变为inf的相关部分是问题区域。我发现的唯一变化是政策损失在第 #445 行之前都是负数。
所以我的问题是:谁能解释一下保单损失应该是什么样子,这是否正常?一段时间后,如何通过连续动作变为 nan 来解决此问题?只是降低学习率的问题吗?
编辑
这是相关问题的链接(如果您需要更多上下文)
编辑结束
我真的很感激任何提示!谢谢!
总体损耗 | 保单损失 | VF损失 | |
---|---|---|---|
430 | 6.068537 | -0.053691725999999995 | 6.102932 |
431 | 5.9919114 | -0.046943977000000005 | 6.0161843 |
432 | 8.134636 | -0.05247503 | 8.164852 |
433 | 4.222730599999999 | -0.048518334 | 4.2523246 |
434 | 6.563492 | -0.05237444 | 6.594456 |
435 | 8.171028999999999 | -0.048245672 | 8.198222999999999 |
436 | 8.948264 | -0.048484523 | 8.976327000000001 |
437 | 7.556602000000001 | -0.054372005 | 7.5880575 |
438 | 6.124418 | -0.05249534 | 6.155608999999999 |
439 | 4.267647 | -0.052565258 | 4.2978816 |
440 | 4.912957700000001 | -0.054498855 | 4.9448576 |
441 | 16.630292999999998 | -0.043477765999999994 | 16.656229 |
442 | 6.3149705 | -0.057527818 | 6.349851999999999 |
443 | 4.2269225 | -0.05446908599999999 | 4.260793700000001 |
444 | 9.503102 | -0.052135203 | 9.53277 |
445 | 信息 | 0.2436709 | 4.410831 |
446 | 楠 | -0.00029848056 | 22.596403 |
447 | 楠 | 0.00013323531 | 0.00043436907999999994 |
448 | 楠 | 1.5656527000000002e-05 | 0.0002645221 |
449 | 楠 | 1.3344318000000001e-05 | 0.0003139485 |
450 | 楠 | 6.941916999999999e-05 | 0.00025863337 |
451 | 楠 | 0.00015686743 | 0.00013607396 |
452 | 楠 | -5.0206604e-06 | 0.00027541115000000003 |
453 | 楠 | -4.5543664e-05 | 0.0004247162 |
454 | 楠 | 8.841756999999999e-05 | 0.00020278389999999998 |
455 | 楠 | -8.465959e-05 | 9.261127e-05 |
456 | 楠 | 3.8680790000000003e-05 | 0.00032097592999999995 |
457 | 楠 | 2.7373152999999996e-06 | 0.0005146417 |
458 | 楠 | -6.271608e-06 | 0.0013273798000000001 |
459 | 楠 | -0.00013192794 | 0.00030621013 |
460 | 楠 | 0.00038987884 | 0.00038019830000000004 |
461 | 楠 | -3.2747877999999998e-06 | 0.00031471922 |
462 | 楠 | -6.9349815e-05 | 0.00038836736000000006 |
463 | 楠 | -4.666238e-05 | 0.0002851575 |
464 | 楠 | -3.7067155e-05 | 0.00020161088 |
465 | 楠 | 3.0623291e-06 | 0.00019258813999999998 |
466 | 楠 | -8.599938e-06 | 0.00036465342000000005 |
467 | 楠 | -1.1529375e-05 | 0.00016500981 |
468 | 楠 | -3.0851965e-07 | 0.00022042097 |
469 | 楠 | -0.0001133984 | 0.00030230957999999997 |
470 | 楠 | -1.0735256e-05 | 0.00034000343000000003 |