pypi ultralytics 8.4.133
v8.4.133 - Improve hyperparameter Tuner mutation convergence (#25984)

latest release: 8.4.134
6 hours ago

🌟 Summary

Ultralytics 8.4.133 improves hyperparameter tuning convergence, speeds up inference preprocessing, expands detection metrics, and simplifies edge-device setup. πŸš€

πŸ“Š Key Changes

  • Smarter hyperparameter tuning β€” PR #25984 by @glenn-jocher

    • Replaces coordinate-by-coordinate crossover with fitness-weighted selection of complete, high-performing configurations.
    • Preserves useful relationships between hyperparameters instead of mixing them independently.
    • Mutates approximately half of the parameters in normalized search-space coordinates, allowing parameters that start at zeroβ€”such as degrees or shearβ€”to evolve more effectively.
    • Gradually reduces mutation size when tuning stops finding better results, encouraging refinement after broad exploration.
    • Prevents duplicate candidates after clipping, rounding, or integer conversion, including small and discrete search spaces.
    • Ray Tune now defaults to Optuna multivariate TPE, with parallel-aware suggestions rather than independent random search.
  • Faster predictor preprocessing β€” PR #25982 by @jahsef ⚑

    • Moves image channel reordering and tensor-contiguity operations from CPU-side NumPy processing to the inference device.
    • Preserves output values while reducing unnecessary CPU copies.
    • Reported benchmarks show approximately 2.2–3.1Γ— faster preprocessing on an RTX 5080, with additional gains on CPU.
  • Automatic channels-last CPU inference β€” PR #25983 by @JESUSROYETH

    • Enables channels-last memory layout automatically for native PyTorch inference and standalone validation on supported x86 Linux and Windows CPUs with oneDNN.
    • Keeps training defaults and unsupported platforms unchanged.
    • Explicit channels_last=True remains available for supported CPU and CUDA paths.
    • Saved models are converted back to a safe contiguous format and stale EMA data is cleared to improve compatibility.
  • More accurate INT8 calibration subsets β€” PR #25978 by @JESUSROYETH

    • Fixes fraction handling during classification and detection INT8 export calibration.
    • Scalar fractions now apply directly to the selected calibration split, while list-based fractions retain train/validation/test behavior.
    • Prevents exports from unintentionally calibrating on an entire dataset when only a subset was requested.
  • Size-specific mAP for custom detection datasets β€” PR #25981 by @fcakyon πŸ“ˆ

    • Custom detection datasets can now report small-, medium-, and large-object mAP when using save_json=True.
    • Builds temporary COCO-format annotations internally while preserving existing native metrics and prediction files.
    • Applies consistently during training validation, final-model validation, and standalone validation.
  • Simpler edge-device installation

    • Raspberry Pi, Jetson, DGX Spark, DeepStream, and related guides now install the base ultralytics package instead of the larger [export] extra.
    • Export dependencies are installed automatically when an export is requested, reducing installation size and dependency conflicts.
  • Improved Weights & Biases artifact control β€” PR #25985 by @glenn-jocher

    • W&B model artifact uploads now follow the existing training save argument.
    • save=False skips uploading the best checkpoint while retaining metrics and plots.
    • Default behavior remains unchanged with save=True.
  • Package update

    • Version bumped to 8.4.133.

🎯 Purpose & Impact

  • Better tuning results: Hyperparameter searches are more likely to preserve successful configurations, explore meaningful alternatives, and avoid wasting trials on duplicates. 🎯
  • Faster inference: Device-side preprocessing can reduce latency, particularly for batched inference and CPU-bound pipelines.
  • Broader performance optimization: Supported x86 CPU users may benefit from channels-last inference without changing their existing commands.
  • More reliable model export: INT8 calibration now honors requested dataset fractions, improving calibration speed and reducing unexpected resource usage.
  • Richer evaluation: Custom detection datasets can now receive object-size performance breakdowns similar to COCO evaluations.
  • Easier edge deployment: Base installations are smaller and less prone to dependency conflicts, while export workflows remain available when needed.
  • More control over experiment storage: W&B users can keep experiment tracking lightweight by disabling checkpoint saving with the standard save setting.

What's Changed

Full Changelog: v8.4.132...v8.4.133

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.