Heim  >  Artikel  >  Technologie-Peripheriegeräte  >  Sind große Sprachmodelle für die Codierung falsch?

Sind große Sprachmodelle für die Codierung falsch?

WBOY
WBOYnach vorne
2023-06-05 12:34:281199Durchsuche

Reinforcement-Learning-Modelle schlagen generative KI, wenn das Ziel Genauigkeit, Konsistenz, Spielbeherrschung oder das Finden einer richtigen Antwort ist.

Großformatige Sprachmodelle wie GPT-4 sind bemerkenswert, weil sie qualitativ hochwertige, glatte und natürliche Texte erzeugen können, die äußerst überzeugend sind. Traurigerweise gilt das auch für den Hype: Microsoft-Forscher beschreiben das von Microsoft finanzierte OpenAI-GPT-4-Modell atemlos als „einen Funken künstlicher allgemeiner Intelligenz“.

Solange Microsoft nicht von einer Neigung zu Halluzinationen spricht, muss der generierte Fehlertext natürlich falsch sein. GPT ist nicht gut darin, Spiele wie Schach und Go zu spielen, es ist nicht gut in Mathematik und der Code, den es schreibt, kann Fehler und subtile Lücken aufweisen.

Das bedeutet nicht, dass große Sprachmodelle nur ein Hype sind. Wir brauchen neue Blickwinkel, um generative künstliche Intelligenz (GenAI) zu diskutieren, ohne ihre Unterschiede zu anderen Technologien zu übertreiben.

Wie in einem IEEESpectrum-Artikel ausführlich beschrieben, glauben einige Experten, wie zum Beispiel Ilya Sutskever von OpenAI, dass das Hinzufügen von verstärkendem Lernen mit menschlichem Feedback die LLM-Illusion beseitigen kann. Aber andere, wie Yann LeCun von Meta und Geoff Hinton (kürzlich im Ruhestand bei Google), glauben, dass grundlegendere Mängel in großen Sprachmodellen am Werk sind. Beide glauben, dass großen Sprachmodellen das nichtsprachliche Wissen fehlt, das für das Verständnis der zugrunde liegenden Realität, die die Sprache beschreibt, entscheidend ist.

Mathew Lodge, CEO von Diffblue, wies in einem Interview darauf hin, dass es eine bessere Lösung gibt. Er sagte: „Kleine, schnelle und kostengünstige Reinforcement-Learning-Modelle können große Sprachmodelle mit Hunderten von Milliarden Parametern bei einer Vielzahl von Aufgaben, vom Spielen bis zum Schreiben von Code, leicht besiegen.“ nach KI-Gold suchen?

Was Lodge sagt, ist, dass generative KI definitiv ihren Nutzen hat, aber vielleicht versuchen wir, sie zum verstärkenden Lernen zu zwingen, was nicht gut passt. Nehmen wir zum Beispiel Spiele.

Levy Rozman, ein Schachgroßmeister, hat ein Video gepostet, in dem er gegen ChatGPT (chatbasierte künstliche Intelligenz) spielt. Das Modell machte eine Reihe lächerlicher und illegaler Bewegungen, darunter das Erobern seiner eigenen Figuren. Mit der besten Open-Source-Schachsoftware (Stockfish, die überhaupt keine neuronalen Netze verwendet) kann ChatGPT sie in weniger als 10 Zügen schlagen, da das große Sprachmodell keine legalen Züge finden kann. Dies beweist, dass große Sprachmodelle weit hinter den Ansprüchen allgemeiner künstlicher Intelligenz zurückbleiben, und dies ist kein Einzelfall.

Aufgrund seines Reinforcement-Learning-Algorithmus ist Google AlphaGo derzeit die leistungsstärkste künstliche Intelligenz von Go. Reinforcement Learning funktioniert, indem man verschiedene Lösungen für ein Problem generiert, sie ausprobiert, die Ergebnisse nutzt, um den nächsten Vorschlag zu verbessern, und den Vorgang dann tausende Male wiederholt, um das beste Ergebnis zu finden.

Bei AlphaGo probiert die KI verschiedene Züge aus und sagt voraus, ob dies ein guter Zug ist und ob es wahrscheinlich ist, dass man aus dieser Position das Spiel gewinnt. Es nutzt Feedback, um vielversprechende Zugfolgen zu „verfolgen“ und andere mögliche Züge zu generieren. Der Effekt ist eine Suche nach möglichen Zügen.

Dieser Vorgang wird als probabilistische Suche bezeichnet. Obwohl es viele Züge gibt, müssen Sie nicht alle ausprobieren, sondern können geduldig nach den Bereichen suchen, in denen Sie möglicherweise den besten Zug finden. Das funktioniert hervorragend zum Spielen. AlphaGo hat in der Vergangenheit Go-Meister besiegt. AlphaGo ist nicht unfehlbar, aber es bietet derzeit eine bessere Leistung als die besten heute verfügbaren großen Sprachmodelle.

