3 Punkte von GN⁺ 2025-05-06 | 1 Kommentare | Auf WhatsApp teilen
  • Ein umfassender Leitfaden, der Sampling-Methoden großer Sprachmodelle (LLMs) so erklärt, dass auch Einsteiger sie verstehen können
  • Es wird detailliert erläutert, was Tokens sind, warum sie statt Wörtern verwendet werden und wie ein Modell Text erzeugt
  • Sampling ist der Prozess zur Steuerung von Vielfalt und Natürlichkeit der Ausgabe; vorgestellt werden verschiedene Sampling-Algorithmen wie Temperature, Top-K, Top-P und DRY
  • Jede Sampling-Technik wird mit konzeptioneller Erklärung sowie mathematischen und algorithmischen Funktionsprinzipien beschrieben; außerdem werden Effekte wie Vermeidung von Wiederholungen, Steigerung der Kreativität und Anpassung der Konsistenz verglichen
  • Da auch Kombinationsreihenfolge, Wechselwirkungen und Konfliktfälle zwischen Samplern aufbereitet werden, ist dies eine sehr nützliche Ressource für Entwickler, die die Generierungsqualität präzise steuern möchten

Intro Knowledge

Short Glossary

  • Logits sind unnormalisierte Werte, die den Score jedes Tokens darstellen
  • Softmax ist eine Funktion, die Logits in eine normalisierte Wahrscheinlichkeitsverteilung umwandelt
  • Entropy steht für Vorhersageunsicherheit; je höher sie ist, desto größer ist die Unsicherheit beim nächsten Token
  • Perplexity ist ein Maß dafür, dass bei niedrigeren Werten die Sicherheit des Modells höher ist
  • n-gram bezeichnet eine Sequenz aus n aufeinanderfolgenden Tokens
  • Context window ist die maximale Anzahl von Tokens, die das Modell auf einmal verarbeiten kann

Why tokens?

Why not letters?

  • Eine Tokenisierung auf Buchstabenebene macht Sequenzen zu lang, was zu höheren Rechenkosten und schwierigerer Verknüpfung von Informationen führt

Why not whole words?

  • Ein wortbasierter Ansatz hat Probleme wie explodierende Vokabulargröße und Schwierigkeiten bei der Darstellung von Neologismen oder seltenen Wörtern
  • Ein Sub-word-basierter Ansatz kann Präfixe, Wortstämme und Suffixe getrennt verarbeiten und ist daher wirksam für morphologisches Verständnis und mehrsprachiges Transferlernen

How are the sub-words chosen?

  • Das Vokabular wird aufgebaut, indem man anhand repräsentativer Stichproben der Trainingsdaten die häufigsten Teilwörter (sub-words) findet

How does the model generate text?

  • Während des Trainings lernt das Modell anhand großer Textmengen die Wahrscheinlichkeitsverteilung des nächsten Tokens
  • Bei der Inferenz berechnet es die Wahrscheinlichkeiten für alle möglichen Tokens und wählt das nächste Token entsprechend der Sampling-Technik aus

From Tokens to Text

  • Vorhersageschritt: Berechnung der Wahrscheinlichkeitsverteilung für alle Kandidaten-Tokens
  • Auswahlschritt: Auswahl eines Tokens nach einer bestimmten Sampling-Strategie
  • Würde man einfach nur das wahrscheinlichste Token wählen, entstünde oft langweiliger oder repetitiver Text; daher sind Sampling-Techniken wichtig

Sampling

Temperature

  • Niedrige Werte führen zu konservativen und repetitiven Ergebnissen, hohe Werte fördern kreativere Resultate, erhöhen aber auch die Fehlerwahrscheinlichkeit
  • Durch Division der Logits durch den Temperaturwert wird die Schärfe (Konzentration) der Wahrscheinlichkeitsverteilung gesteuert

Presence Penalty

  • Tokens, die bereits mindestens einmal erschienen sind, werden in ihrer Wahrscheinlichkeit für ein erneutes Auftreten verringert
  • Es wird nur berücksichtigt, ob ein Token verwendet wurde, nicht wie oft es vorkam

Frequency Penalty

  • Der Score wird proportional zur Häufigkeit des Auftretens abgesenkt
  • Je häufiger ein Wort vorkam, desto größer ist der Nachteil, was zur Erhöhung der Vielfalt beiträgt

Repetition Penalty

  • Auf zuvor erschienene Tokens wird eine asymmetrische Strafe auf positive/negative Logits angewendet
  • Das ist wirksam gegen schleifenartige Wiederholungen, kann aber die Kontextkonsistenz beeinträchtigen

