1 Punkte von GN⁺ 2025-09-16 | 1 Kommentare | Auf WhatsApp teilen
  • In hochdimensionalen Embedding-Räumen lassen sich dank Quasi-Orthogonalität (quasi-orthogonality) statt vollständiger Orthogonalität unzählige Konzepte darstellen
  • Das Johnson-Lindenstrauss-Lemma garantiert, dass beliebige hochdimensionale Daten mit nahezu keinem Informationsverlust in niedrigere Dimensionen projiziert werden können
  • Im Optimierungsprozess ist das Design der Verlustfunktion entscheidend, da eine einfache Verlustfunktion zu ineffizienten oder verzerrten Vektoranordnungen führen kann
  • Experimentelle Ergebnisse zeigen, dass die tatsächliche Kapazität von Embedding-Räumen weit größer ist als theoretisch vermutet und dass Millionen bis Milliarden von Konzepten natürlich koexistieren können
  • Diese Erkenntnisse haben große praktische Bedeutung für Machine-Learning-Anwendungen wie Datenrepräsentation, Dimensionsreduktion und Embedding-Design

Einleitung: Die Frage nach der Kapazität des Embedding-Raums von Sprachmodellen

In der jüngsten Videoserie von 3Blue1Brown über Transformer-Modelle stellte Grant Sanderson die spannende Frage, wie der 12.288-dimensionale Embedding-Raum von GPT-3 Hunderttausende bis Millionen realer Konzepte enthalten kann
Diese Frage steht in Verbindung mit hochdimensionaler Geometrie und einem mathematischen Resultat namens Johnson-Lindenstrauss-(JL)-Lemma
Die Untersuchung führte zu neuen Einsichten in die grundlegenden Eigenschaften von Vektorräumen und in Optimierung und mündete sogar in eine Zusammenarbeit mit Grant

Quasi-Orthogonalität von Vektoren und die Kapazität von Embedding-Räumen

  • In einem N-dimensionalen Raum gibt es nur N vollständig orthogonale Vektoren
  • Erlaubt man stattdessen quasi-orthogonale Beziehungen, die leicht von 90 Grad abweichen (z. B. Winkel von 85 bis 95 Grad), wächst die Zahl der darstellbaren Vektoren im selben Raum exponentiell
  • In Grants Video wird visualisiert, wie in einem 100-dimensionalen Raum 10.000 Einheitsvektoren nahezu orthogonal angeordnet werden können
  • Bei der Reproduktion desselben Experiments zeigte sich jedoch eine subtile Falle im Design der Optimierungs-Verlustfunktion

Probleme und Muster der Verlustfunktion

  • Grundlegende Verlustfunktion:
    loss = (dot_products.abs()).relu().sum()
  • Auf der tatsächlichen Einheitskugel führt diese Verlustfunktion zu zwei Problemen
    1. Gradient Trap: Wenn sich der Winkel zwischen Vektoren 90 Grad nähert, wirkt der Gradient stark, doch nahe 0 oder 180 Grad ist der Gradient fast null, sodass Verbesserungen blockiert werden
    2. 99%-Lösung: Das Optimierungsverfahren minimiert den Gesamtverlust, indem jeder der 10.000 Vektoren zu 9.900 anderen korrekt orthogonal steht, zu 99 jedoch fast parallel ist (also faktisch Kopien von Referenzvektoren bildet)
  • Diese Lösung unterscheidet sich insgesamt grundlegend von der erwarteten Verteilung, weshalb eine ausgefeiltere Verlustfunktion nötig ist
  • Daher wurde die Verlustfunktion auf eine exponentielle Strafe umgestellt: loss = exp(20*dot_products.abs()**2).sum()
  • Dieser Ansatz liefert Ergebnisse, die näher an der gewünschten Verteilung liegen (der maximale paarweise Winkel beträgt etwa 76,5 Grad)

