PaddlePaddle / PaddleYOLO

🚀🚀🚀 YOLO series of PaddlePaddle implementation, PP-YOLOE+, RT-DETR, YOLOv5, YOLOv6, YOLOv7, YOLOv8, YOLOv10, YOLOX, YOLOv5u, YOLOv7u, YOLOv6Lite, RTMDet and so on. 🚀🚀🚀
https://github.com/PaddlePaddle/PaddleYOLO
GNU General Public License v3.0
552 stars 133 forks source link

Single-class yolov7 training hangs #200

Closed danielvandenberg95 closed 7 months ago

danielvandenberg95 commented 10 months ago

问题确认 Search before asking

请提出你的问题 Please ask your question

When training yolo7 (tiny or x) with multiple classes everything works fine, but when training with a single class it hangs on the first epoch.

My config is as follows:

EvalDataset: !COCODataSet
  allow_empty: true
  anno_path: annotations/valid.json
  data_fields:
  - image
  dataset_dir: <<my_dataset_dir>>
  image_dir: images
EvalReader:
  batch_size: 2
LearningRate:
  base_lr: 0.0001
TestDataset: !ImageFolder
  anno_path: annotations/valid.json
  dataset_dir: <<my_dataset_dir>>
TestReader:
  batch_size: 2
TrainDataset: !COCODataSet
  allow_empty: false
  anno_path: annotations/train.json
  data_fields:
  - image
  - gt_bbox
  - gt_class
  - is_crowd
  dataset_dir: <<my_dataset_dir>>
  image_dir: images
TrainReader:
  batch_size: 64
_BASE_:
- /data/repos/PaddleYOLO/configs/yolov7/yolov7_tiny_300e_coco.yml
eval: true
find_unused_parameters: false
log_iter: 1
metric: COCO
num_classes: 1
output_eval: <<my_output_dir>>202311130842/eval
save_dir: <<my_output_dir>>202311130842
snapshot_epoch: 2
use_gpu: true
weights: <<my_output_dir>>202311130842
danielvandenberg95 commented 10 months ago

Oh, changing find_unused_parameters to true solved it. That's a bug?

nemonameless commented 7 months ago

Thank you for your suggestion