2 Punkte von GN⁺ 2024-03-24 | 1 Kommentare | Auf WhatsApp teilen
  • Große Sprachmodelle scheitern bei Problemen mit mehreren Schritten, etwa langer Arithmetik, oft, wenn sie direkt eine Antwort liefern sollen. Lässt man sie jedoch schrittweise Lösungen erstellen, können sie auch zuvor schwierige Aufgaben lösen.
  • 2022 verbreitete sich das Chain-of-Thought Prompting von Google-Forschern stark: eine einfache Methode, bei der Zwischenschritte ausgegeben werden. Warum sie wirkt, wird jedoch weiterhin analysiert.
  • Forschende untersuchen mit Theorie der Berechnungskomplexität die Fähigkeiten und Grenzen von Transformern und zeigen, dass eine für parallele Verarbeitung optimierte Architektur die Rechenfähigkeit einschränken kann, wenn sofort eine Antwort geliefert werden muss.
  • Laut der theoretischen Arbeit von Merrill und Sabharwal hilft Chain of Thought substanziell erst dann, wenn die Zahl der Zwischenschritte proportional zur Eingabegröße wächst; viele Probleme benötigen noch mehr Schritte.
  • Diese Ergebnisse bedeuten nicht, dass reale Modelle die entsprechende Lösung beim Training zwangsläufig lernen. Sie bieten aber einen Rahmen, um die Grenzen von Transformern nicht zu überschätzen und neue neuronale Netzwerkarchitekturen zu vergleichen.

Warum schrittweise Lösungen die Modellleistung verändern

  • Menschen versuchen bei Aufgaben wie der Addition 20-stelliger Zahlen nicht, die Antwort auf einmal zu treffen, sondern bauen die Rechnung von der Einerstelle nach links auf.
  • Große Sprachmodelle können arithmetische Aufgaben mit wenigen Schritten lösen, scheitern aber häufig bei Problemen wie der Summe großer Zahlen, die viele Schritte erfordern.
  • 2022 zeigten Google-Forscher, dass Modelle zuvor schwierig wirkende Aufgaben lösen können, wenn man sie auffordert, schrittweise Lösungen zu erzeugen.
  • Diese Methode wird Chain-of-Thought Prompting genannt und verbreitete sich schnell, doch warum sie funktioniert, wird von Forschenden noch untersucht.

Wie Transformer stark wurden – und welche strukturellen Grenzen sie haben

  • Große Sprachmodelle basieren auf künstlichen neuronalen Netzen, die Wörter als Zahlenfolgen darstellen und verarbeiten.
    • Vor dem Training starten die Parameter mit zufälligen Werten.
    • Das Modell sagt anhand großer Textmengen aus dem Internet das nächste Wort voraus und passt seine Parameter so an, dass die Abweichung vom tatsächlichen Text kleiner wird.
  • Der 2017 von Google-Forschern eingeführte Transformer erweiterte die Forschung an Sprachmodellen erheblich.
    • Neuronale Netze vor dem Transformer hatten höchstens einige Hundert Millionen Parameter.
    • Die größten heutigen Transformer-basierten Modelle haben mehr als eine Billion Parameter.
  • Der zentrale Baustein eines Transformers ist der Attention Head.
    • Er überfliegt den gesamten Eingabetext schnell und findet Verbindungen zwischen Wörtern, die für die Vorhersage des nächsten Wortes nützlich sind.
    • Anschließend übernimmt ein Feedforward Network die großen Berechnungen.
  • Eine Architektur mit mehreren Schichten aus Attention Heads und Feedforward Networks ermöglicht es, während des Trainings die Berechnungen für jedes Wort gleichzeitig auszuführen.
    • Dank dieser Parallelität lässt sich das Training mit großen Datenmengen und vielen Prozessoren verteilen.
    • David Chiang sagt, dass Modelle groß sein müssen, um große Datensätze nutzen zu können, und dass Training ohne Parallelisierung nicht praktikabel wäre.
  • Im normalen Einsatz nach dem Training gibt ein Transformer Wort für Wort aus und hängt diese Ausgabe wieder an die Eingabe an, um das nächste Wort zu erzeugen.
    • Die Architektur bleibt jedoch auf parallele Verarbeitung optimiert, weshalb Forschende zu untersuchen begannen, ob diese Parallelität zulasten der Rechenfähigkeit geht.

