Ir al contenido

Optimización de inferencias YOLO26 con el motor DeepSparse de Neural Magic

Al desplegar modelos de detección de objetos como Ultralytics YOLO26 en diversos tipos de hardware, pueden surgir problemas únicos como la optimización. Aquí es donde entra en juego la integración de YOLO26 con el motor DeepSparse de Neural Magic. Transforma la forma en que se ejecutan los modelos YOLO26 y permite un rendimiento a nivel de GPU directamente en CPUs.

Esta guía le muestra cómo desplegar YOLO26 utilizando DeepSparse de Neural Magic, cómo ejecutar inferencias y también cómo evaluar el rendimiento para asegurar que esté optimizado.

Fin de vida útil de SparseML

Neural Magic era adquirida por Red Hat en enero de 2025, y está dejando de lado las versiones comunitarias de sus deepsparse, sparseml, sparsezoo, y sparsify bibliotecas. Para obtener información adicional, consulte el aviso publicado en el Readme en el sparseml Repositorio de GitHub.

DeepSparse de Neural Magic

Visión general de DeepSparse de Neural Magic

DeepSparse de Neural Magic es un tiempo de ejecución de inferencia diseñado para optimizar la ejecución de redes neuronales en CPUs. Aplica técnicas avanzadas como la dispersión, la poda y la cuantificación para reducir drásticamente las demandas computacionales manteniendo la precisión. DeepSparse ofrece una solución ágil para la ejecución eficiente y escalable de redes neuronales en varios dispositivos.

Beneficios de la integración de DeepSparse de Neural Magic con YOLO26

Antes de profundizar en cómo desplegar YOLO26 utilizando DeepSparse, entendamos los beneficios de usar DeepSparse. Algunas ventajas clave incluyen:

  • Velocidad de inferencia mejorada: Alcanza hasta 525 FPS (en YOLO11n), acelerando significativamente las capacidades de inferencia de YOLO en comparación con los métodos tradicionales.

Aceleración de inferencia Neural Magic

  • Eficiencia del modelo optimizada: Utiliza poda (pruning) y cuantificación para mejorar la eficiencia de YOLO26, reduciendo el tamaño del modelo y los requisitos computacionales mientras mantiene la precisión.

Optimización y poda Neural Magic

  • Alto Rendimiento en CPU Estándar: Ofrece un rendimiento similar al de la GPU en las CPU, lo que proporciona una opción más accesible y rentable para diversas aplicaciones.

  • Integración y despliegue optimizados: Ofrece herramientas fáciles de usar para una integración sencilla de YOLO26 en aplicaciones, incluyendo funciones de anotación de imágenes y video.

  • Soporte para varios tipos de modelos: Compatible con modelos YOLO26 estándar y optimizados por escasez, añadiendo flexibilidad de despliegue.

  • Solución rentable y escalable: Reduce los gastos operativos y ofrece una implementación escalable de modelos avanzados de detección de objetos.

¿Cómo funciona la tecnología DeepSparse de Neural Magic?

La tecnología DeepSparse de Neural Magic se inspira en la eficiencia del cerebro humano en el cálculo de redes neuronales. Adopta dos principios clave del cerebro de la siguiente manera:

  • Sparsity: El proceso de sparsification implica la eliminación de información redundante de las redes de deep learning, lo que lleva a modelos más pequeños y rápidos sin comprometer la precisión. Esta técnica reduce significativamente el tamaño de la red y las necesidades computacionales.

  • Localidad de referencia: DeepSparse utiliza un método de ejecución único, dividiendo la red en columnas de tensores. Estas columnas se ejecutan en profundidad, encajando completamente dentro de la caché de la CPU. Este enfoque imita la eficiencia del cerebro, minimizando el movimiento de datos y maximizando el uso de la caché de la CPU.

Cómo funciona la tecnología DeepSparse de Neural Magic

Creación de una versión dispersa de YOLO26 entrenada en un conjunto de datos personalizado

SparseZoo, un repositorio de modelos de código abierto de Neural Magic, ofrece una colección de puntos de control de modelos YOLO26 pre-esparsificados. Con SparseML, integrado sin problemas con Ultralytics, los usuarios pueden ajustar sin esfuerzo estos puntos de control dispersos en sus conjuntos de datos específicos utilizando una interfaz de línea de comandos sencilla.

Consulte la documentación de SparseML YOLO26 de Neural Magic para obtener más detalles.

Uso: Despliegue de YOLO26 utilizando DeepSparse

La implementación de YOLO26 con DeepSparse de Neural Magic implica unos pocos pasos sencillos. Antes de sumergirse en las instrucciones de uso, asegúrese de revisar la gama de modelos YOLO26 ofrecidos por Ultralytics. Esto le ayudará a elegir el modelo más adecuado para los requisitos de su proyecto. A continuación, le indicamos cómo puede empezar.

Paso 1: Instalación

Para instalar los paquetes necesarios, ejecute:

Instalación

# Install the required packages
pip install deepsparse[yolov8]

Paso 2: Exportación de YOLO26 a formato ONNX

DeepSparse Engine requiere modelos YOLO26 en formato ONNX. Exportar su modelo a este formato es esencial para la compatibilidad con DeepSparse. Utilice el siguiente comando para exportar modelos YOLO26:

Exportación del Modelo

# Export YOLO26 model to ONNX format
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13

Este comando guardará el yolo26n.onnx modelo a su disco.

Paso 3: Implementación y ejecución de inferencias

Con su modelo YOLO26 en formato ONNX, puede implementar y ejecutar inferencias utilizando DeepSparse. Esto se puede hacer fácilmente con su intuitiva API de python:

