HyperAIHyperAI

Command Palette

Search for a command to run...

GraphCodeBERT: Vortrainierung von Code-Repräsentationen mit Datenfluss

Zusammenfassung

Vortrainierte Modelle für Programmiersprachen haben erhebliche empirische Fortschritte bei einer Vielzahl von codebezogenen Aufgaben erzielt, wie beispielsweise Code-Suche, Code-Vervollständigung und Code-Zusammenfassung. Allerdings betrachten bestehende vortrainierte Modelle einen Code-Ausschnitt als eine Folge von Token, wobei die inhärente Struktur des Codes ignoriert wird, die entscheidende semantische Informationen liefert und das Verständnis von Code erheblich verbessern könnte. Wir stellen GraphCodeBERT vor, ein vortrainiertes Modell für Programmiersprachen, das die inhärente Struktur des Codes berücksichtigt. Im Gegensatz zu Ansätzen, die auf syntaktischer Ebene wie dem abstrakten Syntaxbaum (AST) basieren, nutzen wir im Vortrainingsstadium die Datenflussstruktur, eine semantische Struktur, die die Beziehung „Wo kommt der Wert her?“ zwischen Variablen kodiert. Diese semantische Struktur ist klar strukturiert und vermeidet die unnötig tiefe Hierarchie, die typisch für ASTs ist, wodurch das Modell effizienter wird. GraphCodeBERT basiert auf der Transformer-Architektur. Neben der herkömmlichen Aufgabe der maskierten Sprachmodellierung führen wir zwei strukturbewusste Vortrainierungsaufgaben ein: die Vorhersage von Strukturkanten im Code und die Ausrichtung der Repräsentationen zwischen Quellcode und Code-Struktur. Wir implementieren das Modell effizient mittels einer graphenorientierten maskierten Aufmerksamkeit, die die Code-Struktur integriert. Wir evaluieren das Modell auf vier Aufgaben: Code-Suche, Klon-Erkennung, Code-Übersetzung und Code-Verbesserung. Die Ergebnisse zeigen, dass die Berücksichtigung der Code-Struktur sowie die neuen Vortrainierungsaufgaben die Leistung von GraphCodeBERT signifikant verbessern und führende Ergebnisse auf allen vier Downstream-Aufgaben erzielen. Zudem zeigen wir, dass das Modell im Rahmen der Code-Suche eine Präferenz für strukturbasierte Aufmerksamkeit gegenüber tokenbasierten Aufmerksamkeiten aufweist.


KI mit KI entwickeln

Von der Idee bis zum Launch – beschleunigen Sie Ihre KI-Entwicklung mit kostenlosem KI-Co-Coding, sofort einsatzbereiter Umgebung und bestem GPU-Preis.

KI-gestütztes kollaboratives Programmieren
Sofort einsatzbereite GPUs
Die besten Preise

HyperAI Newsletters

Abonnieren Sie unsere neuesten Updates
Wir werden die neuesten Updates der Woche in Ihren Posteingang liefern um neun Uhr jeden Montagmorgen
Unterstützt von MailChimp