Die Rechenfähigkeit von Transformern aus Sicht der Komplexitätstheorie

  • Da es schwierig ist, den Trainingsprozess neuronaler Netze direkt zu analysieren, nehmen einige Forschende an, dass Parameter beliebig gesetzt werden können, und untersuchen die inhärente Rechenfähigkeit von Transformern.
  • Dieser Ansatz behandelt Transformer wie eine bestimmte Art programmierbaren Computer.
    • Welche Funktionen können sie berechnen?
    • Welche Arten von Problemen können sie lösen?
  • 2019 bewiesen Pablo Barceló und Mitforschende, dass ein idealisierter Transformer mit einer festen Zahl von Parametern bei geeigneter Einstellung und wiederholtem Zurückführen der Ausgabe in die Eingabe so mächtig wie eine Turing Machine sein kann.
  • Dieses Ergebnis war ein wichtiger Ausgangspunkt, beruhte jedoch auf unrealistischen Annahmen, die die tatsächliche Stärke von Transformern überschätzen können.
  • Danach begannen Forschende, realistischere theoretische Rahmen zu entwickeln.

Die Grenzen von Transformern, wenn sie sofort antworten müssen

  • William Merrill und Ashish Sabharwal analysierten mit Circuit Complexity, welche Grenzen die parallele Architektur von Transformern erzeugt.
  • Sie betrachteten den Fall, in dem ein Transformer seine Ausgabe nicht wieder als Eingabe verwenden kann und die erste Ausgabe bereits die endgültige Antwort sein muss.
  • In diesem theoretischen Rahmen können Transformer keine Rechenprobleme außerhalb bestimmter Komplexitätsklassen lösen.
    • Als vergleichsweise einfaches Beispiel gelten viele mathematische Probleme wie das Lösen linearer Gleichungen als außerhalb dieser Klasse liegend.
  • Parallelität ist ein Vorteil, der Training ermöglicht, wird aber in Situationen, in denen sofort eine Antwort verlangt wird, zum Preis.
    • Merrill sagt, Transformer seien ziemlich schwach, wenn man sie so nutzt, dass man eine Eingabe gibt und direkt eine Antwort erwartet.

Wie Chain of Thought Grenzen umgeht

  • Die Ergebnisse von Merrill und Sabharwal führten zur Frage, wie viel stärker Transformer werden, wenn sie Ausgaben wiederverwenden können.
  • Chain-of-Thought Reasoning in realen Sprachmodellen wird zwar durch die Formulierung des Prompts beeinflusst, doch wenn ein Modell schrittweise Lösungen ausgibt, kann es die Zwischenergebnisse prinzipiell im nächsten Transformer-Durchlauf wiederverwenden.
  • Ein Forschungsteam der Peking University behandelte in einer Arbeit vom Mai 2023 einige mathematische Probleme, die im Rahmen von Merrill und Sabharwal für normale Transformer eigentlich unmöglich sein sollten.
    • Es zeigte, dass Transformer diese Probleme lösen können, wenn Zwischenschritte erlaubt sind.
  • Im Oktober 2023 veröffentlichten Merrill und Sabharwal eine theoretische Studie, die die Rechenfähigkeit von Chain of Thought genauer analysierte.
    • Sie quantifizierten, wie sich die zusätzliche Rechenfähigkeit abhängig von der Zahl der Zwischenschritte verändert, die ein Transformer vor der endgültigen Antwort nutzen kann.
  • Wie beim Beispiel der Addition zweistelliger Zahlen gibt es Probleme, bei denen die benötigten Zwischenschritte mit wachsender Eingabe ebenfalls zunehmen.
    • Die einfachste Methode, zwei 20-stellige Zahlen zu addieren, erfordert doppelt so viele Zwischenadditionen wie die Addition zweier 10-stelliger Zahlen.

