YOLOv7 1B1H 500 Epochs Training Results
Model Description
YOLOv7-tiny model trained on COCO 320x320 dataset for 500 epochs.
Training Configuration
- Architecture: YOLOv7-tiny (1 Backbone + 1 Head)
- Dataset: COCO 2017 (320x320 resized)
- Epochs: 500
- Batch Size: 128
- Image Size: 320x320
- Loss: non-OTA (ComputeLoss)
- Optimizer: SGD
- Learning Rate: 0.01
Results
| Metric | Value |
|---|---|
| mAP@0.5 | 0.4365 |
| mAP@0.6 | 0.3804 |
| mAP@0.7 | 0.3135 |
| mAP@0.8 | 0.2257 |
| mAP@0.9 | 0.0975 |
| mAP@0.5:0.95 | 0.2672 |
| Precision | 0.6479 |
| Recall | 0.3919 |
Files
weights/best.pt: Best checkpoint (stripped optimizer)weights/last.pt: Final checkpoint (stripped optimizer)weights/epoch_XXX.pt: Checkpoints with per-class AP dataresults.txt: Training log with all metricshyp.yaml: Hyperparametersopt.yaml: Training options
Usage
import torch
from models.experimental import attempt_load
# Load model
model = attempt_load('weights/best.pt', map_location='cuda')
# Inference
img = torch.randn(1, 3, 320, 320).cuda()
pred = model(img)
Per-class AP Access
import torch
# Load checkpoint with per-class AP
ckpt = torch.load('weights/epoch_499.pt', weights_only=False)
# Access per-class AP
per_class_ap = ckpt.get('per_class_ap', {})
for class_id, ap_data in per_class_ap.items():
print(f"{ap_data['name']}: mAP@.5={ap_data['ap50']:.3f}, mAP@.7={ap_data['ap70']:.3f}")
Training Date
2025-12-22