Images, language and games
Machine learning YOLO
YOLO is a family of fast object detectors that predict a class, a bounding box and a confidence score for each object in a single pass over the image. It is widely used for real-time detection in video, counting objects and spotting defects, and recent versions also handle segmentation and pose.
How YOLO is used in machine learning projects
Real-time object detection
YOLO predicts boxes and classes for the whole image in one network pass, which makes it fast enough for live video. It is a common choice for cameras, robots and drones.
Real exampleYou Only Look Once (original paper)The original YOLO paper framed object detection as a single regression from image pixels to bounding boxes and class probabilities.
Segmentation, pose and oriented boxes
Recent YOLO versions add heads for instance masks, body keypoints and rotated boxes, so one family covers several vision tasks. This is useful for measuring shapes and tracking body movement.
Real exampleUltralytics YOLO11Ultralytics documents YOLO11 support for object detection, instance segmentation, image classification, pose estimation and oriented object detection.
Wildlife monitoring
Conservation teams run detectors over millions of camera-trap images to find animals and filter out empty frames. This saves a large amount of manual review.
Real exampleMegaDetector (Microsoft AI for Good)MegaDetector detects animals, people and vehicles in camera-trap images, and its V6 release includes YOLOv9 and YOLOv10 variants.
Fast detection on limited hardware
Different YOLO sizes trade accuracy for speed, so the same approach runs on a server GPU or an edge device. Teams choose a variant by measuring speed and accuracy on their own hardware.
Real exampleYOLOv7The YOLOv7 paper reports a real-time detector evaluated across a range of speeds from 5 to 160 frames per second.
Can you learn YOLO object detection?
Yes. With basic Python you can run a pretrained YOLO model in minutes and train it on your own labelled images within a day. To use it well, learn image handling, detection metrics and how to build a clean labelled dataset.
- Python basicsInstall packages, run scripts and work with file paths and lists of results.Learn it in Python
- How neural networks learnUnderstand CNN backbones, loss functions and overfitting so training curves make sense.Learn it in Deep Learning
- Labelling a datasetDraw boxes in CVAT or Label Studio, write clear labelling rules, and keep a separate validation set.
- Training and evaluating YOLOFine-tune a pretrained Ultralytics model, then read precision, recall and mAP50-95 per class.
- DeploymentExport to ONNX, measure speed on the target device, and track objects across frames with Supervision.
Where to go next with YOLO
If you already work in the field
If you already have a detection problem, such as counting stock, spotting defects or monitoring animals, start by labelling a few hundred of your own images and fine-tuning a small YOLO model. Then study its errors to decide what data to label next.
If you come from data science or ML
If you know machine learning but not detection, learn anchor-free box prediction, non-maximum suppression, IoU and mAP. Then compare YOLO with another detector family on the same data.
Roles that do this workComputer vision engineerMachine learning engineer, edge AIRobotics perception engineerData annotation lead
Tools you will use
| Tool | What you use it for |
|---|---|
| Ultralytics | Train, validate and export YOLO detection, segmentation and pose models from Python or the command line. |
| CVAT | Draw and review bounding-box annotations and export them in YOLO format. |
| Label Studio | Open-source labelling tool for boxes and other annotations, with exports for detector training. |
| Supervision | Filter, track, count and visualise detections from YOLO and other models. |
| ONNX Runtime | Run exported detectors on CPUs, GPUs and edge devices to measure real deployment speed. |
Public data to practise on
- COCO: Everyday scenes with object boxes and masks, the benchmark YOLO models report their accuracy against.
- Open Images V7: Large image collection with object boxes across many classes, useful for picking a few classes to train on.
Your first project
Download COCO val2017, run a pretrained small Ultralytics YOLO model, and compare it with the nano variant using mAP50-95 and measured images per second on your hardware.
Common questions
Which YOLO version should I use?
Use a recent, actively maintained release with good documentation for your task. Compare two model sizes on your own data and hardware rather than relying on headline benchmarks.
How many images do I need to train YOLO?
Fine-tuning a pretrained model can work with a few hundred labelled images per class for simple scenes. Small, rare or varied objects need more.
Is YOLO free for commercial use?
It depends on the implementation. Ultralytics releases are under the AGPL-3.0 licence with a separate commercial licence, while some other YOLO implementations use different licences, so check before shipping a product.
Can YOLO run on a Raspberry Pi or phone?
Small YOLO variants can run on edge devices after export to formats such as ONNX, TFLite or CoreML. Measure frames per second on the actual device.
Courses for these skills
- Deep Learning with PyTorchStudy CNNs, transfer learning, object detection and segmentation in the Computer Vision syllabus.Syllabus available · lessons open as produced
- Data Tools: NumPy, pandas, Matplotlib and scikit-learnAlign frame timestamps, clip groups and annotations.23 published lessons · all planned lessons open
- Practical Machine Learning in PythonBuild the foundations for classification, anomaly detection and model evaluation.51 published lessons · more lessons in production
New to programming or maths? Start with Python, or follow the machine learning path in order. Published lessons are free to read; compare Free and Pro.