Das Johnson-Lindenstrauss-(JL)-Lemma: geometrische Garantie

  • Das JL-Lemma garantiert, dass bei einer zufälligen Projektion einer beliebigen Menge hochdimensionaler Datenpunkte in einen niedrigdimensionalen Raum die euklidischen Abstände nahezu erhalten bleiben
  • Für 1 bis N Punkte, einen Fehlerfaktor ε und eine Projektionsdimension k gilt
    (1-ε)||u-v||² ≤ ||f(u)-f(v)||² ≤ (1+ε)||u-v||²
  • Die minimal benötigte Dimension k ist: k ≥ (C/ε²) * log(N)
    wobei C eine Konstante ist, die die Erfolgswahrscheinlichkeit steuert
  • Üblicherweise wird C konservativ mit 4 bis 8 angesetzt, doch bei speziellen Projektionsverfahren (z. B. Hadamard-Matrizen oder Optimierungsverfahren) sind auch kleinere C-Werte erreichbar

Praktische Einsatzgebiete

  1. Dimensionsreduktion:
    • Beispiel: Kundenpräferenzen im E-Commerce lassen sich effizient von Zehntausenden Produktdimensionen auf einige Tausend Dimensionen abbilden
    • Dadurch werden Echtzeitanalyse hochdimensionaler Daten und Empfehlungssysteme möglich
  2. Analyse der Kapazitätsgrenzen von Embedding-Räumen:
    • Statt vollständiger Orthogonalität lässt sich ein Spektrum aus Ähnlichkeiten und Unterschieden zwischen Konzepten natürlich im Raum ausdrücken
    • Reale Wortbeispiele wie archery, fire, gelatinous und green zeigen, wie physische und abstrakte Bedeutungen in hochdimensionalen Räumen überlagert dargestellt werden

Experimentelle Analyse der Embedding-Kapazität

  • Optimierungen mit Hadamard-Matrix-Transformationen usw. zeigen C-Werte von 2,5 bis 4; bei GPU-basierter Optimierung können sie noch deutlich niedriger ausfallen
  • Experimenteller Aufbau: N Standard-Basisvektoren werden nacheinander in einen k-dimensionalen Raum projiziert, mit 50.000 Optimierungsdurchläufen
  • Beobachtungen:
    1. Der C-Wert steigt mit wachsendem N zunächst bis zu einem Maximum (~0,9) und fällt danach allmählich
    2. Mit steigendem Verhältnis N/k sinkt C auf unter 0,2
  • Dies ist auf die Effizienz des Sphere Packing in hochdimensionalen Räumen zurückzuführen
  • Das deutet darauf hin, dass in der Praxis noch weit mehr Konzepte darstellbar sind als die theoretischen Obergrenzen vermuten lassen

Die praktische Bedeutung für Sprachmodell-Embeddings

  • Abhängig von der Embedding-Dimension k, dem annähernd orthogonalen Winkel F (90° minus tatsächlicher Winkel) und dem C-Wert ergibt sich für die speicherbare Zahl an Konzepten: Vectors ≈ 10^(k * F² / 1500)
    • k=12.288, F=1 (89°) → 10^8
    • F=2 (88°) → 10^32
    • F=3 (87°) → 10^73
    • F=5 (85°) → Speicherung von mehr als 10^200 Vektoren möglich
  • Schon 86 Grad reichen für mehr Vektoren als Atome im beobachtbaren Universum (10^80)
  • Mit anderen Worten: Reale Sprachmodelle können selbst bei relativ wenigen Dimensionen Millionen von Bedeutungen reichhaltig bewahren

Praktische Anwendungen und künftige Richtungen

  1. Effiziente Dimensionsreduktion:
    • Durch zufallsprojektionsbasierte Verfahren in Kombination mit Hadamard-Transformationen, BCH-Codierung usw. sind großskalige Dimensionsreduktion und schnelle Berechnungen auch ohne komplexe Optimierung möglich
  2. Design von Embedding-Räumen:
    • Das Verständnis der Raumkapazität erklärt, wie große Sprachmodelle wie Transformer selbst feine Konzepte wie Canadian oder Muppet-like gemeinsam mit ihren Bedeutungsbeziehungen erhalten können
  • Insgesamt sind die heutigen Embedding-Standards (1.000 bis 20.000 Dimensionen) für die Repräsentation menschlichen Wissens ausreichend; entscheidend ist das Lernen einer idealen Anordnung innerhalb dieses Raums

