<  Retour au portail Polytechnique Montréal

Representation Learning for Enhanced Software Analytics

Xingfang Wu

Thèse de doctorat (2024)

[img] Accès restreint: Personnel autorisé jusqu'au 24 février 2026
Conditions d'utilisation: Tous droits réservés
Demander document
Afficher le résumé
Cacher le résumé

Résumé

L’avancement de l’Intelligence Artificielle (IA) a propulsé diverses applications dans le Génie Logiciel (GE), formant le domaine de l’IA pour le Génie Logiciel. Cependant, l’utilisation directe de l’IA, en particulier des techniques de représentation des données, pour les tâches liées au GE peut ne pas atteindre des performances optimales en raison des différences entre les conceptions générales des techniques d’IA et les besoins spécifiques au domaine. L’intégration de connaissances spécifiques au domaine et de nuances spécifiques aux tâches dans le processus d’apprentissage de la représentation des données pourrait améliorer les solutions alimentées par l’IA pour les tâches liées au GE. L’apprentissage de représentation est un processus en apprentissage automatique où les algorithmes extraient des motifs significatifs à partir de données brutes pour créer des représentations simplifiées et compréhensibles à utiliser dans des tâches en aval. Cette thèse se concentre sur l’apprentissage de la représentation des artefacts logiciels pour différentes tâches aval dans deux sous-domaines de l’analyse logicielle: la détection d’anomalies basée sur les journaux et l’exploration de données de forums techniques. Ces sous-domaines impliquent deux types courants et informatifs d’artefacts logiciels : les données de journal, générées par les déclarations de journalisation des systèmes logiciels pour enregistrer l’état d’exécution, et les messages de forums techniques, rédigés par des praticiens en logiciels cherchant des solutions à divers problèmes liés aux logiciels. L’analyse des journaux est cruciale pour l’identification des problèmes et l’amélioration de la fiabilité du système. La détection des anomalies basée sur les journaux, qui vise à découvrir les comportements anormaux du système à partir des données de journal, est indispensable à l’analyse des journaux. Elle implique la transformation des données textuelles des journaux en vecteurs numériques grâce à une représentation des journaux. Dans cette thèse, nous évaluons de manière exhaustive les techniques de représentation des journaux existantes, en identifiant les facteurs clés influençant leur efficacité. De plus, nous introduisons un modèle de détection d’anomalies basé sur des transformateurs configurable afin d’étudier davantage la contribution des différents types d’informations au sein des ensembles données de journaux publics courants. Les résultats de l’étude offrent des perspectives pour la conception de flux de travail d’analyse des journaux et approfondissent la compréhension des tâches de détection d’anomalies basées sur les journaux. Les forums techniques en ligne, tels que Stack Overflow, constituent une ressource importante pour l’analyse logicielle et les activités de support à travers différentes phases du cycle de vie du logiciel. Dans la thèse, nous nous concentrons sur deux tâches clés concernant les données des publications sur les forums techniques. La première tâche est la détection automatisée des intentions, qui consiste à classer les discussions des développeurs en différentes catégories en fonction des intentions des auteurs. La deuxième tâche est la détection des doublons, qui vise à identifier et à relier des questions techniques similaires ou identiques exprimées avec des formulations différentes. Pour aborder ces deux tâches aval, nous utilisons des Modèles de langage pré-entraîné pour encoder les données textuelles et générer des représentations des publications techniques. De plus, nous utilisons des stratégies d’apprentissage telles que l’ajustement fin et le transfert d’apprentissage pour adapter les représentations pré-entraînées aux exigences spécifiques des tâches en aval, ce qui améliore leur performance. Les conclusions de cette thèse valident notre hypothèse : en intégrant les connaissances sur les spécificités des données et les tâches en aval, nous pouvons combler le fossé entre les techniques générales de traitement automatique du langage naturel et les exigences des tâches en ingénierie logicielle. Nous nous attendons à ce que les résultats et les conclusions de notre recherche offrent des conseils et une assistance à la fois aux chercheurs et aux praticiens alors qu’ils abordent les tâches aval dans l’analyse logicielle, en particulier celles impliquant des données spécifiques au domaine. Cela leur permettra de prendre des décisions plus éclairées lors de la sélection et de l’application des techniques de représentation d’apprentissage automatique existantes.

Abstract

The advancement of Artificial Intelligence (AI) has driven diverse applications in Software Engineering (SE), shaping the domain known as Artificial Intelligence for Software Engineering (AI4SE). However, direct use of AI, especially data representation techniques, for SE-related tasks may not achieve optimal performance due to discrepancies between general designs of AI techniques and domain-specific needs. Integrating domain-specific knowledge and task-specific nuances into the data representation learning process could enhance AIempowered solutions for SE tasks. Representation Learning is a process in machine learning where algorithms extract significant patterns from raw data to create simplified and comprehensible representations for use in downstream tasks. This thesis focuses on representation learning for software artifacts across different downstream tasks in two sub-domains of software analytics: log-based anomaly detection and technical forum data mining. These sub-domains involve two common and informative types of software artifacts: log data, generated by logging statements of software systems to record runtime status, and technical forum posts, written by software practitioners seeking solutions to various software-related issues. Log analysis is critical for issue identification and system reliability enhancement. Log-based anomaly detection, aimed at uncovering abnormal system behaviors from log data, is integral to log analysis. It involves transforming textual log data into numerical vectors through log representation. In this thesis, we comprehensively evaluate existing log representation techniques, identifying key factors influencing their effectiveness. Additionally, we introduce a configurable transformer-based anomaly detection model for further investigation into the contribution of different types of information within common public log datasets. The study’s outcomes offer insights for designing log analysis workflows and deepen the understanding of log-based anomaly detection tasks. The online technical forums, such as Stack Overflow, are an important resource for software analytics and supporting activities across various phases of the software lifecycle. In the thesis, we focus on two key tasks concerning technical forum post data. The first task is automated intention detection, which involves classifying developer discussions into various categories based on the authors’ intentions. The second task is duplicate detection, which aims to identify and connect similar or identical technical questions expressed using different wording. In addressing these two downstream tasks, we utilize Pre-Trained Models (PTMs) to encode textual data and generate representations for technical posts. Additionally, we employ learning strategies such as fine-tuning and transfer-learning to adapt the pre-trained representations to the specific requirements of the downstream tasks, thereby enhancing their performance. The findings of this thesis validate our hypothesis: by integrating insights into data specialties and downstream tasks, we can bridge the gap between general NLP techniques and the demands of software engineering tasks. We expect that the results and conclusions of our research will offer guidance and assistance to both researchers and practitioners as they address downstream tasks in software analytics, particularly those involving domain-specific data. This will empower them to make more informed decisions when selecting and applying existing machine-learning representation techniques.

Département: Département de génie informatique et génie logiciel
Programme: Génie informatique
Directeurs ou directrices: Heng Li et Foutse Khomh
URL de PolyPublie: https://publications.polymtl.ca/58602/
Université/École: Polytechnique Montréal
Date du dépôt: 24 févr. 2025 14:15
Dernière modification: 08 avr. 2025 17:35
Citer en APA 7: Wu, X. (2024). Representation Learning for Enhanced Software Analytics [Thèse de doctorat, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/58602/

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Loading...

Provenance des téléchargements

Loading...

Actions réservées au personnel

Afficher document Afficher document