Un outil automatisé détecte les erreurs silencieuses pendant l'entraînement des modèles d'IA
Un nouveau cadre open source, baptisé TrainCheck, développé à l'Université du Michigan, permet de détecter les erreurs silencieuses pendant l'entraînement des modèles d'intelligence artificielle. Ces erreurs, difficiles à repérer, ne provoquent pas de pannes visibles mais altèrent progressivement les performances du modèle, entraînant des pertes de temps et de ressources. Dans des tests, TrainCheck a identifié 18 erreurs sur 20, contre seulement 2 pour les méthodes existantes, et a révélé six bugs inconnus dans des bibliothèques de formation populaires. Le cadre a été présenté lors du symposium USENIX OSDI à Boston. Les modèles d'intelligence artificielle, comme les grands modèles linguistiques (LLM) ou les modèles de vision par ordinateur, nécessitent des ressources considérables pour leur entraînement. Les erreurs silencieuses, qui ne modifient pas les indicateurs classiques tels que la perte, l'exactitude ou les normes des gradients, peuvent passer inaperçues. Par exemple, pendant l'entraînement du BLOOM-176B de HuggingFace, un bug a fait diverger les copies du modèle sur différents GPU, rendant les modèles finaux inutilisables. TrainCheck utilise des invariants d'entraînement, c'est-à-dire des règles constantes pendant le processus, pour surveiller en continu les performances du modèle. Lorsqu'un écart est détecté, le système alerte immédiatement les développeurs et fournit des informations détaillées pour diagnostiquer le problème. Contrairement aux méthodes actuelles, qui ne peuvent souvent pas identifier la cause exacte, TrainCheck localise précisément les erreurs dans 10 cas sur 18, et s'en rapproche dans les 8 autres. Le cadre a été testé sur 20 erreurs silencieuses, dont 6 provenaient de recherches antérieures et 14 de forums de développeurs (GitHub, StackOverflow). Les résultats montrent une efficacité nettement supérieure aux outils existants. Bien que TrainCheck puisse parfois générer des fausses alertes, celles-ci suivent des motifs identifiables, ce qui facilite leur rejet. En intégrant TrainCheck dans les frameworks d'apprentissage automatique, les développeurs disposent d'un outil proactif pour prévenir les erreurs, améliorer la précision et la résilience des modèles. Les chercheurs envisagent d'adapter le cadre à d'autres domaines, comme les systèmes distribués, où les erreurs silencieuses sont fréquentes. Cette approche repose sur une logique rigoureuse, et selon Ryan Huang, professeur à l'Université du Michigan, elle marque une avancée majeure dans la détection d'erreurs en apprentissage automatique, établissant un nouveau standard pour la validation continue.