github ultralytics/ultralytics v8.3.39
v8.3.39 - `ultralytics 8.3.39` fix classification validation loss scaling (#17851)

latest releases: v8.3.41, v8.3.40
6 days ago

🌟 Summary

The Ultralytics v8.3.39 release focuses on improving model behavior, functionality, and user experience across multiple aspects, including classification validation, documentation enhancements, and tool usability. It introduces critical fixes and new features to improve the overall quality of the platform. 🚀


📊 Key Changes

  • 🧠 Fixed Classification Validation Loss:

    • Adjusted classification model's loss scaling during validation to improve output consistency and accuracy.
    • Introduced a refined approach to apply softmax only in necessary scenarios for clarity and precision.
  • 🎯 "Classes" Filter in Training:

    • Added a new classes argument to the training configuration, enabling model training on specific class IDs selectively.
  • 🎥 Enhanced Video Annotation Tool:

    • Introduced a "Sweep Annotation" utility for dynamic video annotation. Users can now visualize objects based on an interactive sweep line that tracks their positions.
  • 🎨 Improved Color Handling in LibTorch Example:

    • Addressed a key issue by adding a BGR to RGB conversion step in the C++ LibTorch inference example, ensuring color compatibility for accurate YOLO results.
  • 🗂️ Documentation Updates:

    • Significant improvements in README files:
      • Clickable YOLO11 performance plot images now redirect to documentation.
      • Enhanced clarity about model auto-download behavior and training details.
    • Added new high-quality tutorial videos across docs for better onboarding and understanding.
    • Fixed YOLOv11 references to the correct term YOLO11 for consistency.
  • ⚙️ Code Improvements and Maintenance:

    • Simplified segmentation handling with better clipping (clip()) for out-of-bounds coordinates in segmentation tasks.
    • Added an elegant __getattr__ method making model attributes (e.g., stride or task) directly accessible from the Model class.
    • Refined model logging for better debugging and developer experience.

🎯 Purpose & Impact

  • Enhanced Accuracy and Model Behavior: The classification loss scaling fix addresses a crucial inconsistency, delivering more reliable results during validation phases.
  • Increased Flexibility: The "classes" argument empowers users with precise control, making training workflows more tailored and efficient by focusing on specific class IDs. 💡
  • Better Video Annotation: The "Sweep Annotation" tool adds an intuitive way to annotate video data interactively, offering new possibilities for detection and tracking tasks.
  • Improved Inference Quality: The BGR to RGB fix ensures accurate detections for users operating in C++ environments with LibTorch inference.
  • Streamlined User Education: Updated and accessible documentation alongside engaging video tutorials helps onboard new users quickly while enhancing knowledge for experienced developers. 📚
  • Consistency: Terminology such as YOLO11 aligned across documentation ensures clarity and avoids user confusion.

This release keeps refining both functionality and usability, advancing the YOLO ecosystem for a diverse range of practical applications. 🎉

What's Changed

New Contributors

Full Changelog: v8.3.38...v8.3.39

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.