Warum Markov-Ketten lustiger sind als LLMs
(emnudge.dev)- Markov-Ketten sind einfache statistische Modelle zur Auswahl des nächsten Wortes, können aber wegen ihrer Verdrehungen, bei denen sie Bedeutung nie ganz zu fassen bekommen, lustigere Ausgaben erzeugen als LLMs
- Humor entsteht aus leichter, unerwarteter Überraschung; der „Snap“, der nach dem Aufbau eines vertrauten Musters die Erwartung bricht, macht einen Witz stark
- Weil LLMs mit viel Kontext und Wahrscheinlichkeitsrechnung das plausibelste nächste Token suchen, nähern sie sich mit steigender Leistungsfähigkeit durchschnittlichen und vorhersehbaren Sätzen an
- In einem Vergleich zwischen ChatGPT 3.5 und einer Markov-Kette, die mit der King James Bible und einem Informatik-Lehrbuch trainiert wurde, ergibt die Markov-Kette fast Sinn, löst am Ende aber einen absurden Bedeutungswechsel aus
- Heutige LLMs eignen sich nicht gut für kreatives Schreiben oder das Generieren von Witzen; Sprachmodelle für solche Aufgaben müssten kategorisch anders sein als aktuelle LLMs
Warum Markov-Ketten lustiger wirken
- Ein Beispiel einer Markov-Kette, trainiert auf Datensätzen aus der King James Bible und einem Informatik-Lehrbuch, mischt biblischen Stil mit Programmierbegriffen und erzeugt Sätze, die „fast Sinn ergeben, aber am Ende zusammenbrechen“
- ChatGPT 3.5 wurde angewiesen, eine ähnliche Ausgabe zu erzeugen, doch das Ergebnis ist eher ein aufgeräumter Satz mit stabilerer Bedeutung
- Beide Beispiele sind ausgewählte Fälle, aber in beiden Gruppen wurden gute Kandidaten für den Vergleich gewählt
- Die Sätze der Markov-Kette tragen eine seltsame Bedeutung in sich und verursachen gegen Satzende eine sinnlose Richtungsänderung
Markov-Ketten sind eher „sehr dumme LLMs“
- Als LLMs erstmals breiter erklärt wurden, wurden sie manchmal mit „sehr intelligenten Markov-Ketten“ verglichen; heute kann man Markov-Ketten eher als „sehr dumme LLMs“ betrachten
- ChatGPT ist ein LLM, also eine Art Large Language Model
- Es gibt sehr große Modelle mit über 300 GB, aber auch Modelle mit weniger als 10 GB
- Selbst kleine Modelle nennt man üblicherweise nicht „small language model“, sondern kleine LLMs
- Auch Markov-Ketten sagen auf Basis des aktuellen Kontexts das nächste Wort voraus, sind aber einfache statistische Modelle, die Semantik, Dimensionalität und spezialisierte Vektormathematik nicht berücksichtigen
- Die Vorschläge für das nächste Wort oberhalb von Smartphone-Tastaturen werden in der Regel mit Markov-Ketten erstellt; sie sind günstig auszuführen und lassen sich leicht an den Schreibstil des Nutzers anpassen
- Wenn Sätze mit einem bestimmten Ziel erzeugt werden sollen, schneiden LLMs oft besser ab, aber Korrektheit führt nicht automatisch zu Komik
Humor ist „leichte, unerwartete Überraschung“
- Humor lässt sich als unserious surprise zusammenfassen, also als nicht ernste Überraschung
- Ein guter Witz hat einen angenehmen, klaren „Snap“
- „Snap“ wird hier verwendet, um die semantische Last des Begriffs Punchline zu vermeiden
- Je geringer die Überraschung, desto weniger lustig ist es
- Der Grund, warum derselbe Witz weniger lustig wird, wenn man ihn mehrmals hört, ist, dass die Überraschung abnimmt
- „Zufälliger“ Humor kann deshalb unlustig wirken, weil die Wörter selbst zwar unvorhersehbar sind, die Erwartung, dass etwas Unvorhersehbares kommt, aber bereits vorhersehbar ist
- Wenn man ein vertrautes Muster wiederverwendet und dann die Erwartung verletzt, wird der Snap stärker
- „banana, apple, orange, vehicular manslaughter“ baut das Muster einer Liste aus Ein-Wort-Obstnamen auf und bricht die Erwartung mit einem Ausdruck für ein Verbrechen
- Witze schreiben ist im Wesentlichen eine Form von Musterbruch
Je klarer die Szene, desto stärker der Snap
- Wenn man originellere oder beschreibendere Sprache verwendet, fühlt sich die Szene realer an, und auch der Snap kann stärker werden
- Statt einfach „he was shot“ zu schreiben, konkretisiert „he was pierced by a 35mm“ die Szene stärker
- Formulierungen wie „his face met the ground“ statt „he fell“ machen die Szene lebendiger
- Auch mitten in einer Szene zu beginnen, kann wirksam sein
- „a urinal cake? I’m not falling for that one again“ lässt einen sich vorstellen, was zuvor passiert ist, und erhöht das Gefühl von Realität in der Szene
- Gutes Witzeschreiben und gutes Schreiben überschneiden sich teilweise in ihren Zielen
- Klischees verschwenden Wörter, weil sie die Szene in einem nicht verwirklichten Zustand belassen
Bedingungen, unter denen Humor funktioniert
- Was als „leichte, unerwartete Überraschung“ gilt, ist nicht universell; Humor ist daher subjektiv
- Derber Humor kann scheitern, weil er zu ernst genommen wird, oder umgekehrt, weil er zu vorhersehbar ist
- Ein Anti-Witz kann nur dann lustig sein, wenn die Witzstruktur selbst vorhersehbar ist
- Absurdismus funktioniert nur, wenn man bereit ist, ihn anzunehmen
- Kulturelle Normen können verletzt werden, aber diese Verletzung muss als nicht ernst verstanden werden
- Der Autor, ein Amerikaner, der nur Englisch spricht, konnte auch in einer nicht englischsprachigen Umgebung mit einer kulturell unerwarteten Verwendung von „no“ einen erfolgreichen Witz machen
LLMs werden auf Vorhersehbarkeit optimiert
- Um Sätze erfolgreich vorherzusagen, braucht man viel Kontext, und LLMs nutzen diesen Kontext
- Die Grundarbeitsweise von LLMs besteht darin, durch komplexe Berechnungen das wahrscheinlichste nächste Token zu finden
- Wenn ein Korpus aus vernünftiger Sprache besteht, erzeugt ein besseres LLM entsprechend vorhersehbarere Ausgaben
- Aufgrund dieser Eigenschaft können LLMs eine schlechte Wahl für kreatives Schreiben sein
- Ohne viel Prompt Engineering erzeugte Absätze können leicht wie von einem LLM geschrieben wirken
- Das Ergebnis fühlt sich wie der im jeweiligen Kontext durchschnittlichste mögliche Satz an
- Von einem LLM „originelle Gedanken“ zu verlangen, grenzt an einen Widerspruch; LLMs sind Werkzeuge, die gerade nicht dafür gebaut wurden
Heutige LLMs passen nicht zur Witzgenerierung
- Um einen Witz zu erzeugen, muss man eine geläufige Formulierung auf unerwartete Weise verdrehen und ihre Bedeutung verändern
- Gute LLMs sind darauf optimiert, genau solche Abweichungen zu vermeiden
- Der Behauptung, Comedy könne nicht algorithmisch erzeugt werden, stimmt der Autor nicht zu
- Comedy kann analysiert und gemessen werden
- Mit ausreichend großer Unterstützung könnte auch Comedy auf Abruf möglich sein
- Dass etwas möglich ist, heißt nicht, dass man es tun sollte
- Heutige LLMs sind für diese Aufgabe nicht das passende Werkzeug
- Frühe LLMs waren lustiger, und auch Bildgenerierung war in frühen Phasen lustiger
- Ein Beispiel sind die „trail cam“-Bilder von Dall-e mini
- Je besser die Systeme wurden, desto mehr verschwand der Humor
Die Spannung zwischen besseren Vorhersagemaschinen und künstlerischem Ausdruck
- Sehr gute Vorhersagemaschinen sind für künstlerischen Ausdruck möglicherweise keine große Hilfe
- LLMs haben weiterhin viele Einsatzbereiche, sind aber nicht das perfekte Werkzeug für kreative Arbeit
- LLMs übersehen mitunter interessante Konzepte, die einem Kind leicht einfallen würden
- Ausgehend von diesem Rahmen ließe sich eine andere Art von Sprachmodell bauen
- Dieses Modell müsste kategorisch anders sein als heutige LLMs
- Es wäre möglicherweise so anders, dass man es nicht LLM nennen würde
Leaky Abstractions in LLM-Ausgaben
- Diese Argumentation ist keine Debatte über „spirituelle Menschen gegen Maschinen“
- Auch wenn LLMs sich immer weiterentwickeln, treten wiederholt Mängel zutage; es ähnelt einer leaky abstraction, bei der die innere Struktur in dem Versuch sichtbar wird, menschenähnlich zu wirken
- Der Grund, warum jede Nachricht von ChatGPT wie ein Highschool-Aufsatz klingt, ist, dass es die durchschnittlichste Ausgabe reproduziert
- LLM-Ausgaben können wie ein flacher Corporate-Stil wirken, dem jede Eigenheit entzogen wurde und der durch akademische Strenge verhärtet ist
- Gefälschte Amazon-Rezensionen lassen sich leichter erkennen, wenn man denkt: „Würde ich so schreiben?“
- Man fragt sich, ob man einer Erfahrung mit Oxiclean dish wipes eine Einleitung und einen Schluss geben würde
- Sätze, in denen dem Hersteller gedankt und das Engagement des Kundendienstes gewürdigt wird, wirken möglicherweise nicht wie echte Nutzererfahrungen
- LLM-Erkennungsmodelle müssen vielleicht bald wie Bildschirm-CAPTCHAs Persönlichkeit erkennen
Weiterführender Link
- famous tumblr blog: Quelle der Markov-Ketten-Beispiele, die King-James-Bibelstil und Programmierstil mischen; wird seit Kurzem wieder betrieben
1 Kommentare
Meinungen auf Hacker News
Vor ein paar Jahren kam ich bei einem Nebenprojekt zum selben Schluss.
Vor dem Aufkommen von LLMs hatte ich eine Website zum Generieren gefälschter AWS Blog Posts gebaut, https://totes-not-amazon.com/, und einen Markov-Chain-Generator mit allen bis dahin erschienenen AWS-Ankündigungen trainiert; anschließend kopierte ich HTML/CSS des AWS-Blogs und setzte das mit Python+JS zusammen.
Es war ziemlich lustig, weil selbst Leute, die mit dem AWS-Blog vertraut waren, erst nach ein paar Sätzen merkten, dass es sich um Wortsalat handelte.
Als GPT gerade herauskam, versuchte ich, das Ganze mit Minimaxirs gpt-2-simple zu upgraden und Blogbeiträge auf Basis von AWS-Inhalten zu generieren, aber die Ergebnisse waren zu plausibel, wodurch es viel weniger witzig wurde. Es las sich wie ein echter Blogbeitrag, nur dass die Fakten falsch waren.
Der Humor der frühen Markov-Erzeugnisse lag letztlich in der Absurdität, dass man nach ein paar Wörtern oder Sätzen merkte, dass alles völliger Unsinn war; heutige LLMs sind dafür einfach zu gut. Sie liegen zwar manchmal falsch, aber selten auf eine komisch unsinnige Weise.
Inhalte aus Markov Chains liegen eher so falsch wie „Kinder sagen etwas Abwegiges“, moderne LLMs eher wie ein „Onkel, der grundlegende Geografie nicht kennt“.
https://github.com/cemulate/the-mlab
Das ist eine Parodie auf nLab, ein kollaboratives Wiki zu Kategorientheorie und höherer Kategorientheorie. Wer nLab gesehen hat, weiß: Für Einsteiger ist die Fachterminologie nahezu unentzifferbar, und daraus entstand die Idee für dieses Projekt.
Dieses Projekt nutzt das Paket nearley-generator, das Nearley-Grammatiken in effiziente und kontrollierbare Fake-Text-Generatoren umwandelt; die Grammatikdatei liegt unter
/src/grammar/nlab.ne.Das meiste war unsinnig oder langweilig übertrieben („dieser Held hat jetzt 500 Rüstung“), aber meistens waren mindestens 5–6 Zeilen extrem witzig, und manchmal traf etwas fast prophetisch zu. Zum Beispiel so etwas wie „Fiend's Grip erzeugt 1/2/3 zusätzliche Illusionen“.
Doch LLMs haben die Sache ruiniert. Die großen Subreddits haben alle AI-Inhalte verboten, weil es zu viel langweiligen Midjourney-Content von naiven Nutzern und Bots gab. Als die Reichweite weg war, verschwand auch der Reiz, und ich hörte auf, Markov Chains zu erstellen.
Ich habe diese Woche viele LLM-Chatbots benutzt; wenn dieser Onkel nicht nur selbstbewusst Unwahrheiten erzählen würde, sondern ihm auch noch jede Fähigkeit zur Selbsteinschätzung fehlte, wäre er längst umgebracht worden.
Ich gab Claude 3.5 Sonnet den Prompt: „Schreibe auf Grundlage des aktuellen Essays und der Diskussion auf Hacker News 10 kurze lustige Witze in dem Stil, wie der Autor des Essays es beschreibt.“
Claude antwortete, es werde Witze zum Thema erstellen, dass Markov Chains lustiger seien als LLMs, und dabei auf „nicht ernsthafte Überraschung“ und das Brechen erwarteter Muster abzielen.
Beispiele waren etwa: „Ein LLM und eine Markov Chain kommen in eine Bar. Das LLM bestellt ein statistisch plausibles Getränk, die Markov Chain bestellt einen Lampenschirm aus Käse“, „Wie viele LLMs braucht man, um eine Glühbirne auszuwechseln? Eins, aber zuerst erklärt es 20 Minuten lang den optimalen Prozess zum Glühbirnenwechsel“, „Warum ist eine Markov Chain kein guter Therapeut? Weil ihr Rat immer lautet: ‚Und dann bananisiere deine Gefühle, bis sie ein Hut werden‘.“
Es geht nicht darum, einfach irgendetwas Zufälliges dranzuhängen. Eine Markov Chain erzeugt eher eine Art Bedeutung, nur eben die falsche Sorte Bedeutung.
Zum Beispiel wäre „Ein LLM, eine Markov Chain und GPT-4 kommen in eine Bar. Der Barkeeper sagt: ‚Eure Sorte bedienen wir hier nicht.‘ GPT-4 geht, das LLM bleibt, um über Ethik zu diskutieren, und die Markov Chain bestellt einen Putsch“ treffender.
Zu Uni-Zeiten ließen Freunde von mir einen Markov-Chain-Generator über die Rubrik „Polizeibericht“ der Campuszeitung laufen.
Die besten 10 % der Ausgaben eines 3-Token-Generators gehörten zum Lustigsten an maschinell erzeugtem Text, das ich je gesehen habe, und hatten genau die Art von Absurdität, die moderne LLMs vermeiden, wenn sie versuchen, semantische Kohärenz auf höherer Ebene herzustellen.
Dass es damals jemanden gab, der in der Bibliothek exhibitionistische Handlungen beging, dürfte ebenfalls gutes Ausgangsmaterial geliefert haben.
Die Zeitung war The Daily Utah Chronicle, und soweit ich mich erinnere, ließen meine Freunde den Markov-Chain-Generator auch über die Rubrik für Kontaktanzeigen laufen und erzielten damit ziemlich gute Ergebnisse.
Markov Chains dagegen werden durch Verknüpfungen wie Versprecher auf Basis von Homonymen in jedem Satz zufällig weitergezogen und landen dadurch zufällig bei absurdem Humor.
Wer empirische Belege möchte:
/r/SubredditSimulatorist eine Markov-basierte Reddit-Parodie, und/r/SubSimulatorGPT2ist sozusagen der LLM-basierte CousinDie Markov-Version hat deutlich mehr Upvotes bekommen und ist einfach lustiger
Ich habe über die Jahre ein paarmal „Fake-XYZ, geschrieben von einer KI“ auf Reddit gepostet, und das Modell mit der besten Resonanz war GPT-2
Markov-Ketten reichen nicht aus, um über mehr als ein oder zwei Sätze interessant zu bleiben, und alles nach GPT-3 ist zu glatt und langweilig
GPT-2 ist der perfekte Mittelweg: Es bekommt die Grammatik meist hin und kann zusammenhängende Ideen beibehalten, weiß aber noch nicht genug über die Details vieler Themen, um Ergebnisse zu erzeugen, die im Kontext wirklich Sinn ergeben
Ich wollte den Bot in meinem üblichen IRC-Channel einsetzen und sehen, wie lange die Leute brauchen, bis sie merken, dass es ein Bot ist. Wenn jemand eine Nachricht schrieb, wurden die letzten 10 Nachrichten an das LLM geschickt, und wenn das Ergebnis mit einem bestimmten Präfix begann, wurde diese Nachricht in den Channel gesendet
Leider war GPT-2 nicht gut genug und erzeugte Inhalte, die etwas kohärent und thematisch passend, aber unsinnig waren
Nachdem ich das System überarbeitet habe, will ich versuchen, ein 7B-Modell zu finetunen
Die Entwicklung des Blogs AI Weirdness (https://www.aiweirdness.com/) in den letzten Jahren stützt diese Idee gewissermaßen
Allerdings hat die Autorin auch mit LLMs viele lustige Ergebnisse erzielt, vor allem mit frühen Modellen bis GPT-3 und kleineren Varianten von GPT-3
Zum Beispiel waren die von der Ada-Version von GPT erzeugten Müslinamen viel lustiger als die der Da-Vinci-Version: https://www.aiweirdness.com/new-breakfast-cereals-from-ai/
Kann man nicht einfach die Temperatur erhöhen?
Markov-Ketten haben ein viel gröberes Sprachverständnis. Wenn man die Temperatur eines LLM, also die Zufälligkeit, erhöht, kann man zu einer ähnlich groben Annäherung kommen
Außerdem hat der Autor ChatGPT-3.5 verwendet. ChatGPT wurde per RLHF darauf getrimmt, möglichst allgemein zu klingen, und 3.5 versteht Humor schlechter als 4
Die Argumentation des Artikels überzeugt mich nicht
Leider gibt es den Account nicht mehr, aber als ich vor etwa 10 Jahren an der Uni war, habe ich einen Markov-Twitter-Bot gebaut, der mit den folgenden zwei Quellen trainiert wurde
Die eine waren alle Mails, die Linus Torvalds im vorherigen Jahr an LKML geschickt hatte, die andere direkte Zitate Jesu aus der King-James-Bibel
Das war wirklich lustig. Weil sich die beiden Trainingssets kaum überschnitten, musste ich eine Heuristik hinzufügen, die die Auswahlmöglichkeiten des jeweils anderen Sets stärker gewichtete, je länger die Kette in einem Set „festhing“
https://www.tumblr.com/kingjamesprogramming
Ich betreibe seit etwa 20 Jahren einen IRC-Markov-Ketten-Bot
In den letzten Jahren lasse ich auch lokale LLMs mitlaufen. Es gibt noch Leute, die den Markov-Ketten-Bot lieber mögen, aber die große Mehrheit ruft das LLM auf
Das kann allerdings daran liegen, dass ich statt eines schlauen, abgeschotteten Modells mit niedriger Temperatur wie bei LLM-as-a-Service-Angeboten à la ChatGPT eher ein halluzinationsfreudiges, wenig verweigerndes und lustiges Modell gewählt habe, etwa ein Mistral-7B-Finetuning
Wenn man LLM und Markov-Bot nebeneinander sieht, merkt man noch stärker, wie viel vom „Humor“ des Markov-Bots daraus entsteht, dass Menschen zufälligen Ausgaben Bedeutung zuschreiben. Trotzdem ist Markovs Fähigkeit zum „Lernen“ weiterhin deutlich besser
Meine Bots haben nie so lange durchgehalten. Einmal habe ich die LiveJournals von Nutzern gescrapet und daraus zufälligen Text erzeugt: https://hewgill.com/journal/entries/68-new-lj-toy.html
Ich betreibe in einem Twitch-Chat einen Markov-Ketten-Bot, und manchmal entstehen tolle Momente. Ich habe eine Weile auch ein LLM genutzt und den jüngsten Chat in den Prompt gepackt, aber Ergebnisse, die wirklich humorvoll wirkten, kamen dabei kaum heraus
Ich habe auch Prompt Engineering ausprobiert, bei dem ich konkret vorgab, welche Art Witz entstehen soll, aber das LLM neigte immer dazu, demselben Format zu folgen
Auf einem privaten Discord-Server gibt es zwei Bots
Einer ist ein einfacher Markov-Ketten-Bot, der mit dem gesamten Chatverlauf trainiert wurde, der andere ist ein richtiges LLM, das nur mit einer bestimmten Anzahl der letzten Tokens arbeitet. Beide mischen sich gelegentlich zufällig in den Chat ein
Der Markov-Ketten-Bot ist immer viel lustiger
Außerdem frage ich mich, ob die Entscheidung zum Einmischen mit einer einfachen Wahrscheinlichkeit nach jeder Nachricht getroffen wurde (z. B. 25 %) oder ob das per Timer lief