1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
| D:\PythonWorkspace\yolov8-tutorial\.venv\Scripts\python.exe D:\PythonWorkspace\yolov8-tutorial\train.py Ultralytics 8.4.37 Python-3.10.11 torch-2.11.0+cu130 CUDA:0 (NVIDIA GeForce RTX 2060 SUPER, 8192MiB) engine\trainer: agnostic_nms=False, amp=True, angle=1.0, augment=False, auto_augment=randaugment, batch=16, bgr=0.0, box=7.5, cache=False, cfg=None, classes=None, close_mosaic=10, cls=0.5, cls_pw=0.0, compile=False, conf=None, copy_paste=0.0, copy_paste_mode=flip, cos_lr=False, cutmix=0.0, data=data.yaml, degrees=0.0, deterministic=True, device=0, dfl=1.5, dnn=False, dropout=0.0, dynamic=False, embed=None, end2end=None, epochs=100, erasing=0.4, exist_ok=False, fliplr=0.5, flipud=0.0, format=torchscript, fraction=1.0, freeze=None, half=False, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, imgsz=640, int8=False, iou=0.7, keras=False, kobj=1.0, line_width=None, lr0=0.01, lrf=0.01, mask_ratio=4, max_det=300, mixup=0.0, mode=train, model=yolov8n.pt, momentum=0.937, mosaic=1.0, multi_scale=0.0, name=my_model, nbs=64, nms=False, opset=None, optimize=False, optimizer=auto, overlap_mask=True, patience=100, perspective=0.0, plots=True, pose=12.0, pretrained=True, profile=False, project=None, rect=False, resume=False, retina_masks=False, rle=1.0, save=True, save_conf=False, save_crop=False, save_dir=D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model, save_frames=False, save_json=False, save_period=10, save_txt=False, scale=0.5, seed=0, shear=0.0, show=False, show_boxes=True, show_conf=True, show_labels=True, simplify=True, single_cls=False, source=None, split=val, stream_buffer=False, task=detect, time=None, tracker=botsort.yaml, translate=0.1, val=True, verbose=True, vid_stride=1, visualize=False, warmup_bias_lr=0.1, warmup_epochs=3.0, warmup_momentum=0.8, weight_decay=0.0005, workers=0, workspace=None Overriding model.yaml nc=80 with nc=2
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 73984 ultralytics.nn.modules.conv.Conv [64, 128, 3, 2] 6 -1 2 197632 ultralytics.nn.modules.block.C2f [128, 128, 2, True] 7 -1 1 295424 ultralytics.nn.modules.conv.Conv [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 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest'] 11 [-1, 6] 1 0 ultralytics.nn.modules.conv.Concat [1] 12 -1 1 148224 ultralytics.nn.modules.block.C2f [384, 128, 1] 13 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest'] 14 [-1, 4] 1 0 ultralytics.nn.modules.conv.Concat [1] 15 -1 1 37248 ultralytics.nn.modules.block.C2f [192, 64, 1] 16 -1 1 36992 ultralytics.nn.modules.conv.Conv [64, 64, 3, 2] 17 [-1, 12] 1 0 ultralytics.nn.modules.conv.Concat [1] 18 -1 1 123648 ultralytics.nn.modules.block.C2f [192, 128, 1] 19 -1 1 147712 ultralytics.nn.modules.conv.Conv [128, 128, 3, 2] 20 [-1, 9] 1 0 ultralytics.nn.modules.conv.Concat [1] 21 -1 1 493056 ultralytics.nn.modules.block.C2f [384, 256, 1] 22 [15, 18, 21] 1 751702 ultralytics.nn.modules.head.Detect [2, 16, None, [64, 128, 256]] Model summary: 130 layers, 3,011,238 parameters, 3,011,222 gradients, 8.2 GFLOPs
Transferred 319/355 items from pretrained weights Freezing layer 'model.22.dfl.conv.weight' AMP: running Automatic Mixed Precision (AMP) checks... AMP: checks passed train: Fast image access (ping: 0.00.0 ms, read: 1838.31089.4 MB/s, size: 174.8 KB) train: Scanning D:\PythonWorkspace\yolov8-tutorial\dataset\labels\train.cache... 98 images, 15 backgrounds, 0 corrupt: 100% ━━━━━━━━━━━━ 98/98 0.0s val: Fast image access (ping: 0.00.0 ms, read: 2107.01291.3 MB/s, size: 131.0 KB) val: Scanning D:\PythonWorkspace\yolov8-tutorial\dataset\labels\val.cache... 24 images, 1 backgrounds, 0 corrupt: 100% ━━━━━━━━━━━━ 24/24 0.0s optimizer: 'optimizer=auto' found, ignoring 'lr0=0.01' and 'momentum=0.937' and determining best 'optimizer', 'lr0' and 'momentum' automatically... optimizer: AdamW(lr=0.001667, momentum=0.9) with parameter groups 57 weight(decay=0.0), 64 weight(decay=0.0005), 63 bias(decay=0.0) Plotting labels to D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model\labels.jpg... Image sizes 640 train, 640 val Using 0 dataloader workers Logging results to D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model Starting training for 100 epochs...
Epoch GPU_mem box_loss cls_loss dfl_loss Instances Size 1/100 2.02G 0.6719 2.927 1.129 5 640: 100% ━━━━━━━━━━━━ 7/7 2.2it/s 3.3s Class Images Instances Box(P R mAP50 mAP50-95): 100% ━━━━━━━━━━━━ 1/1 2.2it/s 0.4s all 24 30 0.0041 1 0.557 0.489
... 中間省略 ...
Epoch GPU_mem box_loss cls_loss dfl_loss Instances Size 90/100 2.18G 0.448 0.5201 0.9692 8 640: 100% ━━━━━━━━━━━━ 7/7 4.3it/s 1.6s Class Images Instances Box(P R mAP50 mAP50-95): 100% ━━━━━━━━━━━━ 1/1 3.1it/s 0.3s all 24 30 0.936 0.938 0.979 0.758 Closing dataloader mosaic
... 中間省略 ... Epoch GPU_mem box_loss cls_loss dfl_loss Instances Size 100/100 2.18G 0.3441 0.5115 0.8918 3 640: 100% ━━━━━━━━━━━━ 7/7 4.5it/s 1.6s Class Images Instances Box(P R mAP50 mAP50-95): 100% ━━━━━━━━━━━━ 1/1 3.1it/s 0.3s all 24 30 0.851 0.9 0.941 0.69
100 epochs completed in 0.065 hours. Optimizer stripped from D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model\weights\last.pt, 6.3MB Optimizer stripped from D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model\weights\best.pt, 6.3MB
Validating D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model\weights\best.pt... Ultralytics 8.4.37 Python-3.10.11 torch-2.11.0+cu130 CUDA:0 (NVIDIA GeForce RTX 2060 SUPER, 8192MiB) Model summary (fused): 73 layers, 3,006,038 parameters, 0 gradients, 8.1 GFLOPs Class Images Instances Box(P R mAP50 mAP50-95): 100% ━━━━━━━━━━━━ 1/1 2.9it/s 0.3s all 24 30 0.95 0.933 0.979 0.76 cat 18 25 0.899 0.92 0.964 0.57 dog 5 5 1 0.945 0.995 0.95 Speed: 0.2ms preprocess, 1.6ms inference, 0.0ms loss, 1.0ms postprocess per image Results saved to D:\PythonWorkspace\yolov8-tutorial\runs\detect\my_model 訓練完成,總耗時:0 時 4 分 1 秒
Process finished with exit code 0
|