A continuaciónSiguiente guía
Paralelismo de datos
Técnico
GUÍA Técnica
Fully Sharded Data Parallel (FSDP) es una técnica de entrenamiento distribuido que divide los parámetros, gradientes y estados del optimizador de un modelo en muchas GPU para que cada dispositivo solo contenga una porción.
Hace posible entrenar modelos enormes en hardware que nunca podría caber el modelo completo en la memoria de una GPU.
El paralelismo de datos tradicional mantiene una copia completa del modelo en cada GPU, lo que desperdicia memoria y limita el tamaño del modelo. FSDP, popularizado por PyTorch de Meta e inspirado en ZeRO de Microsoft, fragmenta tres cosas entre dispositivos: parámetros, gradientes y estados del optimizador. Durante el avance, cada GPU reúne temporalmente los pesos completos de la capa que está calculando mediante una recopilación total, ejecuta el cálculo y luego libera inmediatamente la copia recopilada. El paso hacia atrás funciona de manera similar, seguido de una reducción-dispersión que distribuye cortes de gradiente a sus propias GPU. Debido a que cada dispositivo solo almacena permanentemente una fracción del modelo, el uso de memoria disminuye aproximadamente de manera lineal con la cantidad de GPU, lo que permite a los equipos entrenar modelos con decenas o cientos de miles de millones de parámetros.
Las decisiones de arquitectura impulsan el rendimiento y los costos operativos durante años.
La educación técnica ayuda a los equipos a elegir la pila adecuada, no sólo la más nueva.
Mejores opciones de ingeniería reducen los incidentes de confiabilidad en la producción.
FSDP se está convirtiendo en el valor predeterminado para el entrenamiento abierto de modelos grandes, y FSDP2 en PyTorch mejora la usabilidad y la fragmentación por parámetro. Espere una integración más estrecha con el paralelismo de tensores y canalizaciones para modelos de billones de parámetros, un mejor soporte para precisión mixta y fp8, y un ajuste automático más inteligente que selecciona los límites de fragmentación por usted. A medida que las interconexiones entre GPU como NVLink e InfiniBand se vuelven más rápidas, el costo de comunicación de la fragmentación sigue reduciéndose, lo que la hace práctica a escalas cada vez mayores.
Ajuste de un modelo Llama de 70 mil millones de parámetros en 8 GPU que individualmente no pueden soportar todos los pesos.
Entrenamiento previo de grandes modelos de lenguaje en laboratorios de inteligencia artificial fragmentando los estados del optimizador (que dominan la memoria con Adam) en cientos de aceleradores.
Investigadores que utilizan el contenedor FSDP de PyTorch para entrenar transformadores de visión en un grupo universitario sin comprar GPU emblemáticas de 80 GB.
Combinando FSDP con bfloat16 de precisión mixta para reducir aproximadamente a la mitad la memoria y acelerar el rendimiento del entrenamiento en modelos multimodales.
La optimización de un punto de referencia puede ocultar debilidades más amplias del sistema.
Los costos de infraestructura y mantenimiento a menudo se subestiman.
Las brechas de seguridad y observabilidad pueden crecer a medida que los sistemas se vuelven más complejos.
Defina objetivos de latencia, calidad y costos antes de la implementación.
Comparación en condiciones realistas de carga y datos.
Monitoreo de instrumentos para detectar errores, deriva e impacto para el usuario.
Prepare rutas de reversión y respuesta a incidentes antes de escalar.
Free newsletter
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Fully Sharded Data Parallel (FSDP) es una técnica de entrenamiento distribuido que divide los parámetros, gradientes y estados del optimizador de un modelo en muchas GPU para que cada dispositivo solo contenga una porción. Hace posible entrenar modelos enormes en hardware que nunca podría caber el modelo completo en la memoria de una GPU.
FSDP fragmenta los parámetros, gradientes y estados del optimizador del modelo en todos los dispositivos, mientras que el paralelismo de datos estándar replica el modelo completo en cada GPU.
Antes de que se ejecute una capa, FSDP realiza una recopilación completa para ensamblar temporalmente los parámetros completos de todos los fragmentos y luego los libera.
Mantener solo un fragmento de forma permanente y reunir todos los pesos de forma transitoria es lo que mantiene el uso de memoria bajo y aproximadamente proporcional a una fracción del modelo.
La fragmentación de parámetros, gradientes y estados del optimizador de FSDP sigue de cerca las ideas introducidas en ZeRO de Microsoft de la biblioteca DeepSpeed.
FSDP capta previamente los parámetros de la siguiente capa mientras la capa actual todavía está computando, superponiendo la comunicación general con trabajo útil.
sigue aprendiendo
Más guías seleccionadas para este tema.
A continuaciónSiguiente guía
Paralelismo de datos
Técnico