Fazit

  • Ausgehend von der Untersuchung subtiler Optimierungsprobleme in Verlustfunktionen ergibt sich ein tieferer Einblick in hochdimensionale Geometrie und die Grundstruktur des Machine Learning
  • Das 1984 veröffentlichte JL-Lemma liefert bis heute eine zentrale Grundlage für Machine-Learning-Embeddings, Informationsrepräsentation und Dimensionsreduktion
  • Zum Schluss wird Grant Sanderson, dem 3Blue1Brown-Kanal und Suman Dev für die Zusammenarbeit gedankt und die Freude an dieser Forschung und dem Schreiben geteilt

Weiterführende Lektüre

  1. Sphere Packings, Lattices and Groups – Conway & Sloane
  2. Database-friendly random projections: Johnson-Lindenstrauss with binary coins – Achlioptas
  3. Hadamard Matrices, Sequences, and Block Designs – Seberry & Yamada

1 Kommentare

 
GN⁺ 2025-09-16
Hacker-News-Kommentare
  • Die Implikationen dieser geometrischen Eigenschaft sind wirklich schockierend. Man kann sich eine einfache Abschätzung überlegen, wie viele nahezu orthogonale Vektoren man in einen k-dimensionalen Raum packen kann. Wenn man sich nur auf den Minimalwinkel zwischen Vektoren konzentriert, landet man letztlich bei einer Analyse von Kugelcodes (spherical codes). Trotzdem zitiert dieser Beitrag keinerlei bestehende Forschung zu Kugelcodes und wirkt in weiten Teilen so, als wäre er von einem Sprachmodell geschrieben worden. Dazu kommen zahlreiche grundlegende Inkonsistenzen, die die Zuverlässigkeit der Schlussfolgerungen untergraben. Zum Beispiel: Ist in dem Diagramm mit dem C-Wert in Abhängigkeit von K und N die x-Achse K oder N? In der Bildunterschrift steht, die x-Achse sei N (Anzahl der Vektoren), später wird aber erklärt, dass in einem „sehr großen Raum“ C=0,2 herauskam, während das Diagramm C=0,2 nur für N=30.000 und K=2 erreicht — also 30.000 Vektoren in einem 2-dimensionalen Raum! Wenn die x-Achse stattdessen K ist, extrapoliert der Beitrag Ergebnisse, die mit 2 Vektoren in 30.000 Dimensionen gemessen wurden, auf den Fall von 10^200 Vektoren in 12.888 Dimensionen, was keinen Sinn ergibt. Ich möchte die Arbeit anderer gern positiv und wohlwollend betrachten, aber die Flut an von LLMs geschriebenen Beiträgen auf Hacker News wird in letzter Zeit wirklich überwältigend

    • Zu sagen, etwas sei von einem LLM erzeugt worden, ist weder beweisbar noch besonders hilfreich; es ist direkter und sinnvoller, einfach zu sagen: „Da sind Fehler drin.“ Dass du die Fehler tatsächlich benannt hast, ist viel nützlicher. In der Abbildung scheint die x-Achse tatsächlich N zu sein

    • Daran, dass ich Kugelcodes nicht kannte, merkt man schon, dass die Terminologie in diesem Bereich ziemlich ungewohnt ist. Sogar Wikipedia scheint kaum etwas dazu zu wissen, und auch die Google-Ergebnisse drehen sich am Ende meist um optimales Packen wie beim Kugelgolf, und dann auch eher unterhalb von 32 Dimensionen. So etwas passiert öfter: bereits existierende Mathematik wird unter unintuitiver Fachsprache versteckt und dann neu entdeckt

    • Genau. Mich würde interessieren, welche Texte die geometrischen Eigenschaften hochdimensionaler Vektorräume und Informationen sowie Kugelcodes besser erklären

    • In dem von dir erwähnten Diagramm kann ich nicht sehen, dass bei K=2 C=0,2 erreicht wird. Bei K=3 geht es auch nur bis C=0,3 und dann endet es. Ich verstehe allerdings auch nicht ganz, warum das problematisch sein soll. Der Autor projiziert wohl N Basisvektoren in K Dimensionen, und C scheint so etwas wie ein Fehlermesswert für das Mapping vom N-Raum in den K-Raum zu sein. Wenn es einen Grund gibt, warum diese Idee nicht zum Diagramm passt, würde ich gern mehr dazu hören. In deinem Argument scheint dieses Konzept selbst gar nicht vorzukommen

  • Ich denke, der Autor fokussiert sich zu stark auf den Fall, dass alle Vektoren vollständig orthogonal sind, und überschätzt dadurch das tatsächlich tolerierbare Fehlerniveau. In Wirklichkeit ist entscheidend, dass nicht nur orthogonale Vektoren annähernd orthogonal bleiben, sondern dass auch zwischen Vektoren, die weit von Orthogonalität entfernt sind, die Reihenfolge der Abstände erhalten bleibt. Selbst bei viel kleinerem Epsilon kann es in der Praxis Probleme geben. Deshalb halte ich die Aussage „Wie diese Untersuchung zeigt, reichen etwa 1.000 bis 20.000 Dimensionen aus, um menschliches Wissen und Schlussfolgern vollständig zu erfassen“ für zu optimistisch

    • Vektoren werden üblicherweise auf die Oberfläche der n-Sphäre normiert, und die in der Praxis sinnvolle Distanz ist die Kosinusähnlichkeit. Deshalb ist „nahezu orthogonal“ in der Praxis relevant. Beim Training versucht man, bedeutungslose Repräsentationen auf der Sphäre stärker „orthogonal“ zu machen. Bei realer Hardware gibt es außerdem Grenzen bei der Gleitkomma-Präzision, weshalb dieser Ansatz besonders gut funktioniert. Übrigens wurde diese Idee nicht zuerst in dem Blog oder YouTube-Video vorgeschlagen. Die Relevanz dieses Lemmas für KI oder zumindest für das Training neuronaler Netze wurde schon vor etwa zehn Jahren von C. Eliasmith erwähnt und untersucht, lange bevor ultrahochdimensionale Wissensnetzwerke wie GPT in der Praxis überhaupt trainierbar waren

    • Die Logik der Behauptung im OP überzeugt mich zwar nicht, aber die Repräsentationsfähigkeit von etwa 20.000 Dimensionen bleibt dennoch hoffnungsvoll

    • Ich bin auch nicht davon ausgegangen, dass alle Vektoren vollständig orthogonal oder unabhängig sind. Zu Distanzmaßen, krummlinigen Räumen (curvilinear space) und schiefen Koordinaten (skew coordinate) gibt es hier einen lesenswerten Beitrag: https://news.ycombinator.com/item?id=41873650. Es gibt grundlegende Fragen wie: „Wie sehr ändert sich ein Distanzmaß mit der Reihenfolge von Merkmalen?“, „Ändert sich die Ausgabe eines Algorithmus, wenn man die Reihenfolge aller orthogonalen Achsen vertauscht?“, „Sind Merkmale in hochdimensionalen Räumen wirklich alle in 90-Grad-Orthogonalität zueinander?“ Wenn Merkmale statistisch nicht unabhängig sind, dann ist vollständige Orthogonalität in der Praxis unwahrscheinlich, und die Nützlichkeit von Distanzmaßen, die Unabhängigkeit voraussetzen, könnte begrenzt sein. Lineare Modelle wie Naive Bayes, lineare Regression, logistische Regression, LDA und PCA sind bei nicht unabhängigen Merkmalen weniger zuverlässig. Auch Verfahren wie L1-Lasso- oder L2-Ridge-Regularisierung bergen Risiken bei Ausreißern oder bei nicht unabhängigen, nicht orthogonalen Daten. Weil sich [vollständige Orthogonalität] schwer erzwungen komprimieren lässt, ist schwer zu sagen, dass das Modell ausreichend ist. Und grundsätzlich stellt sich auch die Frage, ob in einem gbit überhaupt simultane Kodierung möglich ist

  • Der ChatGPT-Ton, der aus großen Teilen des Textes spricht, war ziemlich störend und machte es schwer, mich zu konzentrieren. Ich selbst nutze KI, um mein Englisch zu glätten, gebe aber die Anweisung, Ton und Form nicht zu stark zu verändern, damit genau das vermieden wird. Trotzdem halte ich diese mathematische Beobachtung für wirklich interessant. Sie hat grundlegende Implikationen dafür, wie große Sprachmodelle und andere KI-Systeme tatsächlich funktionieren. Wenn man betrachtet, wie hochdimensionale Daten in niedrigere Dimensionen projiziert werden und dabei ihre Struktur behalten, sieht man, dass solche Mechanismen entscheidend für Effizienz und Skalierung sind

    • Ironischerweise vermittelt gerade dein zweiter Absatz mit Wörtern wie „fascinating“, „crucial“ und „delving“ sowie mit seiner Absatzstruktur sofort den Eindruck, durch ChatGPT gegangen zu sein

    • Mich würde interessieren, welche Stellen für dich besonders stark nach GPT klangen? Liegt es an diesem aufzählenden Stil?

  • Solche intuitiven Theorien und das Johnson-Lindenstrauss-(JL)-Lemma sind im Bereich KI-Sicherheit zentral dafür, dass mechanistische Interpretierbarkeitsforschung mit SAEs (Sparse Autoencoders) überhaupt möglich ist. Viele dieser Ideen sind gut in einem Anthropic-Paper von 2022 zusammengefasst: https://transformer-circuits.pub/2022/toy_model/index.html

    • Mich würde interessieren, wo man das eigentliche Paper lesen kann und wo es veröffentlicht wurde
  • Ein Sprachmodell stopft „Konzepte“ nicht fest in die C Dimensionen einer einzelnen Schicht hinein (vermutlich wird die Zahl 12k so verwendet). Es braucht auch keine vollständige Orthogonalität zwischen Vektoren, um Konzepte getrennt zu behandeln. LLMs sorgen im Vektorraum nicht bloß dafür, dass Konzepte weit auseinanderliegen; Bedeutungen überlappen sich an vielen Stellen. Genau das ist der Kern dichter Repräsentationen (dense representations). Wenn man Sparse Autoencoder trainiert, kann man sehen, welche Neuronen themenbezogen aktiviert werden. Neuronpedia zeigt sehr gut, wie das in der Praxis aussieht: https://www.neuronpedia.org/

    • Genau diese Sparse-Autoencoder-Forschung basiert auf der in diesem Artikel beschriebenen Idee von „nahezu orthogonal“. Ursprünglich wurde das die „Superposition-Hypothese“ genannt: https://transformer-circuits.pub/2022/toy_model/index.html SAEs zerlegen dichte Vektoren in einem overcomplete Raum in spärliche „Konzepte“, die nahezu orthogonal zueinander sind. Das funktioniert in der Praxis tatsächlich gut und lässt sich sogar dafür nutzen, Embedding-Räume verschiedener LLMs effizient aufeinander abzubilden

    • Wenn man die Bedingung perfekter Orthogonalität lockert, kann man viel mehr Informationen unterbringen. Im Wesentlichen gruppiert man zusätzliche Informationen in „Bruchteilen von Dimensionen“ mit vorhandenen Dimensionen zusammen. Anders gesagt: Viele Konzepte sind nicht perfekt orthogonal zueinander, sondern haben Überschneidungen oder Korrelationen. Deshalb ist an dem Artikel nichts besonders Umstürzlerisches. Und der häufige Gebrauch von Wörtern wie „remarkable“, „fascinating“ und „profound“ verleiht ihm diesen etwas manipulativ wirkenden LLM-Ton

  • Eine eher kleine, aber interessante Beobachtung: Auch ihr könnt in so einem Raum Milliarden von Konzepten unterbringen. Selbst wenn man pro Vektorkomponente nur 4 Bit berücksichtigt, ist ein 12.000-dimensionaler Vektor in fp4 etwa 6 KB groß, also vergleichbar mit mehreren Seiten UTF-8-Text. Das entspricht ungefähr einem 3K-Token-Text bei 64K-Embeddings. Die Anzahl möglicher „Gedanken“, die sich so ausdrücken lassen, ist enorm. Schon bei der Verarbeitung eines einzelnen Tokens mischt jede Schicht ungefähr 60-mal frühere „Gedanken“ mit Attention und den in FFN gelernten Daten. Dadurch kann das Gesamtsystem komplexe Aufgaben bewältigen, etwa Bash in Python umzuwandeln oder Textaufgaben zu lösen. Natürlich würde ich nicht erwarten, dass das zu 100 % raumeffizient ist. Es muss auch funktionieren, wenn Vektoren mit unterschiedlicher „Stärke“ zusammengesetzt werden, und Training konvergiert nicht immer in Richtung der effizientesten möglichen Kompression. Aber selbst wenn man die theoretische Grenze nur als Obergrenze betrachtet, vermittelt das ein neues Gefühl dafür, wie dicht man den Begriff eines „Gedankens“ in ultrahochdimensionale Vektoren praktisch hineinpacken kann

  • Meine Intuition ist viel einfacher — unter der Annahme, dass Konzepte eine gewisse Hierarchie bilden, kann man grob abschätzen, wie viele Konzepte in einen 12.000-dimensionalen Raum passen. Wenn jedes Konzept zu allen anderen in mindestens einer Achse orthogonal ist, bedeutet das, dass es selbst dann eine Funktion gibt, die zwei Konzepte linear trennen kann, wenn ihre Kosinusdistanz nicht besonders groß ist. Im Extremfall wären dann bis zu 12.000! Konzepte möglich, also faktoriell viele — für die meisten Taxonomien viel mehr als genug

    • Um 12.000! Konzepte zu realisieren, müsste man für jedes Konzept eine Reihenfolge der Dimensionen zuordnen, aber im realen Modell hat die Reihenfolge der Dimensionen keine Bedeutung. Das heißt, [weight_1, weight_2,...] und [weight_2, weight_1,...] sind im Modell vollständig identisch. Praktisch kann man bei Sprachmodellen eher von 3^12.000 Konzepten ausgehen, wenn man annimmt, dass jede Achse nur positiv, negativ oder 0 sein kann. In Wirklichkeit sind in den meisten Vektoren bis auf einige Dutzend Achsen fast alle Werte nahe 0 (aufgrund begrenzter Trainingszeit)

    • Diese Zahl ist viel größer als die Anzahl der Atome im gesamten Universum (10^80) — ungefähr 10^43741

    • Schon die Annahme „Die Kosinusdistanz ist nicht besonders groß“ ist eine entscheidende Einschränkung

  • Wer schon einmal 20 Questions gespielt hat, weiß, dass man für Milliarden Konzepte keine 1.000 Dimensionen braucht. Solche riesigen Vektoren können weit komplexere Informationen als bloß Milliarden von Konzepten enthalten. Tatsächlich kann ein solcher Vektor ein ganzes Gedicht mitsamt der Position eines Tippfehlers repräsentieren und auffindbar machen. Wenn man wie bei GPT ein Gedicht einfügt und nach der Stelle des Tippfehlers fragt, muss diese Information irgendwo in den internen Schichten konkret unterscheidbar vorhanden sein

    • In Wirklichkeit ist das keine Eigenschaft eines einzelnen Vektors, sondern des gesamten Modells. Das Gesamtmodell verhält sich eher wie ein Vektor mit einer Billion Dimensionen

    • Mit binären Vektoren kann man in 20 Dimensionen schon etwas mehr als eine Million Konzepte darstellen. Mit 30 Dimensionen kommt man auf eine Milliarde Konzepte

  • In vielen Kommentaren wurden bereits diverse Schwächen des Artikels angesprochen, aber ich möchte noch eine ganz grundlegende Beobachtung ergänzen: Schon die Behauptung, man könne in 12k Dimensionen 10^200 Konzepte unterbringen, ist völlig absurd. Ein 12k-dimensionaler Vektorraum kann zwar viele einzelne Werte enthalten, aber das sind deshalb noch lange keine Konzepte. Diese Behauptung ist unsinnig. Shannon hätte dazu sicher auch etwas zu sagen

  • Der Kernfehler ist, dass es in Wirklichkeit gar keine zig Milliarden Konzepte gibt. Menschliche „Konzepte“ und maschinelle „Instanzen“ oder „Entitäten“ sind klar verschiedene Dinge. Instanzen gibt es unendlich viele, aber die Zahl abstrakter Konzepte, die wir tatsächlich zum Denken verwenden, ist viel begrenzter