lovable677 2023-08-26 00:43 采纳率: 25%
浏览 16
已结题

yolov5 训练的时候精度召回率都为nan

img


而且训练完后总结也都是0。。 混淆矩阵全都这背景那一块 保存结果的文件夹里面 预测的图片也全都是0😭😭 这是为什么啊? 有没有佬捞一下

  • 写回答

2条回答 默认 最新

  • 心兰相随引导者 2023-08-26 00:52
    关注

    如果在使用YOLOv5进行训练过程中,遇到精度和召回率的数值均为NaN的情况,可能有以下情况导致:
    数据集不完整或者样本不足:如果数据集的标注不完整,或者存在未标注的对象,会导致YOLOv5在训练阶段无法进行有效的学习。因此,需要确保数据集的标注的可靠性和完备性,比如确保避免图像中存在未标注的对象。
    激活函数出现问题:YOLOv5中用到的Swish和Mish激活函数可能出现溢出的情况,导致计算结果为NaN。解决方法可以使用其他的激活函数,例如ReLU、tanh等来替换。
    学习率太大或太小:如果学习率设置不合理,会导致梯度爆炸或梯度消失,从而训练结果不收敛或过程中出现NaN。建议调整学习率设置,使之逐渐衰减,从而达到最优的训练效果。
    权重初始化不合理:如果网络权重的初始化不合理,可能导致激活函数的输入值过于极端,从而出现数值为NaN的情况。可以尝试使用其他权重初始化方法,例如Xaiver等。
    其他因素:如果以上问题都不是原因,则可能是其他因素导致,可以通过日志和调试信息等进行排查。
    综上所述,如果在使用YOLOv5训练网络时遇到精度和召回率为NaN的情况,需要仔细排查,并针对不同情况采取不同的解决方式。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月14日
  • 已采纳回答 9月6日
  • 创建了问题 8月26日