目录
yolov8导航
如果大家想要了解关于yolov8的其他任务和相关内容可以点击这个链接,我这边整理了许多其他任务的说明博文,后续也会持续更新,包括yolov8模型优化、sam等等的相关内容。
YOLOv8(附带各种任务详细说明链接)
引言
以下是YOLOv8训练模式的一些显著特点:
- 自动数据集下载: 标准数据集如COCO、VOC和ImageNet将在首次使用时自动下载。
- 多GPU支持: 无缝地跨多个GPU扩展您的训练工作,以加快过程。
- 超参数配置: 通过YAML配置文件或CLI参数修改超参数的选项。
- 可视化和监控: 实时跟踪训练指标并可视化学习过程,以获得更好的洞察力。
这篇博客实际上基本都是摘自于官方的文档,我这边重新转载一遍也是为了个人可能更深刻的了解 ultralytics 的一些细节。如果大家想在这篇学到其他官网以外知识可能会让大家失望了。
使用示例
在COCO128数据集上训练YOLOv8n模型100个时期,图像大小为640。可以使用device参数指定训练设备。如果没有传递参数,并且有可用的GPU,则将使用GPU device=0,否则将使用device=cpu。有关完整列表的训练参数,请参见下面的参数部分。
使用python代码进行执行训练:
from ultralytics import YOLO
# 加载一个模型
model = YOLO('yolov8n.yaml').load('yolov8n.pt') # 从YAML建立并转移权重
# 训练模型
results = model.train(data='coco128.yaml', epochs=100, imgsz=640)
使用命令行执行训练:
# 从YAML构建新模型,从头开始训练
yolo detect train data=coco128.yaml model=yolov8n.yaml epochs=100 imgsz=640
# 从预训练*.pt模型开始训练
yolo detect train data=coco128.yaml model=yolov8n.pt epochs=100 imgsz=640
# 从YAML构建一个新模型,转移预训练权重,然后开始训练
yolo detect train data=coco128.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640
这三行代码都是可以执行训练的,就是参数不同,具体区别注释有写,小伙伴们如果不明白的可以告诉我,我这边在写的更详细一些。
多GPU训练
多GPU训练通过在多个GPU上分布训练负载,实现对可用硬件资源的更有效利用。无论是通过Python API还是命令行界面,都可以使用此功能。 若要启用多GPU训练,请指定您希望使用的GPU设备ID。代码中的device=[xxx, xxx]则是指定激活训练的GPT编号ID。
from ultralytics import YOLO
# 加载模型
model = YOLO('yolov8n.pt') # 加载预训练模型(推荐用于训练)
# 使用2个GPU训练模型
results = model.train(data='coco128.yaml', epochs=100, imgsz=640, device=[0, 1])

本文介绍了YOLOv8模型的训练特性,包括自动数据集下载、多GPU扩展、超参数配置、可视化监控以及在AppleM1/M2芯片上的MPS训练。还涵盖了恢复中断训练和使用Comet、ClearML、TensorBoard记录训练性能的方法。

9937

被折叠的 条评论
为什么被折叠?



