Escalando el entrenamiento de LLM: de un solo chip a un centro de datos. Capítulo 4. Entrenamiento de un Transformer
El capítulo repasa cuatro tipos de paralelismo para entrenar transformers en múltiples aceleradores: paralelismo de datos, paralelismo de datos totalmente fragmentado (FSDP), paralelismo tensorial y paralelismo de pipeline. Analiza sus ventajas, desventajas y cuándo combinarlos, destacando la importancia de lograr un rendimiento limitado por el cómputo para garantizar la escalabilidad.
El artículo explica cómo entrenar un transformer de manera eficiente y a gran escala. Introduce notación para las dimensiones del modelo (D, F, B, T, L) y el hardware (C, W, X, Y, Z). Se describen los cuatro tipos de paralelismo: el paralelismo de datos divide el lote entre los aceleradores, requiriendo AllReduce para la agregación de gradientes, y es efectivo cuando el modelo cabe en un solo acelerador. FSDP (ZeRO) fragmenta los pesos del modelo, los gradientes y los estados del optimizador, utilizando AllGather y ReduceScatter, y está limitado por cómputo con tamaños de lote pequeños. El paralelismo tensorial fragmenta las matrices de pesos, intercambiando activaciones, y se combina mejor con FSDP para reducir el tamaño de las activaciones en relación con los pesos. El paralelismo por pipeline divide el modelo entre capas, minimizando la transferencia de datos pero introduciendo 'burbujas de pipeline', que pueden mitigarse mediante microbatches o superponiendo cálculos. El artículo señala que la combinación FSDP+TP casi siempre está limitada por cómputo, y el pipeline es común en clústeres de GPU. Concluye que el objetivo es escalar mientras se gestiona la sobrecarga.
Fuente: Habr — хаб ИИ —
original