Zwischenschritte helfen, sind aber nicht kostenlos

  • Merrill und Sabharwal analysierten, dass Transformer nur wenig gewinnen, wenn es sehr wenige Zwischenschritte gibt.
  • Chain of Thought zeigt ab dem Punkt einen substanziellen Effekt, an dem die Zahl der Zwischenschritte proportional zur Eingabegröße wächst.
  • Viele Probleme erfordern, dass die Zahl der Zwischenschritte noch deutlich stärker wächst als die Eingabegröße.
  • Daher ist Chain of Thought keine Universallösung.
    • Prinzipiell kann es ermöglichen, schwierigere Probleme zu lösen.
    • Es erfordert jedoch erheblichen Rechenaufwand.
  • Merrill sagt, er interessiere sich für mehrere Wege, die Grenzen eines Ein-Schritt-Transformers zu umgehen, und Chain of Thought sei möglicherweise nicht die wirtschaftlichste Methode.

Vorsicht bei der Anwendung auf reale Modelle

  • Theoretische Analysen können über reale Sprachmodelle nur begrenzt Auskunft geben.
  • Ein Beweis, dass ein Transformer ein bestimmtes Problem prinzipiell lösen kann, bedeutet nicht, dass ein reales Sprachmodell diese Lösung beim Training zwangsläufig gelernt hat.
  • Auch Ergebnisse zu den Grenzen von Transformern setzen strenge Kriterien voraus.
    • Sie bedeuten, dass kein Transformer ein bestimmtes Problem in allen Fällen perfekt lösen kann.
    • Daniel Hsu sagt, dass bestimmte Spezialfälle sehr wohl gut verarbeitet werden können.
  • Solche Analysen bieten einen Rahmen, um andere neuronale Netzwerkarchitekturen zu vergleichen, die Transformer ersetzen könnten.
    • Wenn ein Netzwerk in der komplexitätstheoretischen Analyse mächtiger erscheint, kann das ein Hinweis darauf sein, dass es auch in realen Umgebungen besser sein könnte.
  • Da Sprachmodelle in vielen realen Anwendungen eingesetzt werden, sollte man sich bewusst sein, dass es viele Dinge gibt, in denen Modelle nicht gut sind.