Implementación y ejecución de inferencias

from deepsparse import Pipeline

# Specify the path to your YOLO26 ONNX model
model_path = "path/to/yolo26n.onnx"

# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)

# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)

Paso 4: Evaluación comparativa del rendimiento

Es importante verificar que su modelo YOLO26 esté funcionando de manera óptima en DeepSparse. Puede comparar el rendimiento de su modelo para analizar el rendimiento y la latencia:

Evaluación comparativa

# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

Paso 5: Características adicionales

DeepSparse proporciona características adicionales para la integración práctica de YOLO26 en aplicaciones, como la anotación de imágenes y la evaluación de conjuntos de datos.

Características adicionales

# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo26n.onnx"

# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo26n.onnx"

Al ejecutar el comando annotate se procesa la imagen especificada, se detectan objetos y se guarda la imagen anotada con cuadros delimitadores y clasificaciones. La imagen anotada se almacenará en una carpeta de annotation-results. Esto ayuda a proporcionar una representación visual de las capacidades de detección del modelo.

Interfaz de la función de Neural Magic

Después de ejecutar el comando 'eval', recibirá métricas de salida detalladas como precisión, recall y mAP (precisión media promedio). Esto proporciona una vista completa del rendimiento de su modelo en el conjunto de datos y es particularmente útil para ajustar y optimizar sus modelos YOLO26 para casos de uso específicos, asegurando una alta precisión y eficiencia.

Resumen

Esta guía exploró la integración de YOLO26 de Ultralytics con DeepSparse Engine de Neural Magic. Destacó cómo esta integración mejora el rendimiento de YOLO26 en plataformas CPU, ofreciendo eficiencia a nivel de GPU y técnicas avanzadas de esparsidad de redes neuronales.

Para obtener información más detallada y uso avanzado, visite la documentación de DeepSparse de Neural Magic. También puede explorar la guía de integración de YOLO26 y ver una sesión de demostración en YouTube.

Además, para una comprensión más amplia de varias integraciones de YOLO26, visite la página de la guía de integración de Ultralytics, donde podrá descubrir una variedad de otras emocionantes posibilidades de integración.

Preguntas frecuentes

¿Qué es el motor DeepSparse de Neural Magic y cómo optimiza el rendimiento de YOLO26?

DeepSparse Engine de Neural Magic es un tiempo de ejecución de inferencia diseñado para optimizar la ejecución de redes neuronales en CPUs mediante técnicas avanzadas como la esparsidad, la poda y la cuantificación. Al integrar DeepSparse con YOLO26, puede lograr un rendimiento similar al de una GPU en CPUs estándar, mejorando significativamente la velocidad de inferencia, la eficiencia del modelo y el rendimiento general, manteniendo la precisión. Para más detalles, consulte la sección DeepSparse de Neural Magic.

¿Cómo puedo instalar los paquetes necesarios para desplegar YOLO26 utilizando DeepSparse de Neural Magic?

La instalación de los paquetes necesarios para implementar YOLO26 con DeepSparse de Neural Magic es sencilla. Puede instalarlos fácilmente usando la CLI. Aquí está el comando que debe ejecutar:

pip install deepsparse[yolov8]

Una vez instalado, siga los pasos proporcionados en la sección de instalación para configurar su entorno y comenzar a usar DeepSparse con YOLO26.

¿Cómo convierto modelos YOLO26 a formato ONNX para su uso con DeepSparse?

Para convertir modelos YOLO26 al formato ONNX, que es necesario para la compatibilidad con DeepSparse, puede usar el siguiente comando CLI:

yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13

Este comando exportará su modelo YOLO26 (yolo26n.pt) a un formato (yolo26n.onnx) que puede ser utilizado por el motor DeepSparse. Puede encontrar más información sobre la exportación de modelos en el Sección de Exportación del Modelo.

¿Cómo evalúo el rendimiento de YOLO26 en el motor DeepSparse?

La comparación del rendimiento de YOLO26 en DeepSparse le ayuda a analizar el rendimiento y la latencia para asegurar que su modelo esté optimizado. Puede usar el siguiente comando CLI para ejecutar una comparación:

deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

Este comando te proporcionará métricas de rendimiento vitales. Para obtener más detalles, consulta la sección Benchmarking Performance section.

¿Por qué debería usar DeepSparse de Neural Magic con YOLO26 para tareas de detección de objetos?

La integración de DeepSparse de Neural Magic con YOLO26 ofrece varios beneficios:

  • Velocidad de inferencia mejorada: Alcanza hasta 525 FPS (en YOLO11n), demostrando las capacidades de optimización de DeepSparse.
  • Eficiencia del modelo optimizada: Utiliza técnicas de esparcimiento, poda y cuantización para reducir el tamaño del modelo y las necesidades computacionales, manteniendo la precisión.
  • Alto Rendimiento en CPU Estándar: Ofrece un rendimiento similar al de la GPU en hardware de CPU rentable.
  • Integración optimizada: Herramientas fáciles de usar para una fácil implementación e integración.
  • Flexibilidad: Soporta modelos YOLO26 tanto estándar como optimizados para esparsidad.
  • Rentable: Reduce los gastos operativos mediante la utilización eficiente de los recursos.

Para una inmersión más profunda en estas ventajas, visite la sección de Beneficios de integrar DeepSparse de Neural Magic con YOLO26.



📅 Creado hace 2 años ✏️ Actualizado hace 7 días
glenn-jocherRizwanMunawarUltralyticsAssistantBurhan-QMatthewNoyceabirami-vina

Comentarios