Ultralytics Release v8.3.102
We are thrilled to announce the release of Ultralytics v8.3.102! This update comes with exciting new features, significant improvements, and key bug fixes to enhance the flexibility, modularity, and functionality of the framework. Whether you’re a researcher, developer, or enthusiast, we believe these updates will empower you to build and experiment with state-of-the-art neural network architectures.
Summary
This release introduces a major refactor to the YOLOE module, incorporating innovative neural network modules and a reorganized codebase to improve functionality and modularity. These changes are designed to enhance usability and scalability for advanced machine learning tasks.
New Features
Introducing New Modules
- SwiGLUFFN: A specialized feed-forward network optimized for transformer-based architectures.
- Residual: Supports residual connections to improve learning efficiency.
- SAVPE (Spatial-Aware Visual Prompt Embedding): Enhances feature extraction and analysis.
These new modules greatly expand the capabilities for designing advanced and customizable neural networks.
Improved Code Structure
- Modules like
SwiGLUFFN
,Residual
, andSAVPE
have been moved fromhead.py
toblock.py
, improving code modularity and maintainability. - Related documentation has been updated to align with these changes.
Improvements
- Logging Clean-up: Removed verbose log output in
build_text_model
, ensuring a more streamlined workflow (see PR by @Y-T-G). - Added support for the
fraction
argument in the export dataloader, allowing more flexibility (see PR by @ambitious-octopus). - Refactored
tablesort.js
for improved performance and maintainability (see PR by @glenn-jocher).
Bug Fixes
A range of fixes to ensure smoother operation and eliminate inconsistencies:
- Resolved an issue with ONNX example scaling ratio calculations (see PR by @MrBlackBigWhiteSheep).
- Removed unused arguments (
max_det
) for more streamlined YOLOE operations (see PR by @Laughing-q). - Fixed
None
source checking bypass in YOLOE (see PR by @Laughing-q). - Documentation streamlining, such as updating
models/
docstrings (see PR by @glenn-jocher).
Purpose & Impact
- Enhanced User Experience: Logical grouping of modules simplifies code navigation and development.
- Advanced Capabilities: Leverage newly introduced modules for sophisticated machine learning tasks.
- Scalability: Improved modularity paves the way for deploying efficient, cutting-edge models in both research and production workflows.
Highlights from the Community
We extend our gratitude for the continued contributions and support from our amazing community. A special shoutout to our new contributor:
- @MrBlackBigWhiteSheep for their first contribution in PR #20016!
Your efforts make these advancements possible!
Release Details & Feedback
Browse the Full Changelog for a complete breakdown of all changes, or visit our v8.3.102 Release Page to download.
We encourage you to try out this latest release and share feedback! Your input is invaluable in shaping the future of the Ultralytics ecosystem.
Thank you for being a part of the Ultralytics journey. We can’t wait to see what you build with v8.3.102!