Thèse de doctorat (2024)
Résumé
L’apprentissage automatique (Machine Learning, ML) est rapidement devenu une technologie fondamentale, propulsant un large éventail d’applications, des utilitaires quotidiens des smartphones aux systèmes à grande échelle critiques pour la sécurité. À mesure que le ML s’étend dans divers domaines, la demande pour des systèmes fiables basés sur le ML devient plus pressante. Cependant, la nature distincte des systèmes ML, qui diffèrent fondamentalement des systèmes logiciels traditionnels, introduit des défis uniques dans l’évaluation de la fiabilité des systèmes ML. Cette thèse aborde ces défis en se concentrant sur quatre aspects critiques des systèmes basés sur le ML : comprendre la nature des bogues spécifiques au ML, ce qui est essentiel pour développer des techniques d’évaluation de la fiabilité ; identifier les défis de développement dans des domaines spécialisés du ML qui affectent la fiabilité des logiciels basés sur le ML ; mettre en oeuvre une référence standard de bogues, une exigence clé pour le processus d’évaluation de la fiabilité ; et faire progresser les techniques de localisation des fautes. La première étape essentielle dans la conception de techniques d’évaluation efficaces de la fiabilité des systèmes basés sur le ML est de comprendre la nature des bogues ML. À cette fin, nous avons mené une enquête détaillée sur 386 problèmes rapportés dans les 300 meilleurs dépôts GitHub utilisant des frameworks ML populaires tels que Keras, TensorFlow et Py- Torch. Notre étude révèle que près de la moitié de ces problèmes concernent spécifiquement les composants ML, les bogues ML présentant des caractéristiques distinctes, telles qu’une complexité accrue et des coûts de correction plus élevés, par rapport aux bogues non-ML. Sur la base de cette analyse fondamentale, nous avons ensuite exploré les défis spécifiques à l’assurance qualité des systèmes basés sur le ML, en nous concentrant particulièrement sur l’apprentissage par renforcement (RL). Le RL, un sous-domaine du ML, a fait l’objet d’un examen limité dans la littérature malgré son adoption croissante dans l’industrie. Pour explorer ces défis, nous avons analysé 927 posts liés au DRL sur Stack Overflow (SO) et développé une taxonomie des défis courants dans le développement d’applications DRL. Cette taxonomie, validée par une enquête auprès de 65 développeurs DRL, met en évidence que la compréhension, l’utilisation des API et les problèmes de conception sont les défis les plus courants, tandis que le traitement parallèle et les bibliothèques/cadres DRL sont identifiés comme les plus complexes. Ces résultats soulignent la nécessité critique d’outils et de ressources pour relever ces défis et améliorer la qualité des systèmes basés sur le DRL. Soutenir le développement de tels outils nécessite une référence standard de bogues pour évaluer les performances de ces techniques et permettre des comparaisons standardisées. Ainsi, la troisième partie de cette thèse examine la reproductibilité et la vérifiabilité des bogues dans les systèmes basés sur le ML, conduisant au développement d’un référentiel appelé Defect4ML. Defect4ML comprend 100 bogues ML reproductibles issus des dépôts GitHub d’applications basées sur le ML et des posts SO liés au ML, en utilisant les deux frameworks ML les plus courants, Keras et TensorFlow. Ce référentiel répond aux critères standards tels que la pertinence, la reproductibilité, l’équité, la vérifiabilité et l’utilisabilité. En s’appuyant sur ce référentiel, nous avons développé une nouvelle approche de localisation des fautes à l’échelle du système basée sur les graphes de connaissances (KG) pour traiter les fautes tout au long du pipeline de développement DL, y compris le prétraitement des données, l’entraînement des modèles et le déploiement du système. Notre approche, validée par rapport aux méthodes existantes telles que DeepLocalize et autoTrainer, démontre une performance supérieure en fournissant une liste classée des fautes et de leurs causes probables, offrant une solution complète pour assurer la fiabilité des systèmes basés sur le ML. En résumé, cette thèse apporte des contributions significatives au domaine des systèmes basés sur le ML en (1) caractérisant la nature unique des bogues dans les composants ML, (2) identifiant et catégorisant les défis de développement dans le DRL, (3) créant le référentiel Defect4ML pour les bogues des systèmes basés sur le ML, et (4) en proposant une technique innovante de localisation des fautes qui couvre l’ensemble du pipeline de développement DL. Ensemble, ces contributions font progresser la compréhension et la fiabilité des systèmes basés sur le ML, ouvrant la voie à des applications plus robustes et fiables à l’avenir
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements
