Inhalt
summary Zusammenfassung

Microsoft zeigt mit WaveCoder und CodeOcean, wie generative KI für bessere Trainingsdaten eingesetzt werden kann.

Anzeige

Microsoft-Forscher haben WaveCoder vorgestellt, ein neues Modell für Programmiersprachen, das mit weniger Trainingsbeispielen besser sein soll als Modelle ähnlicher Größe. Außerdem hat das Team CodeOcean entwickelt, einen kuratierten Datensatz mit 20.000 verschiedenen Codebeispielen, um die Feinabstimmung von Foundation-Modellen für Programmieranwendungen zu verbessern.

Eine der größten Herausforderungen bei der Erstellung kleinerer, effizienterer Modelle für Programmiersprachen besteht den Forschern zufolge darin, die Größe des Trainingsdatensatzes mit der Leistung des Modells in Einklang zu bringen. Der CodeOcean-Datensatz soll diese Herausforderung meistern, indem er maximale Vielfalt in einer begrenzten Anzahl von Beispielen bietet. Als Basis für CodeOcean dient CodeSearchNet, ein riesiger Code-Datensatz mit 2 Millionen Paaren von Kommentaren und Code, den das Team durch Embeddings und ein BERT-basiertes Modell auf eine kleinere, aber dennoch vielfältige Teilmenge reduziert hat.

CodeOcean nutzt Generator-Diskriminator-Framework für qualitativ hochwertige Trainingsdaten

Um Trainingsbeispiele zu erstellen, die Code und Instruktionen enthalten, verwendeten die Forscher dann ein Generator-Diskriminator-Framework, um Instruktionen auf der Grundlage der rohen Codebeispiele zu erstellen. Zuerst wurde GPT-4 verwendet, um Aufgaben innerhalb spezifischer Szenario-Kontexte zu definieren. Diese Aufgaben wurden dann mit einer Instruktion kombiniert und an GPT-3.5 übergeben, um ähnliche Instruktionen für weitere Beispiele zu generieren. Auf diese Weise generiert das Team automatisch eine große Menge an Trainingsdaten, die Instruktionen und Code enthalten, etwa Codeaufgaben mit natürlichsprachlichen Beschreibungen und Lösungen.

Anzeige
Anzeige
Das generiert hochwertige Trainingsdaten in einem iterativen Prozess. | Bild: Microsoft

Die Daten werden dann an GPT-4 zurückgeschickt, wo sie nach festgelegten Kriterien bewertet werden. Gute Beispiele werden in eine Beispieldatenbank übertragen, die als Vorlage für die Generierung weiterer Trainingsdaten dient. Durch diesen iterativen Prozess generierte das Team 20.000 qualitativ hochwertige Beispiele, die vier verschiedene Kategorien von Codeaufgaben abdecken: Codegenerierung, Codezusammenfassung, Übersetzung in eine andere Programmiersprache und Codereparatur.

WaveCoder zeigt, wie wichtig gute Daten sind

Das Team trainierte WaveCoder mit diesem Datensatz und verglich es mit WizardCoder, einem Modell, das mit etwa der vierfachen Menge an Daten trainiert wurde. Das Team stellte fest, dass der Leistungsunterschied gering war, was darauf hindeutet, dass verfeinerte und diversifizierte Befehlsdaten die Effizienz des Befehls-Tunings erheblich verbessern können. WaveCoder übertraf auch andere Open-Source-Modelle bei Aufgaben zur Code-Zusammenfassung und -Reparatur in fast allen Programmiersprachen.

Die Forscher nutzten CodeOcean auch, um drei Modelle für Programmiersprachen zu verfeinern: StarCoder-15B, CodeLLaMA (7B und 13B) und DeepseekCoder-6.7B. In drei wichtigen Programmier-Benchmarks - HumanEval, MBPP und HumanEvalPack - zeigten alle Modelle signifikante Verbesserungen von bis zu 20 Prozent.

CodeOcean und WaveCoder sind noch nicht verfügbar, sollen laut einem beteiligten Forscher aber noch veröffentlicht werden.

Anzeige
Anzeige
Community beitreten
Kommt in die DECODER-Community bei Discord,Reddit, Twitter und Co. - wir freuen uns auf euch!
Unterstütze unsere unabhängige, frei zugängliche Berichterstattung. Jeder Betrag hilft und sichert unsere Zukunft. Jetzt unterstützen:
Banküberweisung
Zusammenfassung
  • Microsoft-Forscher präsentieren WaveCoder, ein KI-Modell für Programmiersprachen, das mit weniger Trainingsbeispielen effizienter ist als vergleichbare Modelle.
  • WaveCoder wurde mit CodeOcean trainiert, einem kuratierten Datensatz mit 20.000 qualitativ hochwertigen Codebeispielen, die über das Generator-Diskriminator-Framework generiert wurden.
  • WaveCoder zeigt nur geringe Leistungsunterschiede im Vergleich zu Modellen, die mit der vierfachen Datenmenge trainiert wurden.
Quellen
Max ist leitender Redakteur bei THE DECODER. Als studierter Philosoph beschäftigt er sich mit dem Bewusstsein, KI und der Frage, ob Maschinen wirklich denken können oder nur so tun als ob.
Community beitreten
Kommt in die DECODER-Community bei Discord,Reddit, Twitter und Co. - wir freuen uns auf euch!