Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Motor de Inferencia

Descubra cómo los motores de inferencia impulsan la IA al ofrecer predicciones en tiempo real, optimizar modelos y permitir la implementación en múltiples plataformas.

Un motor de inferencia es un componente de software especializado diseñado para ejecutar modelos de aprendizaje modelos de aprendizaje automático y generar predicciones a partir de nuevos datos. A diferencia de los marcos de formación que se centran en el aprendizaje de patrones a partir de conjuntos de datos masivos, un motor de inferencia está optimizado exclusivamente para la fase operativa, conocida como despliegue de modelos. Su objetivo principal es ejecutar estos modelos de la forma más eficiente posible, minimizando minimizando la latencia de la inferencia y maximizando en el hardware de destino, ya sea un potente servidor en la nube o un dispositivo de de recursos limitados.

Cómo funciona un motor de inferencia

La transición de un modelo entrenado a una aplicación lista para su despliegue suele implicar un motor de inferencia que actúa como el entorno de ejecución. Una vez entrenado el modelo en un marco como PyTorch o TensorFlowa menudo es pesado y contiene estructuras útiles para el aprendizaje pero innecesarias para la predicción. Un motor de inferencia elimina esta sobrecarga y aplica optimizaciones rigurosas al grafo computacional.

Las técnicas clave de optimización incluyen:

  • Fusión de capas: El motor combina varias capas (por ejemplo, convolución, normalización por lotes y activación) en una sola operación. Esto reduce el acceso a la memoria y acelera la ejecución.
  • Reducción de la precisión: A través de cuantificación del modelo, el motor convierte pesos del formato de coma flotante de 32 bits de alta precisión (FP32) a formatos de menor precisión como INT8 o FP16. Este Esto reduce drásticamente el tamaño del modelo y el uso de ancho de banda de memoria sin comprometer significativamente la precisión. la precisión.
  • Autoajuste del núcleo: Motores como NVIDIA TensorRT seleccionan automáticamente los algoritmos algoritmos y núcleos de hardware más eficientes GPU que se utiliza.
  • Gestión de la memoria: Las estrategias eficientes de reutilización de memoria minimizan la sobrecarga de asignar y y desasignación de memoria en tiempo de ejecución, lo que es inferencia en tiempo real.

Motores de inferencia comunes

Los distintos motores se adaptan a ecosistemas de hardware y objetivos de rendimiento específicos:

  • NVIDIA TensorRT: optimizador de inferencia de aprendizaje profundo de alto rendimiento y tiempo de ejecución para GPU NVIDIA . Se utiliza ampliamente en centros de datos y aplicaciones de automoción. Puede exportar exportar fácilmente los modelos Ultralytics a TensorRT velocidad.
  • Intel OpenVINO: El Inferencia Visual Abierta y Optimización de Redes Neuronales optimiza los modelos para el hardware Intel , incluidas las CPU y GPU integradas. Permite un enfoque de "escribir una vez, despliegue en cualquier lugar" dentro del ecosistema Intel .
  • ONNX Runtime: Un motor multiplataforma desarrollado por Microsoft que admite el ONNX . Permite que los modelos entrenados en un marco se ejecuten eficazmente en varios backends de hardware.
  • TensorFlow Lite: Diseñado para dispositivos móviles y IoT, TensorFlow Lite permite la inferencia de baja latencia en Android, iOS y sistemas integrados.

Aplicaciones en el mundo real

Los motores de inferencia son la espina dorsal invisible de las aplicaciones modernas de IA, ya que les permiten reaccionar instantáneamente ante el mundo.

  1. Conducción autónoma: En la industria del automóvil, los vehículos se basan en la visión por ordenador para navegar navegar con seguridad. Un motor de inferencia instalado en el ordenador de a bordo procesa las imágenes de vídeo para detectar detección de objetos como peatones peatones, otros vehículos y señales de tráfico. Un modelo como YOLO11, el motor garantiza que estas predicciones se produzcan en milisegundos, lo que permite al coche frenar o girar de forma autónoma en tiempo real. en tiempo real.
  2. Fabricación inteligente: Las líneas de producción utilizan motores de inferencia para el control de calidad automatizado. Las cámaras de alta velocidad captan imágenes de los productos en una cinta transportadora y un motor de inferencia las procesa para detectar defectos como grietas o desajustes. detect defectos como grietas o desajustes. Este sistema de alto rendimiento evita que se envíen artículos defectuosos y reduce los costes de inspección manual. y reduce los costes de la inspección manual.

Motor de inferencia frente a marco de formación

Es importante distinguir entre las herramientas utilizadas para crear modelos y las utilizadas para ejecutarlos.

  • Marcos de formación (por ejemplo, PyTorch, Keras): Están diseñados para la flexibilidad y la experimentación. Admiten la retropropagación, las actualizaciones de gradiente y los gráficos dinámicos, que son esenciales para el aprendizaje pero computacionalmente caros. son esenciales para el aprendizaje, pero costosos desde el punto de vista computacional.
  • Motores de inferencia (por ejemplo, TensorRT, ONNX Runtime): Están diseñados para ser rápidos y eficientes. En tratan el modelo como un conjunto estático de operaciones que deben ejecutarse lo más rápido posible. Normalmente no permiten entrenamiento o aprendizaje de nuevos patrones.

Exportar para inferir

Para utilizar un motor de inferencia específico, a menudo es necesario exportar el modelo entrenado a un formato compatible. En ejemplo, exportar un modelo YOLO11 al formato ONNX permite ejecutarlo con ONNX Runtime o importarlo a otros motores.

from ultralytics import YOLO

# Load a trained YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to ONNX format for use with ONNX Runtime
# This creates 'yolo11n.onnx' optimized for inference
model.export(format="onnx")

Aprovechando un motor de inferencia, los desarrolladores pueden liberar todo el potencial de sus modelos de IA, garantizando que funcionen en entornos de producción que van desde clústeres en la nube hasta dispositivos periféricos alimentados por batería.

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora