有没有大佬之前训练的yolov7有结果,后来再用这个权重运行test.py出现RuntimeWarning: All-NaN slice encountered vmin = np.nanmin(calc_data)这个警告。然后P R MAP都为0!!!!! 有没有大佬知道为何出现这个现象。
参考GPT:
这个警告和结果为零的现象可能是由于以下原因之一引起的:
数据问题:该警告通常表示输入数据中存在NaN(Not a Number)值或无穷大值。在目标检测中,输入数据通常是图像或特征向量。请确保你的输入数据没有任何异常值。
模型问题:训练过程中可能出现了一些问题,导致模型权重存在错误。这可能会导致在测试时产生不可预测的结果。你可以尝试使用其他已经验证过有效性的权重文件进行测试,以确定是否是权重文件本身的问题。
代码问题:test.py中的代码可能存在错误或缺失部分关键代码,导致无法正确计算P(精确率)、R(召回率)和MAP(平均准确度)。请仔细检查代码逻辑,确保正确加载模型权重、执行推理过程和计算评估指标。
对于这种情况,建议你按照以下步骤进行进一步排查:
检查输入数据:确保输入数据没有NaN值或无穷大值,并且格式正确。
验证模型权重:尝试使用其他已经验证过有效性的权重文件进行测试,看看是否能够得到正确的结果。
检查测试代码:仔细检查test.py中的代码,确保加载模型权重的方式正确,推理过程正确执行,以及评估指标的计算方法正确。
查看训练日志:回顾之前训练时的日志,检查是否有错误或异常情况出现。这可能提供一些线索来解决问题。