frh23333 / mepu-owod

Code Implementation of "Unsupervised Recognition of Unknown Objects for Open-World Object Detection"
26 stars 2 forks source link

FloatingPointError: Predicted boxes or scores contain Inf/NaN. Training has diverged. #17

Open xiaomoguhzz opened 4 months ago

xiaomoguhzz commented 4 months ago

作者你好,最近我在尝试复现您的工作,但是我发现训练会出现模型权重为nan的情况。首次出现是在我自己的数据集划分的情况下,运行

train object detectors using known object labels and unknown pseudo labels

     python train_net.py --resume --dist-url auto --num-gpus 4 --config config/MEPU-SOWOD/t1/train.yaml \
        DATASETS.TRAIN \(\"sowod_train_t1_fs\",\) \
       OUTPUT_DIR training_dir/mepu-sowod/fs-t1-train  OPENSET.REW.GAMMA 4.0 \

也就是第一次用伪标注训练检测器。 后来,我尝试直接先复现您的流程,但是在T1的最后一个流程,即:

train object detectors using known object labels and new unknown pseudo labels

    python train_net.py --resume --dist-url auto --num-gpus 4 --config config/MEPU-SOWOD/t1/self-train.yaml \
  OUTPUT_DIR training_dir/mepu-sowod/fs-t1-self-train OPENSET.REW.GAMMA 4.0 \
  MODEL.WEIGHTS training_dir/mepu-sowod/fs-t1-train/model_final.pth \

也出现了该错误:FloatingPointError: Predicted boxes or scores contain Inf/NaN. Training has diverged. 不知道是因为什么问题,我和您的环境略有差别,我的CUDA版本是11.7,所以torch的最低版本只能找到1.13,detectron2的版本是按您给的readme配的,希望您能够帮助我一下

xiaomoguhzz commented 4 months ago

@frh23333 ,在复现论文实验过程中发现rpn的cls损失会变成nan,不知道是什么原因

enmingchang commented 2 months ago

作者您好,我也是遇到了类似的问题,我的是在推理assign soft label的时候score几乎全都是nan