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

如何用COCO数据集单类别(行人)训练YOLOv7及TensorBoard问题解决

YOLOv7单类别(行人)训练与TensorBoard问题解决

一、基于COCO数据集仅训练行人类别

完全可以通过train.py实现,结合--single-cls参数和数据集配置调整即可,步骤如下:

  1. 预处理COCO数据集标注
    COCO中行人对应类别ID为0,你需要过滤训练/验证集的标注文件,只保留category_id: 0的目标条目。如果使用YOLO格式标注,直接将所有保留的标注类别号改为0即可。

  2. 修改数据集配置文件
    找到data/coco.yaml,修改以下参数:

    • 将nc: 80改为nc: 1
    • 将names列表改为names: ['person']
  3. 使用--single-cls参数启动训练
    在终端运行训练命令时添加该参数,示例命令:

    python train.py --weights yolov7.pt --data coco.yaml --single-cls --batch-size 16
    

    --single-cls的作用是强制模型按单类别模式训练,忽略原标注中的多类别信息,所有目标都归为你指定的唯一类别。

二、TensorBoard访问无内容的排查方案

针对日志提示但页面无内容的问题,按以下顺序排查:

  • 等待训练生成事件文件:训练刚启动时,TensorBoard的事件文件(events.out.tfevents.*)还未生成,需等待训练完成1-2个epoch后,再刷新页面查看。
  • 检查日志路径正确性:确认runs/train目录下存在上述事件文件,若训练日志中显示的路径不同,需对应修改tensorboard命令的--logdir参数。
  • 更换端口访问:若默认端口6006被占用,可指定其他端口启动:
    tensorboard --logdir runs/train --port 6007
    
  • 清理浏览器缓存:浏览器缓存可能导致页面无法加载新内容,尝试用无痕模式访问或清空缓存后刷新。
  • 验证训练状态:检查训练日志是否有报错,若训练中途终止,不会生成完整的TensorBoard数据。

内容的提问来源于stack exchange,提问作者Cansel Oğuz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 09:55:20