Wahrscheinlichkeit vs. Genauigkeit

Befürworter glauben, dass große Sprachmodelle, selbst wenn es Beweise dafür gibt, dass sie anderen Arten von KI deutlich hinterherhinken, allmählich besser werden. Lodge weist jedoch darauf hin, dass wir verstehen müssen, warum sie bei dieser Aufgabe besser abschneiden, wenn wir diese Idee akzeptieren wollen. Die Schwierigkeit bei diesem Problem bestehe darin, fuhr er fort, dass niemand genau vorhersagen könne, wie GPT-4 auf bestimmte Hinweise reagieren werde. Dieses Muster entzieht sich jeder menschlichen Erklärung. Er glaubt, dass dies „der Grund dafür ist, dass es kein ‚Just-in-Time-Engineering‘ gibt.“ Er betont, dass es für KI-Forscher auch schwierig ist zu beweisen, dass „emergente Eigenschaften“ großer Sprachmodelle existieren, geschweige denn vorherzusagen ihnen.

Man kann sagen, dass das beste Argument die Induktion ist. GPT-4 ist bei einigen Sprachaufgaben besser als GPT-3, da es größer ist. Daher wäre ein größeres Modell besser.

Lodge ist der Ansicht, dass GPT-4 noch die Herausforderungen von GPT-3 bewältigen muss, es besteht also ein Problem. Eine davon ist die Mathematik. Während GPT-4 bei Additionsoperationen besser ist als GPT-3, weist es bei Multiplikationen und anderen mathematischen Operationen immer noch Engpässe auf.

Eine Vergrößerung der Sprachmodelle löst diese Probleme nicht auf magische Weise, und laut OpenAI sind größere Modelle auch nicht die Lösung. Der Grund liegt in der grundlegenden Natur großer Sprachmodelle, wie das OpenAI-Forum hervorhebt: „Große Sprachmodelle sind probabilistischer Natur und generieren mögliche Ergebnisse auf der Grundlage der Muster, die sie in den Trainingsdaten beobachten.“ „Die Wahrscheinlichkeit, eine einzige richtige Antwort zu finden, ist gering.“

Im Prozess der künstlichen Intelligenz können durch Reinforcement Learning gesteuerte Methoden genauere Ergebnisse liefern, da es sich um einen Prozess handelt, bei dem ein Ziel verfolgt wird. Reinforcement Learning findet iterativ die beste Antwort, die dem Ziel am nächsten kommt, um das gewünschte Ziel zu erreichen. Lodge weist darauf hin, dass große Sprachmodellkurse „nicht darauf ausgelegt sind, zu iterieren oder Ziele zu finden. Sie sind darauf ausgelegt, ein oder mehrere Mal eine „gut genug“-Antwort zu geben. Eine „One-Shot“-Antwort ist die erste Vom Modell erzeugte Antwort, die durch Vorhersage einer Wortfolge in der Eingabeaufforderung erhalten wird. Beim „Few-Shot-Learning“ geht es darum, dem Modell zusätzliche Beispiele oder Hinweise zur Verfügung zu stellen, um es bei der Generierung besserer Vorhersagen zu unterstützen. Große Sprachmodelle fügen oft auch etwas Zufälligkeit hinzu (das heißt, sie sind „randomisiert“), um die Wahrscheinlichkeit einer besseren Antwort zu erhöhen, sodass sie unterschiedliche Antworten auf dieselbe Frage geben. Es ist nicht so, dass die große Welt der Sprachmodelle das verstärkende Lernen ignoriert hätte. GPT-4 kombiniert „Reinforcement Learning mit menschlichem Feedback“ (RLHF). Ein von einem menschlichen Bediener trainiertes Kernmodell bevorzugt bestimmte Antworten, was jedoch nichts Grundlegendes an der Antwort ändert, die das Modell ursprünglich generiert hat. Lodge weist darauf hin, dass ein großes Sprachmodell die folgenden Optionen bieten könnte, um die Lücken im Satz „Wayne Gretzky mag Eis …“ zu füllen.

1. Wayne Gretzky liebt Eis.

2. Wayne Gretzky liebt Hockey.

3. Wayne Gretzky liebt Eisfischen.

4. Wayne Gretzky liebt Skaten.

5. Wayne Gretzky mag Eiswein.

