我要训练一个检测模型,用自定义的一个类,在Yolov7官方代码上训练经常出现p,r,map三个指标为0的情况,而且训练出来的模型用训练数据集直接检测,检测不到。差不多配置的情况下,yolov5训练又正常,且训练出来的模型可以检测,这是什么原因呢?
指标为0截图:

yolov7配置:


yolov5配置:

我要训练一个检测模型,用自定义的一个类,在Yolov7官方代码上训练经常出现p,r,map三个指标为0的情况,而且训练出来的模型用训练数据集直接检测,检测不到。差不多配置的情况下,yolov5训练又正常,且训练出来的模型可以检测,这是什么原因呢?
指标为0截图:



yolov5配置:

关注你的问题可能出现在一些原因,包括但不限于:
数据问题:请确保你的数据是正确的并且格式是 YOLOv7 可以接受的。 如果你在 YOLOv5 上使用了同样的数据集并且工作正常,那么这可能不是问题所在,但仍然值得检查一下。
配置问题:YOLOv5 和 YOLOv7 可能有一些差异,所以即使你的配置在YOLOv5上能够正常运行,不能保证在YOLOv7也能够正常运行。尤其是学习率、优化器设置、图像大小、数据增强方法等方面的差异,都可能导致训练在某一个版本上正常,在另一个版本上却无法正常进行。
版本问题:在进行目标检测任务时,一般建议使用稳定的版本。即便YOLOv7是YOLO的最新版本,但是它依旧可能存在一些bug或者不稳定的情况。如果使用稳定的YOLOv5就可以得到满意的结果,那可能没有必要切换到较为不稳定的YOLOv7上。
训练时长问题:训练深度学习模型通常需要足够多的训练轮次(epochs)。如果训练时长不够,模型的表现可能会较差。如果你的问题是出现在训练初期,建议你增加训练的轮次看看是否可以改善模型的表现。
你需要根据实际情况,详细检查以上的每一点,找到问题的原因。如果依然找不到答案,可以考虑查看网络上的相关讨论,或向YOLOv7的官方开发团队寻求帮助。