1 环境准备
2 数据集
2.1 配置数据集
打开YOLOv10项目,
找到 yolov10\ultralytics\cfg\datasets\coco128.yaml:
数据集配置文件 数据集可自动下载也可先下载好放到指定目录然后配置好下面的路径
2.1.1 路径配置
相对路径/或绝对路径 建议相对路径
如果自定义数据集需要修改此文件或者copy一份改写
2.1.2 分类配置
80分类
2.2 数据结构解剖
-
图像分布:128张图片平均包含7.26个标注实例
-
类别统计:实际出现32个类别(占80类的40%),前5大类别为:
-
person (17.8%)
-
car (9.2%)
-
chair (7.1%)
-
bottle (5.3%)
-
dining table (4.9%)
-
2.3 标注格式
原始COCO JSON转YOLO TXT格式示例:如需要
# 转换前(COCO JSON)
{"bbox": [183,24,94,120], "category_id": 18}
# 转换后(YOLO TXT)
18 0.35 0.42 0.12 0.15 # 类别ID 中心x 中心y 宽度 高度
2. 训练
2.1 训练参数
根据硬件调整 epochs/batch/device参数
train
yolo detect train data=coco128.yaml model=yolov10n.yaml epochs=100 batch=32 imgsz=640 device=0(GPU设备修改)
或
from ultralytics import YOLO
# Load YOLOv10n model from scratch
model = YOLO("yolov10n.yaml")
# Train the model
model.train(data="coco8.yaml", epochs=100, batch=32,imgsz=640)
2.2 超参数优化方案
# hyp.scratch.yaml 关键参数调整
lr0: 0.01 → 0.005 # 降低初始学习率
warmup_epochs: 3 → 5 # 延长热身期
mixup: 0.0 → 0.1 # 启用混合增强
2.3 数据增强策略
# dataset.yaml 增强配置
augmentations:
- hsv_h: 0.015 # 色相增强
- hsv_s: 0.7 # 饱和度增强
- flipud: 0.5 # 垂直翻转概率
- mosaic: 1.0 # 马赛克增强
3. 训练过程
epochs= 100 通常是个经验值
epochs
参数指模型遍历整个训练数据集的轮次数,其范围需根据任务复杂度、数据集规模及资源条件动态调整。
实验场景:简单任务或小数据集可能只需50-150
轮;复杂任务(如高精度检测)可能需要500-1000+
轮.
YOLOv5默认训练轮数为300
;YOLOv8/v9/v10参考值通常为100-500
。
3.1 epochs 调整依据
因素 | 建议调整方向 | 依据说明 |
---|---|---|
数据集规模 | 数据量少 → 降低轮数(如100-200) | 避免过拟合 |
任务复杂度 | 小目标检测/密集场景 → 增加轮数 | 需更充分学习特征 |
资源限制 | 显存不足 → 减小批次并增加轮数 | 平衡训练稳定性与收敛性 |
早停机制 | 验证集性能饱和时提前终止 | 防止无效训练 |
3.2 过程日志
yolov10) PS F:\ai\yolov\v10\yolov10> & C:/Users/qiu-t/anaconda3/envs/yolov10/python.exe f:/ai/yolov/v10/yolov10/coco_128.py
New https://pypi.org/project/ultralytics/8.3.158 available 😃 Update with 'pip install -U ultralytics'
Ultralytics YOLOv8.1.34 🚀 Python-3.12.11 torch-2.7.1+cu128 CUDA:0 (NVIDIA GeForce RTX 5060 Laptop GPU, 8151MiB)
engine\trainer: task=detect, mode=train, model=yolov10n.yaml, data=coco128.yaml, epochs=100, time=None, patience=100, batch=32, imgsz=640, save=True, save_period=-1, val_period=1, cache=False, device=None, workers=8, project=None, name=train6, exist_ok=False, pretrained=True, optimizer=auto, verbose=True, seed=0, deterministic=True, single_cls=False, rect=False, cos_lr=False, close_mosaic=10, resume=False, amp=True, fraction=1.0, profile=False, freeze=None, multi_scale=False, overlap_mask=True, mask_ratio=4, dropout=0.0, val=True, split=val, save_json=False, save_hybrid=False, conf=None, iou=0.7, max_det=300, half=False, dnn=False, plots=True, source=None, vid_stride=1, stream_buffer=False, visualize=False, augment=False, agnostic_nms=False, classes=None, retina_masks=False, embed=None, show=False, save_frames=False, save_txt=False, save_conf=False, save_crop=False, show_labels=True, show_conf=True, show_boxes=True, line_width=None, format=torchscript, keras=False, optimize=False, int8=False, dynamic=False, simplify=False, opset=None, workspace=4, nms=False, lr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=7.5, cls=0.5, dfl=1.5, pose=12.0, kobj=1.0, label_smoothing=0.0, nbs=64, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, bgr=0.0, mosaic=1.0, mixup=0.0, copy_paste=0.0, auto_augment=randaugment, erasing=0.4, crop_fraction=1.0, cfg=None, tracker=botsort.yaml, save_dir=f:\ai\yolov\v10\yolov10\runs\detect\train6
from n params module arguments
0 -1 1 464 ultralytics.nn.modules.conv.Conv [3, 16, 3, 2]
1 -1 1 4672 ultralytics.nn.modules.conv.Conv [16, 32, 3, 2]
2 -1 1 7360 ultralytics.nn.modules.block.C2f [32, 32, 1, True]
3 -1 1 18560 ultralytics.nn.modules.conv.Conv [32, 64, 3, 2]
4 -1 2 49664 ultralytics.nn.modules.block.C2f [64, 64, 2, True]
5 -1 1 9856 ultralytics.nn.modules.block.SCDown [64, 128, 3, 2]
6 -1 2 197632 ultralytics.nn.modules.block.C2f [128, 128, 2, True]
7 -1 1 36096 ultralytics.nn.modules.block.SCDown [128, 256, 3, 2]
8 -1 1 460288 ultralytics.nn.modules.block.C2f [256, 256, 1, True]
9 -1 1 164608 ultralytics.nn.modules.block.SPPF [256, 256, 5]
10 -1 1 249728 ultralytics.nn.modules.block.PSA [256, 256]
11 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']
12 [-1, 6] 1 0 ultralytics.nn.modules.conv.Concat [1]
13 -1 1 148224 ultralytics.nn.modules.block.C2f [384, 128, 1]
14 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']
15 [-1, 4] 1 0 ultralytics.nn.modules.conv.Concat [1]
16 -1 1 37248 ultralytics.nn.modules.block.C2f [192, 64, 1]
17 -1 1 36992 ultralytics.nn.modules.conv.Conv [64, 64, 3, 2]
18 [-1, 13] 1 0 ultralytics.nn.modules.conv.Concat [1]
19 -1 1 123648 ultralytics.nn.modules.block.C2f [192, 128, 1]
20 -1 1 18048 ultralytics.nn.modules.block.SCDown [128, 128, 3, 2]
21 [-1, 10] 1 0 ultralytics.nn.modules.conv.Concat [1]
22 -1 1 282624 ultralytics.nn.modules.block.C2fCIB [384, 256, 1, True, True]
23 [16, 19, 22] 1 929808 ultralytics.nn.modules.head.v10Detect [80, [64, 128, 256]]
YOLOv10n summary: 385 layers, 2775520 parameters, 2775504 gradients, 8.7 GFLOPs
Freezing layer 'model.23.dfl.conv.weight'
AMP: running Automatic Mixed Precision (AMP) checks with YOLOv8n...
f:\ai\yolov\v10\yolov10\ultralytics\utils\checks.py:641: FutureWarning: `torch.cuda.amp.autocast(args...)` is deprecated. Please use `torch.amp.autocast('cuda', args...)` instead.
with torch.cuda.amp.autocast(True):
AMP: checks passed ✅
f:\ai\yolov\v10\yolov10\ultralytics\engine\trainer.py:276: FutureWarning: `torch.cuda.amp.GradScaler(args...)` is deprecated. Please use `torch.amp.GradScaler('cuda', args...)` instead.
self.scaler = torch.cuda.amp.GradScaler(enabled=self.amp)
train: Scanning F:\ai\yolov\v10\datasets\coco128\labels\train2017.cache... 126 images, 2 backgrounds, 0 corrupt
val: Scanning F:\ai\yolov\v10\datasets\coco128\labels\train2017.cache... 126 images, 2 backgrounds, 0 corrupt:
Plotting labels to f:\ai\yolov\v10\yolov10\runs\detect\train6\labels.jpg...
optimizer: 'optimizer=auto' found, ignoring 'lr0=0.01' and 'momentum=0.937' and determining best 'optimizer', 'lr0' and 'momentum' automatically...
optimizer: AdamW(lr=0.000119, momentum=0.9) with parameter groups 95 weight(decay=0.0), 108 weight(decay=0.0005), 107 bias(decay=0.0)
Image sizes 640 train, 640 val
Using 8 dataloader workers
Logging results to f:\ai\yolov\v10\yolov10\runs\detect\train6
Starting training for 100 epochs...
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
1/100 6.73G 3.5 5.731 4.271 3.308 7.837 4.339 536 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.78e-07 0.000805 7.04e-07 2.76e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
2/100 6.65G 3.605 5.761 4.263 3.433 8.211 4.346 364 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.6e-07 0.000805 1.24e-06 3.95e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
3/100 7.08G 3.537 5.722 4.25 3.357 7.648 4.332 427 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.59e-07 0.000805 9.74e-07 3.26e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
4/100 6.73G 3.572 5.705 4.269 3.393 7.635 4.367 435 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.4e-07 0.000805 9.34e-07 3.5e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
5/100 6.98G 3.558 5.717 4.249 3.356 7.72 4.327 499 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.4e-07 0.000805 1.08e-06 3.56e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
6/100 6.83G 3.654 5.714 4.261 3.457 7.791 4.325 416 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.4e-07 0.000805 1.02e-06 3.75e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
7/100 6.73G 3.604 5.726 4.237 3.39 7.656 4.307 561 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.4e-07 0.000805 9.16e-07 3.45e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
8/100 7.08G 3.567 5.734 4.231 3.418 7.774 4.283 535 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.59e-07 0.000805 1.31e-06 4.26e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
9/100 6.73G 3.594 5.73 4.228 3.452 7.902 4.284 353 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.76e-07 0.000805 1.34e-06 4.3e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
10/100 6.81G 3.561 5.684 4.227 3.406 7.755 4.288 356 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.78e-07 0.000805 1.79e-06 5.24e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
11/100 7.23G 3.564 5.75 4.226 3.357 7.657 4.299 427 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.78e-07 0.000805 1.36e-06 4.32e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
12/100 6.8G 3.58 5.642 4.203 3.415 7.363 4.269 537 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.78e-07 0.000805 1.12e-06 3.94e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
13/100 6.73G 3.608 5.732 4.213 3.435 7.699 4.289 401 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.78e-07 0.000805 1.58e-06 5.11e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
14/100 6.69G 3.496 5.684 4.212 3.279 7.562 4.32 371 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.78e-07 0.000805 1.63e-06 5.26e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
15/100 6.81G 3.609 5.686 4.205 3.434 7.635 4.279 420 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 7.79e-07 0.000805 1.5e-06 4.97e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
16/100 6.79G 3.546 5.685 4.195 3.378 7.587 4.261 348 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 8.03e-07 0.000805 1.15e-06 4.32e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
17/100 6.85G 3.577 5.711 4.195 3.394 7.589 4.248 392 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 8.05e-07 0.000805 1.48e-06 5e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
18/100 6.86G 3.54 5.68 4.199 3.36 7.548 4.289 371 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 8.05e-07 0.000805 1.43e-06 4.95e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
19/100 6.88G 3.596 5.722 4.183 3.402 7.765 4.227 441 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 8.09e-07 0.000805 2.37e-06 7.07e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
20/100 6.81G 3.534 5.649 4.175 3.38 7.514 4.214 373 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 8.47e-07 0.000805 3.61e-06 1.04e-06
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
21/100 6.79G 3.569 5.658 4.174 3.4 7.324 4.223 433 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 9.17e-07 0.000805 3.19e-06 9.21e-07
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
22/100 6.88G 3.545 5.639 4.176 3.372 7.539 4.233 420 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.4e-07 0.00235 2.58e-07 2.58e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
23/100 7.04G 3.652 5.653 4.165 3.499 7.491 4.224 420 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.14e-07 0.00235 2.49e-07 2.49e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
24/100 6.8G 3.613 5.676 4.154 3.452 7.501 4.194 453 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.03e-07 0.00235 2.46e-07 7.18e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
25/100 6.9G 3.538 5.656 4.155 3.328 7.449 4.202 425 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.01e-07 0.00235 2.45e-07 7.16e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
26/100 6.68G 3.439 5.647 4.149 3.233 7.364 4.194 354 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 3.93e-07 0.00235 2.42e-07 7.1e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
27/100 6.83G 3.544 5.673 4.134 3.378 7.484 4.152 359 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 3.91e-07 0.00235 2.41e-07 7.07e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
28/100 6.87G 3.563 5.638 4.135 3.351 7.438 4.177 443 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 3.9e-07 0.00235 2.41e-07 7.07e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
29/100 7.14G 3.691 5.668 4.135 3.492 7.556 4.162 436 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 3.9e-07 0.00235 2.41e-07 7.07e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
30/100 6.81G 3.569 5.605 4.124 3.394 7.225 4.152 410 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 3.93e-07 0.00235 2.42e-07 7.11e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
31/100 6.78G 3.511 5.626 4.123 3.33 7.245 4.159 389 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 3.99e-07 0.00235 2.44e-07 7.18e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
32/100 6.72G 3.493 5.619 4.113 3.291 7.375 4.128 405 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.01e-07 0.00235 2.44e-07 7.19e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
33/100 7.15G 3.531 5.589 4.106 3.388 7.178 4.151 384 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.03e-07 0.00235 2.45e-07 7.22e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
34/100 7.06G 3.523 5.635 4.102 3.373 7.437 4.132 415 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.07e-07 0.00235 2.47e-07 7.28e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
35/100 6.79G 3.563 5.642 4.098 3.394 7.289 4.112 402 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.13e-07 0.00235 2.51e-07 7.4e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
36/100 7.05G 3.472 5.609 4.08 3.364 7.332 4.089 415 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.15e-07 0.00235 2.54e-07 7.52e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
37/100 6.81G 3.554 5.622 4.083 3.368 7.369 4.097 459 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.17e-07 0.00235 2.61e-07 7.73e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
38/100 6.74G 3.571 5.601 4.068 3.35 7.309 4.095 442 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.19e-07 0.00235 2.72e-07 8.08e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
39/100 7.03G 3.507 5.603 4.059 3.351 7.221 4.076 419 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 4.25e-07 0.00235 2.99e-07 8.98e-08
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
40/100 6.86G 3.471 5.567 4.067 3.315 7.092 4.092 526 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.0145 0.00291 0.00748 0.00221
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
41/100 6.77G 3.576 5.579 4.053 3.435 7.151 4.069 397 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.012 0.00458 0.0068 0.00164
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
42/100 6.72G 3.53 5.523 4.06 3.326 7.006 4.095 364 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00223 0.00829 0.00128 0.000379
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
43/100 6.78G 3.501 5.572 4.041 3.298 7.078 4.048 442 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00438 0.0151 0.00518 0.0012
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
44/100 6.79G 3.534 5.549 4.023 3.305 7.243 4.048 423 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000583 0.0134 0.00039 0.000182
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
45/100 6.9G 3.433 5.558 4.035 3.258 7.161 4.072 410 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00115 0.0214 0.00116 0.00037
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
46/100 6.74G 3.488 5.538 4.019 3.291 7.071 4.028 442 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00131 0.0259 0.00168 0.000662
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
47/100 6.74G 3.462 5.574 4.018 3.288 7.047 4.025 395 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00155 0.038 0.00361 0.00193
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
48/100 7.13G 3.479 5.546 4.006 3.317 6.894 4.011 535 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00129 0.0494 0.0014 0.000476
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
49/100 6.77G 3.439 5.495 3.998 3.298 6.922 4.009 507 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00171 0.055 0.00182 0.000418
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
50/100 7.12G 3.497 5.563 3.974 3.287 6.967 3.987 410 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00123 0.0537 0.00123 0.000304
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
51/100 6.85G 3.446 5.55 4.001 3.31 6.901 4.006 499 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00177 0.065 0.00285 0.000711
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
52/100 7G 3.521 5.542 3.995 3.335 7.015 4.011 315 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00128 0.0558 0.00226 0.000516
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
53/100 6.79G 3.413 5.541 3.977 3.256 6.922 3.987 502 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00136 0.0526 0.00278 0.000752
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
54/100 6.77G 3.549 5.521 3.984 3.366 6.939 3.985 590 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000988 0.0452 0.00202 0.000492
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
55/100 6.72G 3.533 5.494 3.966 3.389 6.996 3.974 408 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000942 0.0462 0.00274 0.000778
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
56/100 6.84G 3.461 5.493 3.964 3.273 6.968 3.962 450 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00117 0.0461 0.0037 0.000842
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
57/100 6.72G 3.469 5.505 3.955 3.29 6.976 3.958 471 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00112 0.0451 0.00144 0.000358
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
58/100 7.11G 3.462 5.492 3.956 3.27 6.917 3.965 379 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00136 0.0506 0.00353 0.000621
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
59/100 7.35G 3.456 5.511 3.971 3.245 6.966 3.967 314 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00103 0.049 0.00143 0.000354
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
60/100 6.82G 3.459 5.476 3.94 3.236 6.99 3.931 452 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.001 0.0512 0.00302 0.000506
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
61/100 7.09G 3.475 5.472 3.934 3.33 6.887 3.945 456 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000939 0.0478 0.00281 0.000706
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
62/100 6.73G 3.401 5.502 3.943 3.214 6.994 3.961 463 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000741 0.0399 0.000867 0.000197
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
63/100 6.84G 3.55 5.556 3.937 3.354 7.066 3.926 350 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000979 0.0474 0.00138 0.000339
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
64/100 6.84G 3.417 5.468 3.911 3.254 6.765 3.918 375 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000995 0.0503 0.00172 0.000291
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
65/100 6.81G 3.455 5.532 3.92 3.288 6.82 3.898 436 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00107 0.0525 0.00132 0.000262
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
66/100 7.08G 3.474 5.501 3.916 3.303 6.998 3.936 359 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000932 0.0522 0.00106 0.000278
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
67/100 6.77G 3.402 5.521 3.921 3.249 6.95 3.91 305 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000644 0.0414 0.00127 0.000469
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
68/100 6.79G 3.429 5.516 3.909 3.257 6.783 3.909 438 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000899 0.0504 0.00194 0.000488
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
69/100 6.76G 3.45 5.5 3.918 3.289 7.115 3.925 356 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000908 0.0534 0.00162 0.000366
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
70/100 6.8G 3.441 5.478 3.916 3.266 6.902 3.896 399 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00111 0.0568 0.00377 0.000845
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
71/100 6.7G 3.357 5.492 3.918 3.203 6.878 3.923 402 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00107 0.0564 0.00149 0.000362
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
72/100 6.8G 3.437 5.482 3.902 3.24 6.964 3.923 424 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000916 0.0464 0.00111 0.000269
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
73/100 6.73G 3.428 5.463 3.901 3.231 6.743 3.881 394 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000871 0.047 0.00106 0.000301
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
74/100 6.76G 3.476 5.498 3.876 3.317 6.868 3.867 377 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000762 0.0434 0.00108 0.000299
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
75/100 6.87G 3.481 5.46 3.881 3.33 6.894 3.851 325 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00137 0.0591 0.00188 0.000522
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
76/100 7.06G 3.428 5.514 3.879 3.239 6.841 3.864 503 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000852 0.0534 0.00107 0.000236
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
77/100 7.06G 3.465 5.449 3.885 3.305 6.647 3.872 450 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000562 0.038 0.00072 0.000149
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
78/100 6.76G 3.368 5.442 3.873 3.199 6.753 3.87 370 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00126 0.0409 0.0014 0.000273
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
79/100 6.87G 3.439 5.464 3.854 3.23 6.773 3.849 458 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00105 0.0364 0.000811 0.00017
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
80/100 7.44G 3.444 5.454 3.852 3.267 6.712 3.836 452 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00126 0.047 0.00121 0.000234
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
81/100 6.86G 3.383 5.454 3.866 3.211 6.761 3.852 391 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00137 0.0474 0.00164 0.000546
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
82/100 7.13G 3.439 5.452 3.84 3.294 6.7 3.842 447 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00135 0.0496 0.00154 0.000401
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
83/100 6.82G 3.426 5.447 3.867 3.279 6.803 3.839 342 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00151 0.0535 0.00166 0.000344
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
84/100 6.73G 3.349 5.426 3.849 3.196 6.744 3.862 571 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00154 0.0563 0.00143 0.000256
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
85/100 6.7G 3.408 5.434 3.835 3.234 6.7 3.823 381 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.0011 0.0534 0.00131 0.000269
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
86/100 6.75G 3.4 5.402 3.842 3.217 6.762 3.83 332 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00166 0.0553 0.00149 0.000309
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
87/100 7.12G 3.343 5.436 3.851 3.141 6.618 3.839 456 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00166 0.0597 0.00158 0.000364
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
88/100 6.79G 3.42 5.454 3.858 3.213 6.772 3.833 402 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00142 0.0541 0.00133 0.000271
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
89/100 6.76G 3.365 5.442 3.842 3.269 6.807 3.822 473 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00162 0.0618 0.00193 0.000417
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
90/100 6.82G 3.417 5.49 3.864 3.249 6.94 3.845 427 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00163 0.0606 0.00158 0.00035
Closing dataloader mosaic
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
91/100 6.8G 3.278 5.547 3.765 3.099 7.739 3.749 242 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00158 0.0478 0.00147 0.000344
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
92/100 6.69G 3.345 5.545 3.821 3.123 7.812 3.786 229 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00141 0.0513 0.00182 0.000356
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
93/100 6.64G 3.341 5.578 3.8 3.154 7.85 3.787 272 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000784 0.0408 0.000702 0.000162
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
94/100 6.78G 3.267 5.554 3.81 3.111 7.803 3.803 272 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00114 0.0472 0.00127 0.000303
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
95/100 6.72G 3.295 5.549 3.818 3.098 7.855 3.815 192 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00116 0.0498 0.00106 0.000272
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
96/100 6.79G 3.294 5.557 3.79 3.036 7.702 3.781 200 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000932 0.0405 0.000788 0.000213
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
97/100 6.73G 3.3 5.572 3.777 3.09 7.727 3.762 210 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000926 0.039 0.00087 0.000326
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
98/100 6.76G 3.381 5.573 3.802 3.146 7.769 3.766 179 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000965 0.0307 0.000893 0.000306
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
99/100 6.78G 3.38 5.577 3.802 3.152 7.806 3.794 217 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.000443 0.0247 0.000425 0.000117
Epoch GPU_mem box_om cls_om dfl_om box_oo cls_oo dfl_oo Instances Size
100/100 6.66G 3.361 5.589 3.785 3.169 7.75 3.765 216 640:
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.00059 0.0296 0.000534 0.000135
100 epochs completed in 0.259 hours.
Optimizer stripped from f:\ai\yolov\v10\yolov10\runs\detect\train6\weights\last.pt, 5.9MB
Optimizer stripped from f:\ai\yolov\v10\yolov10\runs\detect\train6\weights\best.pt, 5.9MB
Validating f:\ai\yolov\v10\yolov10\runs\detect\train6\weights\best.pt...
Ultralytics YOLOv8.1.34 🚀 Python-3.12.11 torch-2.7.1+cu128 CUDA:0 (NVIDIA GeForce RTX 5060 Laptop GPU, 8151MiB)
YOLOv10n summary (fused): 285 layers, 2762608 parameters, 0 gradients, 8.6 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 2/2
all 128 929 0.0144 0.00291 0.00747 0.0023
person 128 254 0.025 0.00394 0.0128 0.00759
bicycle 128 6 0 0 0 0
car 128 46 0 0 0 0
motorcycle 128 5 0 0 0 0
airplane 128 6 0 0 0 0
bus 128 7 0 0 0 0
train 128 3 0 0 0 0
truck 128 12 0 0 0 0
boat 128 6 0 0 0 0
traffic light 128 14 0 0 0 0
stop sign 128 2 0 0 0 0
bench 128 9 0 0 0 0
bird 128 16 0 0 0 0
cat 128 4 0 0 0 0
dog 128 9 0 0 0 0
horse 128 2 0 0 0 0
elephant 128 17 0 0 0 0
bear 128 1 0 0 0 0
zebra 128 4 0 0 0 0
giraffe 128 9 0 0 0 0
backpack 128 6 0 0 0 0
umbrella 128 18 0 0 0 0
handbag 128 19 0 0 0 0
tie 128 7 0 0 0 0
suitcase 128 4 0 0 0 0
frisbee 128 5 0 0 0 0
skis 128 1 0 0 0 0
snowboard 128 7 0 0 0 0
sports ball 128 6 0 0 0 0
kite 128 10 0 0 0 0
baseball bat 128 4 0 0 0 0
baseball glove 128 7 0 0 0 0
skateboard 128 5 0 0 0 0
tennis racket 128 7 0 0 0 0
bottle 128 18 0 0 0 0
wine glass 128 16 0 0 0 0
cup 128 36 0 0 0 0
fork 128 6 3.12e-05 0.167 2.97e-05 8.66e-06
knife 128 16 0 0 0 0
spoon 128 22 0 0 0 0
bowl 128 28 1 0.0357 0.518 0.155
banana 128 1 0 0 0 0
sandwich 128 2 0 0 0 0
orange 128 4 0 0 0 0
broccoli 128 11 0 0 0 0
carrot 128 24 0 0 0 0
hot dog 128 2 0 0 0 0
pizza 128 5 0 0 0 0
donut 128 14 0 0 0 0
cake 128 4 0 0 0 0
chair 128 35 0 0 0 0
couch 128 6 0 0 0 0
potted plant 128 14 0 0 0 0
bed 128 3 0 0 0 0
dining table 128 13 0 0 0 0
toilet 128 2 0 0 0 0
tv 128 2 0 0 0 0
laptop 128 3 0 0 0 0
mouse 128 2 0 0 0 0
remote 128 8 0 0 0 0
cell phone 128 8 0 0 0 0
microwave 128 3 0 0 0 0
oven 128 5 0 0 0 0
sink 128 6 0 0 0 0
refrigerator 128 5 0 0 0 0
book 128 29 0 0 0 0
clock 128 9 0 0 0 0
vase 128 2 0 0 0 0
scissors 128 1 0 0 0 0
teddy bear 128 21 0 0 0 0
toothbrush 128 5 0 0 0 0
Speed: 0.3ms preprocess, 7.1ms inference, 0.0ms loss, 0.0ms postprocess per image
3.2.1 模型基础信息
Ultralytics YOLOv8.1.34 🚀 Python-3.12.11 torch-2.7.1+cu128 CUDA:0 (NVIDIA GeForce RTX 5060 Laptop GPU, 8151MiB)
- YOLO 版本:
YOLOv8.1.34
,表明你使用的是 YOLO 模型的 8.1.34 版本。 - Python 版本:
Python-3.12.11
,这是训练所用的 Python 环境版本。 - PyTorch 版本:
torch-2.7.1+cu128
,意味着使用的 PyTorch 版本为 2.7.1,且支持 CUDA 12.8。 - GPU 信息:
NVIDIA GeForce RTX 5060 Laptop GPU
,显存为 8151MiB,训练将在第一块 GPU 设备(CUDA:0
)上进行。为什么是YOLOv8.1.34?因为YOLO10是基于YOLOv8.1.34进行重构的、所以日志有YOLOv8.1.34
YOLOv8.1.34?因为YOLO10是基于YOLOv8.1.34进行重构的
3.2.2 训练参数配置
engine\trainer: task=detect, mode=train, model=yolov10n.yaml, data=coco128.yaml, epochs=100, time=None, patience=100, batch=32, imgsz=640, save=True, save_period=-1, val_period=1, cache=False, device=None, workers=8, project=None, name=train6, exist_ok=False, pretrained=True, optimizer=auto, verbose=True, seed=0, deterministic=True, single_cls=False, rect=False, cos_lr=False, close_mosaic=10, resume=False, amp=True, fraction=1.0, profile=False, freeze=None, multi_scale=False, overlap_mask=True, mask_ratio=4, dropout=0.0, val=True, split=val, save_json=False, save_hybrid=False, conf=None, iou=0.7, max_det=300, half=False, dnn=False, plots=True, source=None, vid_stride=1, stream_buffer=False, visualize=False, augment=False, agnostic_nms=False, classes=None, retina_masks=False, embed=None, show=False, save_frames=False, save_txt=False, save_conf=False, save_crop=False, show_labels=True, show_conf=True, show_boxes=True, line_width=None, format=torchscript, keras=False, optimize=False, int8=False, dynamic=False, simplify=False, opset=None, workspace=4, nms=False, lr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=7.5, cls=0.5, dfl=1.5, pose=12.0, kobj=1.0, label_smoothing=0.0, nbs=64, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, bgr=0.0, mosaic=1.0, mixup=0.0, copy_paste=0.0, auto_augment=randaugment, erasing=0.4, crop_fraction=1.0, cfg=None, tracker=botsort.yaml, save_dir=f:\ai\yolov\v10\yolov10\runs\detect\train6
这些参数控制着多种数据增强技术,例如色调、饱和度和明度调整(hsv_h
、hsv_s
、hsv_v
)、旋转(degrees
)、平移(translate
)以及翻转(fliplr
、flipud
)等。
save_dir=f:\ai\yolov\v10\yolov10\runs\detect\train6
这是训练结果的保存目录,训练过程产生的模型检查点、日志等文件都会存放在这里。
3.3 关键指标变化曲线
训练结束后输出结果保存到train目录下
以下是YOLO模型训练结果文件的详细说明及模型好坏判断标准表格:
文件名称 | 说明 | 如何判断模型好坏 |
---|---|---|
best.pt | 训练中验证集损失值最小(或mAP最高)的模型文件 | 损失值小/mAP高表明当前模型最佳,但需测试新数据确认泛化能力 |
last.pt | 训练结束时的最终模型文件 | 若损失稳定且评估指标(精确度、召回率)良好则模型可靠;若损失波动或指标下降可能过拟合/欠拟合 |
args.yaml | 训练配置参数(如epochs、batch size、优化器等) | 合理参数是模型优化的前提:学习率过高导致震荡,过低则收敛慢;batch size需与硬件匹配 |
confusion_matrix.png | 分类混淆矩阵:行=预测类别,列=真实类别;对角线数值=正确预测数量 | 对角线数值越大(深色)模型分类越准;非对角线数值小说明类别混淆少 |
confusion_matrix_normalized.png | 标准化混淆矩阵:显示各类别预测正确比例(消除样本不平衡影响) | 各类别比例越接近(深色)模型预测越准;少数类别比例低需检查数据平衡性2 |
F1_curve.png | F1-置信度曲线:F1(精确率与召回率的调和平均)随置信度阈值的变化 | 峰值越高(接近1)说明模型在不同阈值下均能平衡精确率与召回率;曲线平坦则鲁棒性好 |
labels.jpg | 标签分布图:柱状图=类别数量分布,散点图=边界框位置分布 | 类别分布均匀、边界框覆盖全图且无异常聚集,表明数据质量高,模型学习效果更好 |
labels_correlogram.jpg | 标签相关图:展示不同类别在图像中的位置相关性(如"人"和"背包"常同时出现) | 正确反映类别空间关联性(如"汽车"与"轮胎"强相关)说明模型理解语义;关联混乱需调整训练策略 |
P_curve.png | 精确率-置信度曲线:模型预测精确率随置信度阈值的变化 | 曲线整体高位且平缓(高阈值下精确率>0.9)说明模型可信度高;曲线骤降表明低置信度预测不可靠 |
PR_curve.png | PR曲线:精确率(Precision)随召回率(Recall)的变化曲线,曲线下面积(AP)衡量综合性能 | 曲线越靠近右上角、AP值越高(接近1)模型越好;曲线陡降说明召回率提升时精确率损失大 |
关键判断原则:
- 核心指标:优先关注
best.pt
的mAP值和PR_curve.png
的AP值,高于0.7(coco128数据集)说明基础性能达标; - 一致性验证:比较
best.pt
与last.pt
的指标差异,若last.pt
指标显著下降需检查过拟合; - 鲁棒性测试:观察
P_curve.png
和F1_curve.png
的曲线平滑度,波动越小模型适应性越强; - 数据健康度:通过
labels.jpg
和confusion_matrix_normalized.png
确认数据质量与类别平衡性。
在训练过程中,模型会在每个验证周期(val_period
参数控制)对验证集进行评估,输出如精确率、召回率、mAP 等指标,以此衡量模型的泛化能力。
4. 模型评估
4.1 模型评估概述
-
定义与目的
- 模型评估是对机器学习模型性能进行量化分析的过程,旨在衡量模型预测准确性、稳定性及泛化能力(对新数据的适应能力)。
- 核心目标包括:筛选最优模型、诊断过拟合/欠拟合、优化模型结构及参数。
-
关键挑战
- 过拟合:模型在训练集表现好,但测试集表现差(泛化能力弱)。
解法:增加训练数据、简化模型结构、正则化、早停法(Early Stopping)。 - 欠拟合:模型未充分学习数据规律,训练集和测试集表现均不佳。
解法:增强模型复杂度、优化特征工程、延长训练时间。
- 过拟合:模型在训练集表现好,但测试集表现差(泛化能力弱)。
4.2 评估方法与数据划分
-
数据划分策略
- 留出法:数据集划分为互斥的训练集和测试集,需保持分布一致性(如分层抽样)
- 交叉验证:将数据分为k个子集,轮流以k-1个子集训练、1个子集验证,减少随机性影响。
- 自助法:有放回抽样生成训练集,未被抽中的样本作为测试集。
-
评估阶段
- 训练集:模型学习数据规律。
- 验证集:调参及监控训练过程,防止过拟合。
- 测试集:最终评估模型泛化能力。
4.3 核心评估指标
分类任务
指标 | 公式/定义 | 适用场景 |
---|---|---|
准确率 | (TP+TN)/(TP+TN+FP+FN) | 数据均衡时整体性能评估 |
精确率 | TP/(TP+FP) | 关注假阳性代价高的场景(如疾病诊断) |
召回率 | TP/(TP+FN) | 关注漏检代价高的场景(如垃圾邮件过滤) |
F1-score | 2×(Precision×Recall)/(Precision+Recall) | 平衡精确率与召回率,适用于不均衡数据 |
AUC-ROC | ROC曲线下面积 | 综合评估分类器区分正负样本的能力 |
PR-AUC | 2×(Precision×Recall)/(Precision+Recall) | 与ROC-AUC类似,但关注点略有不同。PR-AUC测量的是精度-召回曲线下的面积,该曲线描绘了在不同阈值下精确性与召回率之间的关系。查准率查全率 |
回归任务
指标 | 公式 | 特点 |
---|---|---|
MAE | ∑|y_i-ŷ_i|/n | 抗异常值,直观反映平均误差 |
MSE | ∑(y_i-ŷ_i)²/n | 对大误差敏感,放大异常点影响 |
RMSE | √(∑(y_i-ŷ_i)²/n) | 量纲与原始数据一致,惩罚大误差 |
R² | 1 - ∑(y_i-ŷ_i)²/∑(y_i-ȳ)² | 解释模型对数据变异的捕获能力,[0,1]区间 |