HyperAIHyperAI
il y a 2 mois

Correction des Bugs avec un Transformer à travers une Grammaire d'Édition Neuromentale-Symbolique

Hu, Yaojie ; Shi, Xingjian ; Zhou, Qiang ; Pike, Lee
Correction des Bugs avec un Transformer à travers une Grammaire d'Édition Neuromentale-Symbolique
Résumé

Nous présentons NSEdit (neural-symbolic edit), une nouvelle méthode de réparation de code basée sur le Transformer. À partir du seul code source contenant des bogues, NSEdit prédit une séquence d'édition capable de corriger ces erreurs. La grammaire d'édition est formulée comme un langage régulier, et le Transformer l'utilise en tant qu'interface de script neuronal-symbolique pour générer des programmes d'édition. Nous modifions le Transformer en y ajoutant un réseau pointeur pour sélectionner les emplacements d'édition. Un ensemble de réévaluateurs est formé pour réordonner les séquences d'édition générées par la recherche en faisceau. Nous affinons l'entraînement des réévaluateurs sur l'ensemble de validation afin de réduire le surapprentissage. NSEdit est évalué sur diverses bases de données de réparation de code et a atteint une précision record ($24,04\%$) sur le petit ensemble de données Tufano du benchmark CodeXGLUE. NSEdit montre une robustesse notable lorsque les programmes varient d'un package à l'autre et lorsque les programmes contenant des bogues sont concrets. Nous menons une analyse détaillée de nos méthodes et démontrons l'efficacité de chaque composant.

Correction des Bugs avec un Transformer à travers une Grammaire d'Édition Neuromentale-Symbolique | Articles de recherche récents | HyperAI