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.
Escuche esta guíaNarrado por IA · ~2 min
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.
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.
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.
Boletín gratuito
Tres noticias verificadas sobre IA cada mañana de lunes a viernes, explicadas con claridad. Gratis para siempre y sin anuncios.
Un correo cada día laborable. Date de baja con un clic. Nunca vendemos ni compartimos tu dirección.
Ponte a prueba
Corrección inmediata en cada respuesta y un certificado para compartir, con un ID verificable, cuando apruebas un curso.
Apoya la educación gratuita sobre IA. AI Understanding es una organización sin fines de lucro 501(c)(3): sin anuncios ni muros de pago, nunca. Hacer una donación
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