You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

YOLOv5训练生成权重文件但无预测结果、统计文件为空问题求助

YOLOv5训练后无有效预测输出问题排查方案

核心问题原因

  • 参数解析异常

训练命令中显式传入了--image-weights ''空值参数,该参数默认值为False无需额外配置,不同环境下argparse对空字符串的解析逻辑存在差异,本地环境可能识别为异常值,导致训练阶段的样本加权逻辑出错,损失计算返回nan值,模型无法学习有效特征。

  • 数据集路径配置错误

本地../datasets/coco128/coco128.yaml文件中的train、val路径配置可能存在错误:YOLOv5读取数据集路径时以yaml文件所在目录为基准,而非执行train.py的工作目录,若路径配置错误会导致训练时无法读取标签文件,模型仅学习背景特征,自然无有效预测输出。

  • 本地依赖版本不兼容

相同代码在Colab可正常运行,优先排查本地pytorch、torchvision、numpy版本与Colab环境的差异,版本不兼容尤其是numpy版本过高、pytorch与CUDA版本不匹配时,会导致训练过程中损失计算溢出为nan,无有效训练结果。

  • 混合精度训练适配问题

若本地显卡驱动、CUDA版本较旧,YOLOv5默认开启的自动混合精度(AMP)训练可能出现精度溢出,全程返回nan损失,最终训练得到的权重无预测能力。

修复步骤

  1. 修正训练命令,移除无效的--image-weights ''参数,修正后命令如下:
    python train.py --img 640 --batch 8 --epochs 3 --data ../datasets/coco128/coco128.yaml --workers 0 --name test
  2. 打开coco128.yaml文件,校验train、val字段指向的图片、标签文件夹路径是否真实存在,标签与图片命名是否一一对应
  3. 执行以下命令查看本地依赖版本,与Colab环境的版本对齐,优先使用YOLOv5官方requirements.txt指定的版本:
    pip list | grep -E "torch|numpy"
  4. 若仍存在问题,训练时添加--amp 0参数关闭自动混合精度再尝试训练

内容的提问来源于stack exchange,提问作者Wtow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 21:57:04