PyTorch训练模型中 box_loss、obj_loss、cls_loss为nan的原因及解决方法 1. 整体流程 在理解“为什么使用PyTorch训练模型的box_loss、obj_loss、cls_loss都为nan”之前,我们需要了解整个训练过程的流程。下面是PyTorch训练模型的一般流程: 准备数据:首先我们需要准备训练数据,包括输入数据和对应的标签。 定义模型:然后...
前期训练过程正常,Loss正常下降,奇怪的是会在某一个batch 的时间节点,Box Loss突变为inf,然后在这个batch之后loss全变为NaN,甚至直接影响到分类Loss,问题排查过程如下: 1. 考虑到类别不均衡问题,梯度易爆炸,降低学习率与batch size 0.01每次减小一个数量级->0.00001,最后调整为0 无果,与学习率无关 2. 存在脏数...
Both of them give nan loss in first epoch. Only 'loss_rpn_box_reg' becomes nan. What can be the reason ? I also discussed this issue here. Another thread.Member fmassa commented Jul 15, 2019 @prajjwal1 in my case (and I think it might be the same in your case), the problem ...
训练中loss_bbox和loss_dfl第一个epoch就是0,然后训练出来的权重去推理测试,得不到任何结果 03/18 06:15:39 - mmengine - INFO - Epoch(train) [1][50/70] base_lr: 2.0000e-04 lr: 9.8000e-06 eta: 1:58:38 time: 1.2826 data_time: 0.0524 memory: 11573 grad_norm: nan loss: 331.5620 los...
关于GIoU实践可能存在的问题 在博主训练yolov3的时候,使用了GIoUloss,不用与smoothL2-loss的计算只要算坐标的一个偏置量的差值,要算GIoUloss必须先求出坐标,而在求坐标的时候使用了e为底的指数,造成了w和h为inf的情况,导致loss为nan,采用的办法是限制w和h为一个较大的值。