Mixed Precision
Descubre cómo la precisión mixta acelera el entrenamiento y reduce la memoria necesaria para modelos como Ultralytics YOLO26. Explora las ventajas de FP16 y FP32 para obtener información de IA más rápidamente.
La precisión mixta es una técnica fundamental de optimización de modelos que se utiliza para acelerar el entrenamiento de modelos de aprendizaje profundo y reducir al mismo tiempo el consumo de memoria. Al combinar estratégicamente distintos formatos numéricos —normalmente tipos de coma flotante de 16 y 32 bits—, este método permite que los algoritmos de aprendizaje automático realicen cálculos más rápidamente sin sacrificar la precisión final del modelo. Se ha convertido en una práctica habitual en el desarrollo moderno de la IA, especialmente para tareas que requieren muchos recursos, como entrenar la arquitectura YOLO26 con conjuntos de datos masivos.
Cómo funciona la precisión mixta#
En los flujos de trabajo tradicionales de aprendizaje profundo, los modelos suelen realizar los cálculos utilizando el formato de coma flotante de precisión simple (FP32). Cada número en FP32 requiere 32 bits de memoria. Aunque este formato ofrece una gran precisión, puede consumir muchos recursos computacionales y memoria.
La precisión mixta introduce el uso de la precisión media (FP16), que utiliza solo 16 bits. Sin embargo, usar únicamente FP16 puede provocar inestabilidad numérica debido a un rango dinámico menor. Para resolverlo, los métodos de precisión mixta mantienen una «copia maestra» de los pesos del modelo en FP32 para garantizar la estabilidad, mientras utilizan FP16 para las operaciones matemáticas más exigentes, como las convoluciones y las multiplicaciones de matrices.
El proceso suele incluir tres pasos clave:
-
Conversión de tipo: convertir las entradas y activaciones del modelo a FP16 para acelerar la ejecución en hardware compatible, como los Tensor Cores de NVIDIA.
-
Escalado de la pérdida: amplificar los valores de la función de pérdida para evitar el «desbordamiento inferior», por el que las pequeñas actualizaciones de los gradientes se convierten en ceros en FP16.
-
Acumulación: realizar las operaciones aritméticas en FP16, pero acumular los resultados en FP32 para conservar la información necesaria antes de actualizar los pesos maestros.
Ventajas en el entrenamiento de IA#
Adoptar la precisión mixta ofrece ventajas importantes a desarrolladores e investigadores que utilizan eficazmente los recursos computacionales:
- Mayor velocidad de entrenamiento: las operaciones en FP16 requieren menos ancho de banda de memoria y los GPU modernos las procesan más rápidamente. Esto puede reducir considerablemente el tiempo necesario para completar una época.
- Menor uso de memoria: como los tensores FP16 ocupan la mitad de memoria que los tensores FP32, los desarrolladores pueden prácticamente duplicar el tamaño del lote. Los tamaños de lote más grandes suelen producir estimaciones de gradientes más estables y una convergencia más rápida.
- Eficiencia energética: la reducción de la carga computacional se traduce en un menor consumo de energía, algo crucial para las operaciones de entrenamiento en la nube a gran escala.
Aplicaciones en el mundo real#
La precisión mixta se utiliza en diversos sectores para gestionar modelos complejos y grandes conjuntos de datos de forma eficiente.
Conducción autónoma#
En el desarrollo de vehículos autónomos, los ingenieros deben entrenar modelos de detección de objetos con millones de fotogramas de vídeo de alta resolución. El uso de la precisión mixta les permite entrenar de forma eficiente modelos de vanguardia como YOLO26. La menor huella de memoria permite procesar entradas de mayor resolución, algo fundamental para detectar objetos pequeños, como señales de tráfico o peatones, a distancia.
Análisis de imágenes médicas#
El análisis de imágenes médicas suele incluir datos volumétricos 3D procedentes de escáneres de MRI o CT, que requieren muchísima memoria. Entrenar modelos de segmentación con estos datos utilizando precisión FP32 completa suele provocar errores de «Sin memoria» (OOM). La precisión mixta permite a los investigadores cargar estos modelos exigentes en la memoria de la GPU, lo que facilita el desarrollo de IA capaz de ayudar a los médicos a diagnosticar enfermedades de forma más temprana.
Implementación de la precisión mixta con Ultralytics#
Los frameworks modernos, como PyTorch, suelen gestionar automáticamente las complejidades de la precisión mixta mediante una función denominada Precisión mixta automática (AMP). El paquete ultralytics activa AMP de forma predeterminada durante el entrenamiento para garantizar un rendimiento óptimo.
Este es un ejemplo conciso de cómo iniciar el entrenamiento con Ultralytics YOLO26, donde la precisión mixta está activa de forma predeterminada (puedes controlarla mediante el argumento amp):
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset
# amp=True is the default setting for mixed precision training
results = model.train(data="coco8.yaml", epochs=5, imgsz=640, amp=True)Precisión mixta frente a conceptos relacionados#
Para evitar confusiones, conviene distinguir la precisión mixta de términos similares del glosario:
- Cuantización de modelos: mientras que la precisión mixta utiliza números de coma flotante de menor precisión (FP16) durante el entrenamiento, la cuantización suele convertir los pesos en enteros (como INT8) después del entrenamiento para su implementación. La cuantización se centra principalmente en la latencia de inferencia en dispositivos periféricos, mientras que la precisión mixta se centra en la velocidad y la estabilidad del entrenamiento.
- Precisión media: este término hace referencia específicamente al formato de datos FP16. La precisión mixta es la técnica de utilizar FP16 y FP32 conjuntamente. Usar únicamente precisión media, sin la copia maestra de FP32 «mixta», suele provocar que los modelos no converjan debido a errores numéricos.
Conclusión#
La precisión mixta ha revolucionado la forma de entrenar redes neuronales y actúa como un habilitador fundamental para los enormes modelos fundacionales y sistemas de visión que utilizamos hoy en día. Al equilibrar la necesidad de precisión matemática con las limitaciones de velocidad y memoria del hardware, permite a los desarrolladores iterar más rápidamente y crear soluciones de IA más capaces.
Para quienes buscan gestionar conjuntos de datos y entrenar modelos optimizados sin complicaciones, la Ultralytics Platform ofrece un entorno integral que aprovecha automáticamente estas modernas técnicas de optimización.









