Descubra cómo la precisión media (FP16) acelera la IA con una computación más rápida, un uso reducido de la memoria y una implementación eficiente de los modelos.
La media precisión es un formato de número binario en coma flotante que ocupa 16 bits en la memoria del ordenador, comúnmente denominado FP16. comúnmente denominado FP16. En el campo del aprendizaje aprendizaje profundo, este formato es una alternativa al formato estándar de 32 bits de precisión simple (FP32) utilizado tradicionalmente para cálculos numéricos. En reducir el número de bits necesarios para representar cada número, la media precisión disminuye significativamente la presión del ancho de banda de la memoria y los requisitos de almacenamiento. de memoria y los requisitos de almacenamiento para pesos y activaciones del modelo. Esta eficiencia permite investigadores e ingenieros entrenar redes neuronales redes neuronales más grandes o desplegar modelos recursos limitados sin comprometer sustancialmente precisión de las predicciones.
El estándar IEEE 754 define la estructura de los números en coma flotante donde FP16 asigna 1 bit para el signo, 5 bits para el exponente y 10 bits para la fracción (mantisa). Esta representación compacta contrasta con FP32, que utiliza 8 bits para el exponente y 23 para la fracción. La principal ventaja de utilizar FP16 en visión por computador y otras tareas de IA es la aceleración de las operaciones matemáticas. Los aceleradores de hardware modernos, como NVIDIA Tensor Cores, están diseñados específicamente para realizar multiplicaciones matriciales de precisión media a velocidades significativamente superiores a las de las operaciones de precisión simple.
Sin embargo, el reducido número de bits implica un menor rango dinámico y una menor precisión. Esto puede provocar inestabilidad numérica, como gradientes de fuga, en los que los números demasiado pequeños para que el ordenador los represente claramente a partir de cero. Para mitigarlo, los desarrolladores suelen emplear estrategias de precisión mixta, que dinámicamente entre FP16 y FP32 durante el entrenamiento para mantener la estabilidad al tiempo que se aprovecha la velocidad de la semiprecisión.
La media precisión es omnipresente en los flujos de trabajo modernos de IA, especialmente en escenarios que requieren un alto rendimiento o una baja latencia. latencia.
Marcos como PyTorch y bibliotecas como
ultralytics facilitan el uso de la semiprecisión. El siguiente ejemplo muestra cómo
exportar un modelo YOLO11 al TensorRT formato FP16, una práctica
práctica habitual para optimizar la velocidad de inferencia en las GPU NVIDIA .
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TensorRT engine with half-precision enabled
# The 'half=True' argument ensures weights are converted to FP16
model.export(format="engine", half=True)
Para entender la semiprecisión es necesario distinguirla de las técnicas de optimización relacionadas que se encuentran en el glosario:
Al dominar estos formatos, los desarrolladores pueden garantizar que sus estrategias de despliegue de modelos se optimizan requisitos específicos de hardware y rendimiento de sus proyectos.