Week 6: Optimization Strategies and Efficient Training
1. Choix de l’Optimiseur
Adam avec Warm-Up & Decay :
o Adam est utilisé avec un apprentissage variable au fil du temps.
o
\alpha_t = \alpha \times \min(1, t / t_{\text{warmup}}) ]
Scheduler du Learning Rate :
o Phase de warm-up : petit learning rate au début pour éviter les instabilités.
o Décroissance exponentielle ou linéaire après plusieurs étapes.
2. Entraînement Distribué et Scalabilité
Parallélisme de données :
o Distribution des batchs sur plusieurs GPUs/TPUs.
o Utilisation de DeepSpeed ou FSDP pour optimiser l’utilisation mémoire.
Parallélisme de modèles :
o Scinder le modèle en plusieurs parties sur différents GPUs.
o Technique utilisée pour GPT-4, LLaMA sur des clusters massifs.
3. Réduction des Coûts de l’Entraînement
Quantization : réduction de la précision des poids (FP32 → INT8).
Pruning : suppression des neurones inutiles après l’entraînement.
Efficient Transformers : variantes comme Linformer, Performer, Reformer.
Conclusion du Module 3
À la fin de ce module, les étudiants sauront :
✅ Préparer et encoder des données pour un transformer.
✅ Choisir la bonne fonction de perte selon la tâche.
✅ Utiliser les meilleures stratégies d’optimisation et de parallélisation.
Souhaitez-vous ajouter des cas pratiques d’entraînement sur GPU/TPU ? 🚀