wizyoung / YOLOv3_TensorFlow

Complete YOLO v3 TensorFlow implementation. Support training on your own dataset.
MIT License
1.55k stars 579 forks source link

precision in too low in training step #229

Open cydawn opened 4 years ago

cydawn commented 4 years ago

How to solve the problem that the precision is too low with high recall? I tried to change the nms_threshold but the recall decreased rapidly. I saw someone had changed the nms_topk to solve it but it didn't work.

Can anyone help me?

louisowen6 commented 4 years ago

Hi @cydawn, I also face this problem. My data contains only 1 class and initially, I got very low precision, like around 0.02 but a really high recall, like around 0.95, and after doing below solution, my precision improves up to 0.8 and still get a high recall for around 0.9! Even without decreasing the value of nms_topk parameter. This is what I did:

  1. Increase the score_threshold parameter to 0.1
  2. Change the use_focal_loss parameter to False

Hope this solution also works for you!

cydawn commented 4 years ago

I just found another implementation of yolov3. Thanks for your advice! @louisowen6