3.2 分割和分类模型训练示例
实例分割
使用示例 🚀
Train
YOLOv5实例分割模型支持使用 --data coco128-seg.yaml
参数自动下载 COCO128-seg
测试数据集(测试数据集表示能测试项目正常运行的小数据集), 以及使用 bash data/scripts/get_coco.sh --train --val --segments
或者使用 python train.py --data coco.yaml
下载 COCO-segments
数据集
# Single-GPU
python segment/train.py --weights yolov5s-seg.of --data coco128-seg.yaml --epochs 5 --img 640
# Multi-GPU DDP
python -m oneflow.distributed.launch --nproc_per_node 4 segment/train.py --weights yolov5s-seg.of --data coco128-seg.yaml --epochs 5 --img 640 --device 0,1,2,3
注意 :
- {.of
: 代表OneFlow预训练权重 , .pt
: 代表 PyTorch 预训练权重 }
- --weights yolov5s-seg.of
表示使用OneFlow预训练权重 , 也是支持使用 PyTorch 预训练权重 如 --model yolov5s-seg.pt
- 模型权重将自动从 github 下载(建议如果没有设置代理,可以提前将模型下载到电脑本地 使用 --model 本地路径/yolov5s-seg.of
)
val
数据集上验证YOLOv5m-seg 模型的精度
bash data/scripts/get_coco.sh --val --segments # download COCO val segments split (780MB, 5000 images)
python segment/val.py --weights yolov5s-seg.of --data coco.yaml --img 640 # validate
Predict
使用预训练模型(YOLOv5m-seg) 预测
Export
将 yolov5s-seg
模型导出为 ONNX 格式 示例
分类
使用示例 🚀
Train
YOLOv5实例分类模型支持使用 --data imagenette160
参数自动下载 imagenette160
测试数据集(测试数据集表示能测试项目正常运行的小数据集), 以及使用 bash data/scripts/get_imagenet.sh
或者使用 python train.py --data imagenet
下载 imagenet
数据集
# Single-GPU
python classify/train.py --model yolov5s-cls.of --data imagenette160 --epochs 5
# Multi-GPU DDP
python -m oneflow.distributed.launch --nproc_per_node 4 classify/train.py --model yolov5s-cls.of --data imagenette160 --epochs 5 --device 0,1,2,3
注意 :
- {.of
: 代表OneFlow预训练权重 , .pt
: 代表 PyTorch 预训练权重 }
- --model yolov5s-cls.of
表示使用OneFlow预训练权重 , 也是支持使用 PyTorch 预训练权重 如 --model yolov5s-seg.pt
- 模型权重将自动从 github 下载(建议如果没有设置代理,可以提前将模型下载到电脑本地 使用 --model 本地路径/yolov5s-cls.of
)
val
在ImageNet 数据集上验证YOLOv5m-cls 模型的精度
bash data/scripts/get_imagenet.sh # Download ILSVRC2012 ImageNet dataset https://image-net.org
python classify/val.py --data ../datasets/imagenet --img 224 --weights yolov5s-cls.of
Predict
使用预训练模型(YOLOv5m-cls) 预测 bus.jpg
Export
将 yolov5s-cls
模型导出为 ONNX 格式 示例