🌟 Summary
Version v8.4.130 makes dataset subset selection far more flexible and efficient, while improving tuning, tracking guidance, and dataset metadata. 🚀
📊 Key Changes
-
Count-based dataset limits 🎯
fractionnow accepts a positive image count, such asfraction=1000, to train on exactly 1,000 images.- Use
fraction=[1000, 100]to limit the training and validation splits independently. - Existing decimal ratio behavior remains unchanged, so
fraction=0.1still uses 10% of the dataset. - Integer
1means one image, while float1.0means the complete split. - Supports YOLO, RTDETR, classification, validation, and INT8 calibration workflows.
-
More efficient NDJSON and Platform dataset downloads ⚡
- Count-based subsets are selected before images are downloaded.
- NDJSON records are selected deterministically, helping repeated runs use the same images.
- This avoids downloading an entire dataset when only a fixed-size subset is needed.
-
Improved hyperparameter tuning 🧠
Model.tune()now defaults to AdamW unless another optimizer is explicitly selected.- This ensures tuning parameters such as learning rate and momentum actually affect training instead of being ignored by automatic optimizer selection.
- MongoDB-based tuning now uses safer atomic coordination, preventing multiple workers from incorrectly claiming the default configuration.
-
Clearer tuning fitness plots 📈
tune_fitness.pngnow shows overall fitness progression, the best result achieved so far, and initial-versus-best fitness for each dataset.- The new layout is easier to interpret, especially for multi-dataset tuning runs.
-
Expanded and clarified tracking documentation 🎥
- Documentation now lists six built-in trackers: TrackTrack, BoT-SORT, ByteTrack, OC-SORT, Deep OC-SORT, and FastTracker.
- TrackTrack is documented as the default tracker, with optional ReID and camera-motion compensation.
- Tracking guidance now more clearly explains confidence thresholds, low-confidence recovery, custom ReID models, and task-specific behavior for segmentation, pose, and OBB models.
- Tracker-specific training is clarified: users train a detection, segmentation, pose, or OBB model, then apply tracking during inference.
-
More complete dataset license metadata 📚
- Added or corrected license information for MNIST, Global Wheat2020, PASCAL VOC, KITTI, and official depth datasets.
- Depth8 and SUN RGB-D are now explicitly marked as having no specified source license where applicable.
- Export documentation across ONNX, TensorRT, OpenVINO, LiteRT, Hailo, QNN, Rockchip, and other formats now reflects the expanded
fractionbehavior.
🎯 Purpose & Impact
- Faster experimentation: Quickly train or calibrate on a known number of images without creating duplicate dataset copies.
- Lower storage and bandwidth usage: Platform NDJSON datasets no longer need to download every image before applying a count-based limit.
- More reliable tuning: AdamW makes the default tuning search spaces effective, while MongoDB coordination avoids duplicate baseline trials in concurrent runs.
- Better reproducibility: Deterministic NDJSON subset selection makes repeated experiments more consistent.
- Improved deployment workflows: Fixed-size calibration subsets are now easier to use across supported export formats, helping reduce INT8 calibration time.
- Clearer tracking decisions: Users can more easily choose a tracker and understand the trade-offs between speed, ReID, camera-motion compensation, and occlusion handling.
- No major model architecture changes: This release primarily improves data handling, tuning reliability, tracking usability, and documentation rather than introducing a new model family.
What's Changed
- Fix concurrent MongoDB tuner default claims by @glenn-jocher in #25939
- Fix Tune optimizer default by @glenn-jocher in #25945
- Improve tuning fitness plot by @glenn-jocher in #25946
- Add depth dataset license metadata by @glenn-jocher in #25948
- Fix Depth8 licensing and tracker docs by @glenn-jocher in #25950
- Enable fraction to limit dataset by image counts by @fcakyon in #25951
Full Changelog: v8.4.129...v8.4.130