DRY (Don't Repeat Yourself)

  • Wiederholungen von n-gram-Mustern werden erkannt, und die Wahrscheinlichkeit von Tokens, die Wiederholungen vorhersagen, wird abgesenkt
  • Je länger und je kürzer zurückliegend eine wiederholte Phrase ist, desto stärker wird sie unterdrückt
  • Besonders in kreativem Text ist dies hervorragend geeignet, Wiederholungen zu reduzieren und zugleich Natürlichkeit zu bewahren

Top-K

  • Es bleiben nur die Top-K-Kandidaten übrig, alle anderen Tokens werden ausgeschlossen
  • Dadurch werden extreme Samples entfernt, während ein gewisses Maß an Zufälligkeit erhalten bleibt

Top-P (Nucleus Sampling)

  • Es bleiben nur Tokens erhalten, bis die kumulative Wahrscheinlichkeit mindestens P erreicht; der Rest wird entfernt
  • Die Größe der Kandidatenmenge ändert sich adaptiv je nach Modellsicherheit

Min-P

  • Ausgehend vom Token mit der höchsten Wahrscheinlichkeit bleiben nur Tokens erhalten, die mindestens einen bestimmten Anteil davon erreichen
  • Das Filtering wird dynamisch an das Selbstvertrauen des Modells angepasst

Top-A

  • Kandidaten werden anhand eines Schwellenwerts gefiltert, der proportional zum Quadrat der Wahrscheinlichkeit des wahrscheinlichsten Tokens ist
  • Je höher die Sicherheit, desto strenger wird gefiltert

XTC

  • Mit einer bestimmten Wahrscheinlichkeit werden die wahrscheinlichsten Kandidaten absichtlich entfernt, um weniger sichere Entscheidungen zu fördern
  • Eine Technik für unkonventionelle oder kreative Antworten

Top-N-Sigma

  • Gültige Tokens werden anhand der Standardabweichung der Wahrscheinlichkeitsverteilung ausgewählt
  • Durch auf statistischen Merkmalen basierendes Filtering kann flexibel auf unterschiedliche Situationen reagiert werden

Tail-Free Sampling (TFS)

  • Über die zweite Änderungsrate (Krümmung) des Wahrscheinlichkeitsgefälles werden sinnvolle Kandidaten von Long-Tail-Kandidaten unterschieden
  • Gefiltert wird, indem ein natürlicher Cutoff-Punkt gefunden wird

Eta Cutoff

  • Der Filtermaßstab wird dynamisch entsprechend der Entropie (Unsicherheit) der Verteilung angepasst
  • Je höher die Sicherheit, desto mehr Tokens werden entfernt; je niedriger sie ist, desto flexibler ist das Verfahren

Epsilon Cutoff

  • Tokens mit niedriger Wahrscheinlichkeit werden anhand eines festen Wahrscheinlichkeitsschwellenwerts entfernt
  • Das ist einfach, aber vorhersehbar und nützlich zum Entfernen unnötiger Long-Tail-Tokens

Locally Typical Sampling

  • Bevorzugt werden Tokens, deren erwartete surprisal (Abweichung vom Erwartungswert) nahe am Durchschnitt liegt
  • Statt das wahrscheinlichste oder das ungewöhnlichste Token zu wählen, fördert es eine „typische“ Auswahl

1 Kommentare

 
GN⁺ 2025-05-06
Hacker-News-Kommentare
  • Es wird nicht erwähnt, dass der Sampler keinen Zugriff auf den internen Zustand des Modells hat

    • Er wendet lediglich Mathematik auf die Ausgabeverteilung an; wenn man nicht so schlau ist wie das Modell, kann man sie nicht entschlüsseln
    • Sampler wie Wiederholungsstrafe oder DRY sollen verhindern, dass das Modell sich selbst wiederholt, was auf die Notwendigkeit besseren Trainings hinweist
    • Das Hacken des autoregressiven Prozesses ermöglicht einfache Verbesserungen wie Min-P
    • Der Versuch, aus einem schlechten Modell ein gutes zu machen, ist der falsche Ansatz
  • Ich habe versucht, einen Sampling-Guide für Ollama/llama.cpp zu schreiben

    • Ich bin offen für Feedback oder Korrekturvorschläge
  • Wenn ein LLM versucht, eine „Idee“ auszugeben, sollte die Auswahl aus dem Logit-Vektor die ursprüngliche Idee zerstören

    • Wenn die Idee vollständig wäre, bräuchte man kein Sampling über die Logits
  • Alles ist einfach erklärt, was Raum für neue Versuche eröffnet

    • Zum Beispiel: Wie wäre es, ganze Wörter als Tokens zu verwenden?
    • Man könnte einen „Roboter“ mit einem eingeschränkten „Roboterdialekt“ bauen
    • Es gäbe keine Kapazität für neue oder seltene Wörter, aber man könnte Trainings- und Eingabedaten anpassen, um sie in den bestehenden Wortschatz zu übersetzen
    • Das vermittelt den Nutzern realistische Erwartungen daran, welche Antworten der Roboter gut geben kann
  • Könnte ein LLM-Modell die Tokenisierung implizit selbst durchführen?

    • Statt einen separaten Tokenizer zu bauen, würde man Zeichenketten verwenden und das neuronale Netz sie in Tokens umwandeln lassen
    • Die Gewichte dieses Netzes würden zusammen mit dem restlichen LLM trainiert
  • Dazu passend: Unser min_p-Paper hat bei der ICLR unter 12.000 Einreichungen Rang 18 erreicht

    • Das Poster war beliebt
    • Beim Vortrag gab es eine Diskussion mit Yoshua Bengio
    • Man kann bestätigen, dass Top N sigma derzeit der allgemeinste Sampler ist
    • Die Temperatur kann deutlich höher eingestellt werden als derzeit üblich
    • Der Spezialfall top_k = 2 und extrem hohe Temperatur ist sehr interessant
  • Ich frage mich, ob Sampling die Grenzen des Modells wirklich behebt oder nur ein tieferliegendes Problem überdeckt

  • „Sampling“ umfasst weit mehr, als ich erwartet hatte

  • Ein sehr nützliches Dokument, die Erklärungen sind klar und es deckt viel ab

    • Ich frage mich, ob jemand weiß, wer es geschrieben hat
    • Der Abschnitt DRY – „Wiederholungsstrafe“ war interessant
    • Ich möchte oft, dass ein LLM eine exakte Kopie der Eingabe ausgibt
    • Beim Zusammenfassen langer Gespräche bitte ich um die aussagekräftigsten wörtlichen Zitate
    • Eine DRY-Strafe könnte mit diesem Ziel in Konflikt stehen
  • Mir war nicht klar, wie viel Manipulation nach der anfänglichen Wahl der Softmax-Temperatur noch stattfindet