目录
????????如果大家想要了解关于yolov8的其他任务和相关内容可以点击这个链接,我这边整理了许多其他任务的说明博文,后续也会持续更新,包括yolov8模型优化、sam等等的相关内容。
?????????在机器学习流程中,验证是一个关键步骤,让您能够评估训练模型的质量。Ultralytics YOLOv8 的 Val 模式提供了一整套强大的工具和指标,用于评估您的目标检测模型的性能。本指南作为一个完整资源,用于理解如何有效使用 Val 模式来确保您的模型既准确又可靠。
以下是使用 YOLOv8 的 Val 模式的好处:
以下是 YOLOv8 的 Val 模式提供的功能:
????????这篇博客实际上基本都是摘自于官方的文档,我这边重新转载一遍也是为了个人可能更深刻的了解 ultralytics 的一些细节。如果大家想在这篇学到其他官网以外知识可能会让大家失望了。?
from ultralytics import YOLO
# 加载模型
model = YOLO('yolov8n.pt') # 加载官方模型
model = YOLO('path/to/best.pt') # 加载自定义模型
# 验证模型
metrics = model.val() # 无需参数,数据集和设置记忆
metrics.box.map # map50-95
metrics.box.map50 # map50
metrics.box.map75 # map75
metrics.box.maps # 包含每个类别的map50-95列表
????????YOLO 模型的验证设置是指用于评估模型在验证数据集上性能的各种超参数和配置。这些设置会影响模型的性能、速度和准确性。一些常见的 YOLO 验证设置包括批处理大小、在训练期间验证频率以及用于评估模型性能的指标。其他可能影响验证过程的因素包括验证数据集的大小和组成以及模型用于特定任务的特性。仔细调整和实验这些设置很重要,以确保模型在验证数据集上表现良好并且检测和预防过拟合。
键 | 值 | 描述 |
---|---|---|
data | None | 数据文件的路径,例如 coco128.yaml |
imgsz | 640 | 输入图像的大小,以整数表示 |
batch | 16 | 每批图像的数量(AutoBatch 为 -1) |
save_json | False | 将结果保存至 JSON 文件 |
save_hybrid | False | 保存混合版本的标签(标签 + 额外预测) |
conf | 0.001 | 用于检测的对象置信度阈值 |
iou | 0.6 | NMS(非极大抑制)用的交并比(IoU)阈值 |
max_det | 300 | 每张图像的最大检测数量 |
half | True | 使用半精度(FP16) |
device | None | 运行所用的设备,例如 cuda device=0/1/2/3 或 device=cpu |
dnn | False | 使用 OpenCV DNN 进行 ONNX 推理 |
plots | False | 在训练期间显示图表 |
rect | False | 矩形验证,每批图像为了最小填充整齐排列 |
split | val | 用于验证的数据集分割,例如 'val'、'test' 或 'train' |