Menschliche Bediener sortierten die Antworten und kamen möglicherweise zu dem Schluss, dass der legendäre kanadische Eishockeyspieler trotz der großen Anziehungskraft von Eiscreme Eishockey und Skaten bevorzugte. Zum Trainieren des Modells werden menschliche Rankings und weitere von Menschen geschriebene Antworten verwendet. Beachten Sie, dass GPT-4 nicht vorgibt, Wayne Gretzkys Vorlieben genau zu kennen, sondern nur das bestmögliche zu tun, wenn Sie dazu aufgefordert werden.

Schließlich sind große Sprachmodelle nicht darauf ausgelegt, sehr genau oder konsistent zu sein. Es gibt einen Kompromiss zwischen Genauigkeit und deterministischem Verhalten im Austausch für Allgemeingültigkeit. Für Lodge bedeutet dies lediglich, dass Reinforcement Learning die generative KI übertrifft, wenn es darum geht, KI in großem Maßstab anzuwenden.

Anwenden von Reinforcement Learning auf Software

Was ist mit der Softwareentwicklung? Während ich schreibe, hat GenAI Chancen bereitgestellt für Entwickler, die ihre Produktivität mithilfe von Tools wie GitHubCopilot oder AmazonCodeWhisperer steigern möchten. Das ist keine Spekulation – es ist passiert. Diese Tools können anhand des Codes vor und nach dem Einfügepunkt in der integrierten Entwicklungsumgebung vorhersagen, welcher Code voraussichtlich als nächstes erscheinen wird.

Tatsächlich generiert die neueste Version von Copilot bereits 61 % des Java-Codes, wie David Ramel vom Visual Studio Magazine sagte. Wer befürchtet, dass dadurch die Arbeit der Softwareentwickler verringert wird, sollte bedenken, dass diese Tools eine sorgfältige menschliche Überwachung erfordern, um die Vollständigkeit zu überprüfen und sie zu bearbeiten, damit der Code kompiliert und korrekt ausgeführt wird. Die automatische Vervollständigung ist seit ihren Anfängen ein fester Bestandteil von IDEs, und Copilot und andere Codegeneratoren machen sie noch nützlicher. Bei der groß angelegten autonomen Codierung ist das anders. Tatsächlich müssen 61 % des Java-Codes geschrieben werden.

Verstärkungslernen ermöglicht jedoch eine präzise autonome Codierung im großen Maßstab, sagte Lodge. Natürlich hat er ein berechtigtes Interesse daran, dies zu sagen: Im Jahr 2019 veröffentlichte seine Firma Diffblue Cover, ein kommerzielles Unit-Test-Schreibtool, das auf Reinforcement Learning basiert. Cover schreibt komplette Unit-Test-Suites ohne menschliches Eingreifen und ermöglicht so die Automatisierung komplexer, fehleranfälliger Aufgaben im großen Maßstab.

Ist Lodge absolut voreingenommen? Er verfügt über viele Erfahrungen, die seine Überzeugung rechtfertigen, dass Reinforcement Learning GenAI in der Softwareentwicklung übertrifft. Heute nutzt Diffblue Reinforcement Learning, um den Raum aller möglichen Testmethoden zu durchsuchen, automatisch Testcode für jede Methode zu schreiben und unter den geschriebenen Tests den besten Test auszuwählen. Belohnungsfunktionen für Reinforcement-Learning basieren auf einer Vielzahl von Kriterien, einschließlich Testabdeckung und Ästhetik, zu denen auch die Einhaltung des von Menschen geschriebenen Codierungsstils gehört. Das Tool erstellt Tests für jede Methode in durchschnittlich einer Sekunde.

Lodge glaubt, dass Reinforcement Learning die einzige wirkliche Lösung ist, wenn das Ziel darin besteht, automatisch 10.000 Unit-Tests für ein Programm zu schreiben, das niemand versteht. „Große Sprachmodelle können nicht mithalten; Menschen haben keine Möglichkeit, sie effektiv zu überwachen und ihren Code in diesem Maßstab zu korrigieren. Modelle größer und komplexer zu machen, löst dieses Problem nicht.“ 🎜#Fazit: Das Mächtigste an großen Sprachmodellen ist, dass es sich um Allzweck-Sprachprozessoren handelt. Sie können Sprachaufgaben übernehmen, für die sie nicht explizit geschult wurden. Das bedeutet, dass sie bei der Erstellung von Inhalten (Copywriting) und vielen anderen Dingen hervorragende Arbeit leisten können. Lodge betonte: „Aber das macht große Sprachmodelle nicht zu einem Ersatz für Modelle der künstlichen Intelligenz, die oft auf Reinforcement Learning basieren, die genauer und konsistenter sind und in großem Maßstab eingesetzt werden können.“ #

Das obige ist der detaillierte Inhalt vonSind große Sprachmodelle für die Codierung falsch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen