pypi ultralytics 8.4.2
v8.4.2 - `ultralytics 8.4.2` Fix Platform Classify training (#23217)

6 hours ago

🌟 Summary (single-line synopsis)

Ultralytics v8.4.2 mainly fixes Ultralytics Platform (ul:// / NDJSON) classification training by converting datasets into the correct on-disk layout and validating them properly, plus a few quality-of-life and docs/CI tweaks πŸ› οΈβœ…

πŸ“Š Key Changes

  • (Most important) Platform Classification Training Fix (PR #23217, @glenn-jocher) 🧩🏷️
    • NDJSON conversion now detects task == "classify" and creates an ImageNet-style folder layout: {split}/{class_name}/... (instead of images/ + labels/ used for detection-style tasks).
    • Detection/segmentation/pose/OBB conversions remain unchanged (still producing data.yaml, images/{split}/, labels/{split}/).
    • More robust downloads: creates parent directories before saving images pulled from URLs.
    • Trainer update: Trainer.get_dataset() now always resolves ul:// / .ndjson into a local dataset first, then runs the correct dataset validation for the task.
  • Classification results: Results.summary() now returns top-5 (PR #23215, @glenn-jocher) πŸ§ πŸ“‹
    • For classification predictions, summary() is intended to return top-5 classes + confidences instead of only top-1.
    • Note: the diff shows each top-5 entry being appended twice (likely an unintended duplication) ⚠️
  • Allow overriding save_dir reliably (PR #23191, @Y-T-G) πŸ“πŸ”§
    • save_dir is now treated as an allowed override/config key, so setting output directories via CLI/Python overrides is more consistent.
  • CI/tests: re-enable NCNN export tests on ARM64 (PR #23214, @lakshanthad) πŸ§ͺπŸ’»
    • Removes an ARM64 skip so NCNN export tests run on Apple Silicon/ARM servers (still guarded against PyTorch < 2.0 due to known instability).
  • Docs and branding/link fixes (PR #23215) πŸ“šπŸ”—
    • Updates Kaggle model badge to YOLO11 (branding), fixes a billing link, and updates a cloud-training docs path.

🎯 Purpose & Impact

  • Platform classification training is unblocked πŸŽ‰
    • If you train classification models from Ultralytics Platform datasets (ul://...) or .ndjson exports, this release prevents failures caused by the wrong dataset folder structure and ensures the trainer checks the right dataset type.
  • More informative classification outputs πŸ”
    • Top-5 summaries make it easier to evaluate β€œnear-miss” predictions and build UI/analytics around multiple candidates (watch for potential duplicated entries in Results.summary() output in this specific tag) ⚠️
  • More predictable experiment output paths 🧰
    • Workflows that need custom output directories (sweeps, notebooks, CI pipelines) can now set save_dir without it being ignored or flagged.
  • Better ARM64 export coverage πŸ§ͺ
    • Potentially catches ARM-specific NCNN export regressions earlier, though it may also surface new CI failures if upstream NCNN issues persist.

βœ… If you’re using Ultralytics Platform + classification, v8.4.2 is a β€œmust update”.

What's Changed

Full Changelog: v8.4.1...v8.4.2

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.