Model Quantization
Descubre cómo la cuantización de modelos optimiza Ultralytics YOLO26 para la IA en el edge. Aprende a reducir la memoria, disminuir la latencia y exportar modelos INT8 para acelerar la inferencia.
La cuantización de modelos es una sofisticada técnica de optimización de modelos que se utiliza para reducir los costes computacionales y de memoria derivados de ejecutar modelos de aprendizaje profundo. En los flujos de trabajo de entrenamiento estándar, las redes neuronales suelen almacenar los parámetros (pesos y sesgos) y los mapas de activación utilizando números de coma flotante de 32 bits (FP32). Aunque esta alta precisión garantiza cálculos exactos durante el entrenamiento, a menudo resulta innecesaria para la inferencia. La cuantización convierte estos valores a formatos de menor precisión, como números de coma flotante de 16 bits (FP16) o enteros de 8 bits (INT8), lo que reduce eficazmente el tamaño del modelo y acelera la velocidad de ejecución sin comprometer significativamente la precisión.
Por qué es importante la cuantización#
El principal motivo para cuantizar es la necesidad de implementar una IA potente en hardware con recursos limitados. A medida que los modelos de visión artificial, como YOLO26, se vuelven más complejos, aumentan sus necesidades computacionales. La cuantización aborda tres cuellos de botella críticos:
- Huella de memoria: Al reducir el número de bits de los pesos (por ejemplo, de 32 bits a 8 bits), los requisitos de almacenamiento del modelo se reducen hasta 4 veces. Esto es fundamental para las aplicaciones móviles, cuyo tamaño está limitado.
- Latencia de inferencia: Las operaciones de menor precisión tienen un coste computacional inferior. Los procesadores modernos, especialmente los que cuentan con unidades de procesamiento neuronal (NPUs) especializadas, pueden ejecutar operaciones INT8 mucho más rápido que FP32, lo que reduce significativamente la latencia de inferencia.
- Consumo energético: Mover menos datos por la memoria y realizar operaciones aritméticas más sencillas consume menos energía, lo que prolonga la duración de la batería en dispositivos portátiles y vehículos autónomos.
Comparación con conceptos relacionados#
Es importante distinguir la cuantización de otras técnicas de optimización, ya que modifican el modelo de formas diferentes:
- Cuantización frente a poda: Mientras que la cuantización reduce el tamaño del archivo disminuyendo el número de bits de los parámetros, la poda de modelos consiste en eliminar por completo las conexiones innecesarias (pesos) para crear una red dispersa. La poda modifica la estructura del modelo, mientras que la cuantización modifica la representación de los datos.
- Cuantización frente a destilación de conocimiento: La destilación de conocimiento es una técnica de entrenamiento en la que un modelo pequeño, el «estudiante», aprende a imitar a un modelo grande, el «profesor». La cuantización suele aplicarse al modelo estudiante después de la destilación para mejorar aún más el rendimiento de la IA en el perímetro.
Aplicaciones en el mundo real#
La cuantización permite utilizar la visión artificial y la IA en diversos sectores en los que la eficiencia es primordial.
-
Sistemas autónomos: En la industria automovilística, los vehículos autónomos deben procesar en tiempo real los datos visuales de las cámaras y del LiDAR. Los modelos cuantizados implementados en motores NVIDIA TensorRT permiten a estos vehículos detectar peatones y obstáculos con una latencia de milisegundos, garantizando la seguridad de los pasajeros.
-
Agricultura inteligente: Los drones equipados con cámaras multiespectrales utilizan modelos cuantizados de detección de objetos para identificar enfermedades de los cultivos o supervisar las fases de crecimiento. Ejecutar estos modelos localmente en los sistemas embebidos del dron elimina la necesidad de disponer de conexiones móviles poco fiables en zonas agrícolas remotas.
Implementación de la cuantización con Ultralytics#
La biblioteca de Ultralytics simplifica el proceso de exportación y permite a los desarrolladores convertir modelos como el avanzado YOLO26 a formatos cuantizados. La plataforma Ultralytics también proporciona herramientas para gestionar estas implementaciones sin complicaciones.
El siguiente ejemplo muestra cómo exportar un modelo a TFLite con la cuantización INT8 activada. Este proceso incluye un paso de calibración en el que el modelo observa datos de muestra para determinar el rango dinámico óptimo de los valores cuantizados.
from ultralytics import YOLO
# Load a standard YOLO26 model
model = YOLO("yolo26n.pt")
# Export to TFLite format with INT8 quantization
# The 'int8' argument triggers Post-Training Quantization
# 'data' provides the calibration dataset needed for mapping values
model.export(format="tflite", int8=True, data="coco8.yaml")Los modelos optimizados se implementan con frecuencia utilizando estándares interoperables como ONNX o motores de inferencia de alto rendimiento como OpenVINO, lo que garantiza una amplia compatibilidad entre diversos ecosistemas de hardware.









