HyperAIHyperAI
il y a 2 mois

SampleFix : Apprentissage pour générer des corrections fonctionnellement diverses

Hossein Hajipour; Apratim Bhattacharyya; Cristian-Alexandru Staicu; Mario Fritz
SampleFix : Apprentissage pour générer des corrections fonctionnellement diverses
Résumé

La réparation automatique des programmes offre le potentiel d'améliorer considérablement la productivité des programmeurs au cours du processus de développement logiciel et la correction générale des logiciels. Les progrès récents en apprentissage automatique, apprentissage profond et traitement du langage naturel (NLP) ont ravivé l'espoir de pouvoir un jour automatiser complètement le processus de réparation des programmes. Cependant, les approches précédentes visant à prédire une seule correction sont sujettes à l'échec en raison de l'incertitude quant à l'intention véritable du programmeur. Nous proposons donc un modèle génératif qui apprend une distribution sur les corrections potentielles. Notre modèle est formulé comme un autoencodeur variationnel conditionnel profond capable d'échantillonner efficacement des corrections pour un programme erroné donné. Pour garantir des solutions diverses, nous proposons un nouveau régulariseur qui encourage la diversité dans un espace d'embedding sémantique. Nos évaluations sur des erreurs de programmation courantes montrent pour la première fois la génération de corrections diverses et une amélioration significative par rapport aux approches de pointe actuelles, en corrigeant jusqu'à 45 % des programmes erronés. Nous montrons également que pour 65 % des programmes corrigés, notre approche a été capable de générer plusieurs programmes avec des fonctionnalités diverses.

SampleFix : Apprentissage pour générer des corrections fonctionnellement diverses | Articles de recherche récents | HyperAI