1 Kommentare

 
GN⁺ 2024-03-24
Meinungen auf Hacker News
  • Chain-of-Thought sollte man meiner Ansicht nach nicht mit einer strengen Kette aus Logik/Mathematik vergleichen.
    Die schrittweise Schlussfolgerung des Modells verleiht der Ausgabe nicht diese Art von Strenge; die Stärke der Kette ist nur die Stärke des relevanten Kontexts und damit viel schwächer als menschliche Mathematik/Logik.
    Aus der Perspektive von jemandem, der täglich mit Modellen in diesem Bereich arbeitet, sie aber nicht selbst baut, sehe ich nicht die zwingenden Verbindungen, die in der Grundlagenmathematik gelehrt werden, und ich sehe häufig, dass Modelle auf eine Weise scheitern, wie es Menschen ab einem bestimmten Alter nicht tun würden.
    Letztlich ähnelt es eher dem Finden relevanter Kontexte und ist zwar mächtig, aber etwas anderes als menschliches logisches Schließen. Menschen können mit sehr wenigen Begriffen anfangen, auf einem Stuhl sitzen und allein durch reines Schließen zu weit entfernten wasserdichten Schlussfolgerungen gelangen; Modelle springen eher zwischen Kontexten hin und her.

    • Wenn ein LLM eher sequenzielles Monte-Carlo-Sampling im latenten Raum betreibt, dann wirkt der „Thought“-Teil in Chain-of-Thought eher wie die nötige Aufwärmphase beim SMC-Sampling.
      Wer ernsthaft Bayes-Statistik betrieben hat, weiß, dass ein Sampler eine kurze Aufwärmphase braucht, bevor er effizient Samples zieht. Bei Chain-of-Thought scheint etwas Ähnliches zu passieren: Das Modell muss erst ein wenig umherwandern, bevor es in die richtige Umgebung gelangt, aus der es die korrekte Antwort sampeln kann.
    • Ich denke, ein beträchtlicher Teil dessen, was Menschen als Schlussfolgerung im Stil von „1, 2, also 3“ betrachten, unterscheidet sich nicht stark von dem, was ein LLM tut, und ist in Wirklichkeit auch nicht klüger.
      Viele Menschen glauben, sie hätten über fragwürdige Überzeugungen ausreichend nachgedacht, tatsächlich haben sie das aber nicht. Sie nutzen Kontext, um den nächsten Gedanken/das nächste Wort zu erraten, und landen häufig bei der Schlussfolgerung, die sie von Anfang an hatten.
      Wenn von wasserdichten Schlussfolgerungen die Rede ist, passiert meiner Ansicht nach in Wirklichkeit Folgendes: Sie werden intuitiv zurechtgelegt, und anschließend kommt ein starker Prüfprozess dazu, ob die Definitionen klar genug sind, ob die Sprünge in der Argumentation gerechtfertigt sind usw.
      Deshalb würde ich wirklich gern sehen, wie man LLMs beibringt, vage englische Sätze in eine Form zu bringen, die man in eine stärker formale Reasoning-Engine einspeisen kann.
      Zum Beispiel ist es oft besser, ein LLM nicht direkt zu fragen: „Wie viele Fußballfelder passen in England?“, sondern es anzuweisen, Python-Code zu schreiben, der das berechnet, unter der Annahme, dass get_size_football_field() und get_size_England() die Größen in Quadratmetern liefern.
    • Die Fähigkeit, dass „Menschen mit sehr wenigen Begriffen anfangen und allein durch reines Schließen zu weit entfernten wasserdichten Schlussfolgerungen gelangen können“, habe ich nicht.
      Ich kann ungefähr ab mehr als 10 Zeilen Go-Code nicht mehr logisch nachverfolgen, und nach mehreren Anläufen bei Hobbyrätseln ist mir das sehr klar geworden.
    • Ich denke, die Struktur menschlichen Schließens ist fast identisch mit Chain-of-Thought.
      Wir haben eine auditive Schleife, und wenn wir auf ein komplexes Problem stoßen, wiederholen wir eine Art Mantra wie „Jetzt weiß ich XYZ, was kommt als Nächstes …“, bis uns ein guter nächster Schritt einfällt, den wir dann dem Kontext hinzufügen.
      Allerdings ist die Übergangsfunktion derzeit beim Menschen einfach viel besser.
    • Bei LLMs scheint Chain-of-Thought letztlich dabei zu helfen, das Gedächtnis zu erweitern.
      Denn es schreibt die Schlussfolgerungen in den Kontext, sodass man später leichter darauf verweisen kann; natürlich ist das nur eine Vermutung.
  • Eine vereinfachte Erklärung, die ich wohl von Karpathy gehört habe: Transformer-Modelle rechnen nur dann, wenn sie Tokens erzeugen (dekodieren).
    Wenn man also mit Chain-of-Thought mehr Tokens erzeugt, bekommt das Modell mehr Zeit zum „Nachdenken“. Natürlich erfasst diese Erklärung nicht alle Nuancen.

    • Eine andere Erklärung ist ebenfalls möglich. Ein LLM lernt im Kern „A B“, also ob es plausibel ist, dass B auf A folgt.
      Bei kurzen Vervollständigungen ist der Raum plausibler Möglichkeiten wie A B1, A B2 viel größer. Wenn man bei einer subtilen Frage eine kurze Antwort verlangt, sind eine durchdachte Antwort, eine scheinbar richtige Antwort, überzeugender Unsinn usw. allesamt möglich.
      Erzwingt man dagegen die Erklärung der Schlussfolgerung, wird der Raum plausibler Vervollständigungen kleiner. Wenn man mit überzeugendem Unsinn beginnt und ihn ehrlich bis zum Ende durchzieht, kann man am Ende zu dem Schluss kommen, dass man ihn zurücknehmen muss.
      Das ähnelt dem Grund, warum es beim Widerlegen schädlicher Überzeugungen ehrlicher Menschen gut funktioniert, sie die Konsequenzen dieser Überzeugung selbst entfalten zu lassen und gemeinsam nachzuvollziehen, welche Auswirkungen etwas hat, das ohne viel Nachdenken gut aussieht.
      Aus einem ähnlichen Grund ist es wirksames Prompt Engineering, den Prompt mit Elementen zu füllen, die den Raum plausibler Vervollständigungen verkleinern.
    • Die autoregressive Transformer-Architektur hat konstante Kosten pro Token, egal wie schwierig die Aufgabe ist.
      Selbst bei der komplexesten Schlussfolgerungsfrage ist der Rechenaufwand zur Erzeugung des nächsten Tokens derselbe wie bei der einfachsten Ja/Nein-Frage; das ist eine strukturelle Beschränkung.
      Das LLM „Schmierzettel“-Daten erzeugen zu lassen, die es für Berechnungen nutzen kann, damit es relevante Informationen beachtet, ist eine Möglichkeit, diese Grenze konstanter Kosten zu umgehen. Je schwieriger die Aufgabe, desto mehr Schmierzettel braucht es, damit für zukünftige Tokens mehr relevanter Kontext erhalten bleibt.
    • Anfangs dachte ich das auch, aber tatsächlich glaube ich nicht, dass es stimmt. Wegen der in der Attention verwendeten Maske bleibt die auf einen String angewandte Arbeitsmenge gleich, auch wenn hinter dem String Padding steht.
      Stattdessen wurde mir klar, dass das Arbeitsgedächtnis eines LLM durch Aktivierungswerte begrenzt ist und das zum Flaschenhals werden kann. Das Modell kann sein Arbeitsgedächtnis erweitern, indem es Teilergebnisse in die Ausgabe schreibt und sie später wieder liest.
      Wenn man zum Beispiel sagt: „Denk dir eine Zahl, aber sag sie nicht“, hat es keinen Ort, um diese Zahl zu speichern. Denn außer dem Tape gibt es keinen temporären Speicher. Sagt man aber: „Denke Schritt für Schritt“, speichert es Zwischenergebnisse, also Gedanken, auf dem Tape und bekommt dadurch zusätzlichen Speicherplatz fürs Denken.
    • Aus meiner Erfahrung beim Bau eines Produkts mit GPT3.5-Turbo gibt es eine Obergrenze für die Komplexität der Anweisungen, die ein Modell auf einmal verarbeiten kann.
      Es gibt zwar auch den Aspekt, dass man „mehr Rechenleistung hinzufügt“, aber der Kern ist, den Prozess so zu strukturieren, dass sich das Modell bei einer Entscheidung nur auf einen begrenzten Bereich konzentrieren muss.
      Im Grunde baut man damit eine Baumstruktur von Entscheidungen, die aufeinander aufbauen. Wenn Zwischentokens erzeugt werden, kann das Modell seine Aufmerksamkeit auf eine bereits zusammengefaltete, kleinere Menge von Entscheidungen richten.
      Allerdings kann es auch antizipatives Verhalten erzeugen, bei dem Zwischenschritte durch ein vom Modell erwartetes falsches Ergebnis verzerrt werden; in der Praxis ist es also etwas komplizierter.
    • Ich habe in den System-Prompt eines Modells, das ich zum Coden nutze, den Stack und wichtige Abhängigkeiten aufgenommen und dann Fragen gestellt oder mich mit ihm unterhalten; das hat sehr geholfen, oder es fühlte sich zumindest so an.
  • Die Aussage, „die formale Erforschung der Berechnung habe 1936 mit Turings Turingmaschine begonnen“, müsste weiter zurückgehen
    Es gab Moses Schönfinkels kombinatorische Logik aus den 1920er-Jahren https://en.wikipedia.org/wiki/Moses_Sch%C3%B6nfinkel und Alonzo Churchs Lambda-Kalkül aus den frühen 1930er-Jahren https://encyclopediaofmath.org/wiki/Lambda-calculus
    Allerdings sind diese Modelle als Grundlage der Theorie der Rechenkomplexität weniger geeignet

    • Noch weiter gefasst kann man über Pearce und Frege, Boole, Pascal und Leibniz bis zu Aristoteles zurückgehen
      Aristoteles dürfte einer der Ersten gewesen sein, der versuchte, strukturiertes Denken zu formalisieren
      Turings Rechengerät formalisierte die Art und Weise, wie menschliche Mathematiker nach formalen Regeln Symbole manipulieren, um Probleme rechnerisch zu lösen, und steht in einer langen Tradition, die sich mit derselben Erfahrung und damit beschäftigte, wie leicht sie sich mechanisieren lässt
      Der Erste, der dies für die Arithmetik tatsächlich umsetzte, war Pascal
    • Wer sich für dieses Thema interessiert, einschließlich Schönfinkels Arbeit, dem empfehle ich https://youtu.be/h0OkptwfX4g
  • Die zwei Modi im LLM-Diskurs, also „es ist bewusst!“ und „es ist nur ein Next-Token-Predictor mit einem beeindruckenden Datensatz“, stammen meiner Ansicht nach größtenteils von zwei unterschiedlichen Gruppen
    Von Leuten, die zuerst LLMs kennengelernt und später die Grundlagen des maschinellen Lernens gelernt haben, und von Leuten, die zuerst die Grundlagen des maschinellen Lernens gelernt und danach die heutigen LLMs kennengelernt haben
    Ich gehöre zur zweiten Gruppe, aber die Gefahr ist real, dass Vorannahmen aus den Grundlagen den Blick auf das große Ganze einschränken; daher begrüße ich die Debatte an sich
    Zur Chain of Thought weiß ich zumindest, dass viele Ergebnisse des ursprünglichen Papers in späteren Versuchen nicht gut reproduziert wurden. Ob das an den Eigenheiten von Modellen liegt, die sich täglich ändern, oder an tieferen Gründen, weiß ich nicht

    • Instinktiv möchte ich eher den Leuten vertrauen, die auch das ältere Wissen kennen
      Als ich mich früher bei meinem Doktorvater darüber beschwerte, dass Leute im Machine-Learning-Feld frühere Machine-Learning- und KI-Arbeiten offenbar nicht gut kennen, sagte mir dieser Betreuer mit über 30 Jahren Forschungserfahrung, dass es diese Beschwerde schon gab, als er selbst Doktorand war
      In der KI gibt es, von Pitts und McCulloch an gerechnet, rund 80 Jahre, und selbst von Turing an sehr viele langjährige Arbeiten; es ist sehr schwierig, mit der Arbeit anderer Schritt zu halten und zugleich das eigene Thema tief zu bearbeiten
      Wenn man zum Beispiel ein Buch über Reinforcement Learning aufschlägt, behandelt es nahezu dasselbe Problem wie Planning, mit sehr ähnlichen Annahmen zu Zustands- und Aktionsräumen, und wirkt manchmal so, als gäbe es das Feld Planning gar nicht
      Nebenbei: Es sind tatsächlich Next-Token-Predictors :P
    • Im Moment neige ich zu der Ansicht, dass „auch ein organisches Gehirn nur ein Next-Token-Predictor mit einem beeindruckenden System unterstützender Heuristiken ist“
      Wenn man sieht, dass Transformer trotz einer so dürftigen Approximation und völliger Zustandslosigkeit derart beeindruckende Ergebnisse liefern können, scheint es hier keinen besonderen Geheimtrick zu geben
  • Ich hielt das für offensichtlich. LLMs haben keine innere Stimme und keine inneren Bilder wie Menschen, daher können sie ein Problem vor dem Antworten nicht erst vollständig im Kopf durchdenken
    Wenn man den tatsächlichen Ausgabebereich als eine Art Notizblock nutzt, kann man vor der Antwort einen größeren Schlussfolgerungsraum abdecken; das ähnelt der menschlichen Vorgehensweise
    Wenn man mit dem Prompt „Denke Schritt für Schritt“ eine bestimmte Frage stellt, sieht man, dass auch vorläufige Gedanken ausgegeben werden, die für die endgültige Antwort nutzlos sind. Genau das tun wir, wenn wir Probleme lösen, die wir nicht sofort beantworten können
    Auch Menschen notieren sich mit Papier und Stift vorläufige und Zwischengedanken sowie Antworten. LLMs haben ein solches Werkzeug nicht, können aber die Ausgabe auf ähnliche Weise verwenden
    Manche Tree-of-Thoughts-Prompts lassen LLMs zwei Arten von Ausgaben erzeugen: eine zum „Denken mit innerer Stimme“ und eine andere als Ausgabe, die Menschen sehen sollen
    Auch die Fähigkeit zu Methodenaufrufen oder „Googeln“ kann man als eine Weise betrachten, vor der für Nutzer sichtbaren Antwort Denken und Schlussfolgern auszuführen

  • Modelle können nicht denken. Sie verwenden den Eingabekontext lediglich, um die Ausgabe vorherzusagen
    Wenn es also ein Problem gibt, das iterativ gelöst werden muss, müssen Zwischenschritte im Kontext gespeichert werden. Andernfalls haben diese Schritte keinen Ort, an den sie gehen können

    • Aus der Aussage „sie verwenden die Eingabe, um die Ausgabe vorherzusagen“ folgt nicht die Schlussfolgerung „sie können nicht denken“
      Ich verstehe nicht, warum die Tatsache, dass sie aus der Eingabe die Ausgabe vorhersagen, zu der Überzeugung führen sollte, dass sie nicht denken können. Vielleicht ist Denken insgesamt genau das, und wir wissen es nicht
  • Aus einem einfachen Grund kann man die Plausibilität von 11 + 31 = 24 betrachten
    Die Antwort ist eine Zahl, und auch dass es eine zweistellige Zahl ist, ist beim Addieren zweistelliger Eingaben ziemlich plausibel. 24 ist außerdem eine häufige Antwort in Matheaufgaben und hat viele Teiler. Sie enthält sogar Zahlen, die beim Addieren von 1+3 und 1+1 vorkommen
    Aber der letzte Satz in „Zeige die Lösung. Bei 11 + 31 addiert man die Zehnerstellen: 10 + 30 = 40, die Einerstellen: 1 + 1 = 2, und wenn man 40 und 2 zusammenführt, ergibt das 24“ ist nicht besonders plausibel
    Oder auch „10 + 30 = 20, 1 + 1 = 4, und wenn man 20 und 4 zusammenführt, ergibt das 24“ ist ähnlich
    Wenn man das Problem zerlegt, muss man einen Bereich durchlaufen, der weniger wahrscheinlich ist als eine schnelle falsche Antwort
    Allerdings ist das Argument über Rechenkomplexität stärker. Die obige Erklärung kann in einfachen Fällen als ausreichende Störerklärung dienen, sodass man sie womöglich ausschließen muss, bevor man behauptet, dass Rechenkomplexität wichtig ist
    Auch das Komplexitätsargument ist intuitiv naheliegend. Wenn man ein LLM als Computer betrachtet, der in jedem Taktzyklus für die bisherige Eingabe einmal einen Feedforward-Durchlauf in konstanter Zeit ausführt und ein Token ausgibt, dann kann es mehr berechnen, wenn man ihm mehr Zyklen gibt
    Auch Zustand lässt sich verwenden. Das ist möglich, selbst wenn der Mechanismus zur Weitergabe von Zustand von einem Zyklus zum nächsten sehr begrenzt ist
    Das ähnelt auch einer Erweiterung des alten Problems, dass ein einschichtiges Perzeptron XOR nicht berechnen kann. Hier ist ein „Zyklus“ der Fortschritt von einer Schicht zur nächsten
    Natürlich heißt das nicht, dass die Details offensichtlich wären. Allein zu sagen, dass mehrere Takte genutzt werden können, erklärt nicht, wie viel in einem Takt möglich ist

  • Es gibt einen Tweet, der mit dem Wunder der Chain of Thought zusammenhängt und möglicherweise eine einfachere Erklärung liefert.
    Wenn man nach der Formulierung „Let’s think step by step!“ sucht, findet man unter den Ergebnissen Websites wie http://geteasysolution.com, auf denen es viele Schritt-für-Schritt-Lösungen für Mathematik gibt. Dass das ziemlich verbreitet ist, gibt einem zu denken.
    https://twitter.com/yanaiela/status/1765077404043952516

    • Diese Erklärung rechtfertigt, warum eine bestimmte Formulierung funktioniert, steht aber nicht im Widerspruch zu einer allgemeinen Erklärung dafür, wie Chain of Thought funktioniert.
      Die Formulierung kann das Modell zwar in den Begriffsraum von Websites mit vielen Chain-of-Thought-Beispielen lenken; wenn Chain of Thought aber tatsächlich nicht beim Denken helfen würde, würde das nicht zu besseren Ausgaben führen.
  • Ich dachte, das sei bereits offensichtlich. Es ist alles eine Frage von Kontextbewusstsein.
    Wenn man etwas verbessern will, reicht es, dem Prompt einen Begriff hinzuzufügen, der mehr Überlegungen öffnet. Vorausgesetzt, man ist noch nicht am Ende des Kontextfensters angekommen, „entsperrt“ jedes neue Wort einen neuen Vektor mit mehr Kontext, und das Sprachmodell bezieht ihn in seine Überlegungen ein.
    Die Ähnlichkeit zu dem, wie das menschliche Gehirn zu funktionieren scheint, ist so auffällig, dass es eher unsinnig wäre, sie nicht als Analogie zu nutzen, um Sprachmodelle besser einzusetzen.
    Wenn man durch die Art, wie man ein LLM manipuliert, und durch die Art, wie man ein menschliches Gehirn manipuliert – nämlich durch die Verwendung der richtigen Wörter –, dasselbe Ergebnis erzielen kann, weiß ich nicht, warum man glauben sollte, dass es einen Unterschied gibt.
    So etwas lernt man mit der Zeit, wenn man 3B-Modelle nutzt und untersucht. Viele scheinen davor zurückzuschrecken, aber einige Modelle wie das „alte“ orca mini 3B sind sehr leistungsfähig, und ich nutze sie immer noch.
    Was man braucht, sind bessere Prompts, und dieser Ansatz funktioniert sehr gut.
    Das größte Hindernis sind die meist kleinen Kontextfenster dieser kleinen Modelle, aber das lässt sich ohne großen Qualitätsverlust umgehen – etwa durch kleine RoPE-Erweiterungen, Textzusammenfassung, das Hinzufügen von Kontextwörtern oder das Weglassen von Buchstaben in Wörtern im Prompt.
    Wenn man die Ergebnisse eines Sprachmodells verbessern will, muss man Mentalist, Betrüger, Zauberkünstler und Social Engineer werden. Das klingt seltsam, funktioniert aber.

    • Diese Erklärung behandelt die nicht offensichtlichen Grenzen von Chain of Thought nicht.
      Merrill und Sabharwal haben bewiesen, dass Chain of Thought erst dann wirklich hilfreich wird, wenn die Zahl der Zwischenschritte proportional zur Eingabegröße wächst, und dass viele Probleme eine noch viel stärker wachsende Zahl von Zwischenschritten erfordern.
      Das passt auch zu meiner Erfahrung. GPT-4 kann bei Aufforderung zu einer Schritt-für-Schritt-Lösung nur „einfache“ Probleme zerlegen. Besonders bei O(n²)-Komplexität, bei der die eigentlichen Schritte selbst weiter zerlegt werden müssten, teilt es die Aufgabe zwar in Schritte auf, scheitert aber zuverlässig daran, die Teilaufgaben erneut in Teilschritte zu zerlegen – selbst wenn diese Teilaufgaben mit einem Chain-of-Thought-Prompt lösbar wären.
      Chain-of-Thought-Prompts funktionieren bei einfachen O(n)-Berechnungen, weil sie LLMs davon abhalten, die Antwort blind zu raten. Aber sowohl theoretisch als auch empirisch sehe ich keine Fähigkeit, ein O(n²)-Problem in O(n) Teilprobleme der Größe O(n) zu zerlegen. Ganz zu schweigen davon, dass Menschen deutlich klüger sind als das – und Ratten ebenfalls.
    • Interessant; gibt es dazu weitere Details oder Materialien, mit denen man mehr erfahren kann? Schon ein konkretes Beispiel wäre hilfreich.
  • Chain of Thought erinnert mich an „sich irgendwie durchwursteln“ (muddling through) und passt direkt zu meiner Intuition, dass das der richtige Ansatz für eine Annäherung an Intelligenz ist.
    https://studio.ribbonfarm.com/p/massed-muddler-intelligence#...