Glosario

Formación consciente de la cuantización (QAT)

Optimice los modelos de IA para dispositivos periféricos con Quantization-Aware Training (QAT), garantizando una alta precisión y eficiencia en entornos con recursos limitados.

Quantization-Aware Training (QAT) es una técnica avanzada de optimización de modelos que prepara una red neuronal (NN ) para su despliegue con menor precisión numérica. A diferencia del entrenamiento estándar, que utiliza números de coma flotante de 32 bits (FP32), QAT simula los efectos de los cálculos de enteros de 8 bits (INT8) durante el proceso de entrenamiento o ajuste. Al hacer que el modelo sea "consciente" de los errores de cuantización que encontrará durante la inferencia, QAT permite que el modelo ajuste sus pesos para minimizar la pérdida potencial de precisión. El resultado es un modelo compacto y eficiente que mantiene un alto rendimiento, lo que lo hace ideal para su despliegue en hardware con recursos limitados.

Funcionamiento del entrenamiento con cuantificación

El proceso QAT suele comenzar con un modelo FP32 preentrenado. Se insertan nodos de cuantización "falsos" en la arquitectura del modelo, que imitan el efecto de convertir valores de coma flotante en enteros de menor precisión y viceversa. A continuación, se vuelve a entrenar el modelo con un conjunto de datos de entrenamiento. Durante esta fase de reentrenamiento, el modelo aprende a adaptarse a la pérdida de información asociada a la cuantización mediante la retropropagación estándar. Esto permite al modelo encontrar un conjunto más robusto de pesos que son menos sensibles a la precisión reducida. Los principales marcos de aprendizaje profundo, como PyTorch y TensorFlow, ofrecen herramientas y API sólidas para implementar flujos de trabajo QAT.

QAT frente a cuantificación posterior al entrenamiento

QAT se compara a menudo con la Cuantización Post-Entrenamiento (PTQ), otro método común de cuantización de modelos. La diferencia clave radica en cuándo se aplica la cuantización.

  • Cuantificación posterior al entrenamiento (PTQ): Este método se aplica después de que el modelo haya sido completamente entrenado. Es un proceso más sencillo y rápido que no requiere reentrenamiento ni acceso a los datos de entrenamiento originales. Sin embargo, a veces puede provocar un descenso significativo de la precisión del modelo, sobre todo en el caso de modelos sensibles.
  • Quantization-Aware Training (QAT): Este método integra la cuantización en el bucle de entrenamiento. Aunque es más intensivo desde el punto de vista computacional y requiere acceso a los datos de entrenamiento, QAT casi siempre da como resultado una mayor precisión para el modelo cuantificado final en comparación con PTQ. Es el método preferido cuando es fundamental maximizar el rendimiento.

Aplicaciones reales de QAT

El entrenamiento consciente de la cuantización es vital para desplegar modelos de IA sofisticados en entornos con recursos limitados donde la eficiencia es clave.

  1. Visión por computador en el dispositivo: Ejecución de modelos complejos de visión por ordenador como Ultralytics YOLOv8 directamente en smartphones para aplicaciones como la detección de objetos en tiempo real en aplicaciones de realidad aumentada o la clasificación de imágenes en herramientas de gestión fotográfica. QAT permite que estos modelos se ejecuten de forma eficiente sin un consumo significativo de batería ni latencia.
  2. Edge AI en automoción y robótica: Despliegue de modelos para tareas como la detección de peatones o la asistencia de mantenimiento de carril en vehículos autónomos o para la manipulación de objetos en robótica. QAT permite que estos modelos se ejecuten en hardware especializado como Google Edge TPUs o NVIDIA Jetson, garantizando una baja latencia de inferencia para decisiones críticas en tiempo real. Esto es crucial para aplicaciones como los sistemas de alarma de seguridad o la gestión de aparcamientos.

Relación con otras técnicas de optimización

QAT es una de las diversas técnicas de optimización del despliegue de modelos y suele utilizarse junto a otras para lograr la máxima eficacia.

  • Poda de modelos: Consiste en eliminar de la red las conexiones redundantes o sin importancia. Un modelo puede podarse primero y luego someterse a QAT para lograr una compresión aún mayor.
  • Destilación de conocimientos: Entrena un modelo "alumno" más pequeño para imitar un modelo "profesor" más grande. El modelo de alumno resultante puede optimizarse con QAT.

Ultralytics admite la exportación de modelos a varios formatos como ONNX, TensorRT y TFLite, que son compatibles con los flujos de trabajo de QAT, lo que permite un despliegue eficaz en diversos equipos de empresas como Intel y NVIDIA. Puede gestionar y desplegar sus modelos optimizados para QAT utilizando plataformas como Ultralytics HUB. La evaluación del rendimiento del modelo mediante métricas relevantes después de QAT es esencial para garantizar el cumplimiento de los requisitos de precisión.

Únase a la comunidad Ultralytics

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

Únete ahora
Enlace copiado en el portapapeles