Introduction
L'apprentissage en ligne (RL) nécessite une synchronisation des poids entre le moteur d'inférence et le formateur. Cependant, envoyer l'ensemble du modèle à chaque étape peut être coûteux en termes de bande passante. Une solution consiste à n'envoyer que les éléments qui ont changé.
Contexte Technique
Les poids en format bf16 ont 7 bits de mantisse, ce qui signifie que seuls les changements supérieurs à un certain seuil sont visibles. Les mises à jour effectuées par l'optimiseur Adam sont généralement inférieures à ce seuil, ce qui signifie que la plupart des poids ne changent pas entre deux étapes consécutives. Cette propriété peut être exploitée pour réduire la charge de travail de synchronisation.
Les travaux de Fireworks et de Cursor ont montré que la majorité des poids ne changent pas entre deux étapes consécutives et que la synchronisation des seuls éléments qui ont changé peut réduire la charge de travail de plusieurs ordres de grandeur.
Analyse et Implications
La mise en œuvre de cette approche peut être réalisée en utilisant un stockage d'objets partagé, tel que les buckets de Hugging Face. Le formateur peut envoyer les éléments qui ont changé à ce stockage, et le moteur d'inférence peut les récupérer à son propre rythme. Cela élimine la nécessité d'une connexion directe entre le formateur et le moteur d'inférence.
Cette approche peut réduire considérablement la charge de travail de synchronisation et permettre une formation plus efficace et plus rentable. Les implications de cette approche sont importantes, car elles peuvent permettre une formation plus rapide et plus efficace de modèles de grande échelle.
Perspective
La mise en œuvre de cette approche nécessite une compréhension approfondie des mécanismes de synchronisation des poids et des propriétés des formats de poids. Il est important de surveiller les limites de cette approche et de rechercher des méthodes pour améliorer encore la charge de travail de synchronisation.
Les prochaines étapes consisteront à mettre en œuvre et à tester cette approche sur des modèles de grande échelle et à évaluer ses performances. Il sera également important de rechercher des méthodes pour améliorer la sécurité et la confidentialité de la synchronisation des poids.