Enthüllung der Geheimnisse großer Sprachmodelle: Ein tiefes Eintauchen in die Tokenisierung
Erinnerst du dich an die Summen, die OpenAs GPT-3 im Jahr 2020 umgibt? Obwohl nicht die erste in seiner Linie, katapultierten die bemerkenswerten Funktionen von GPT-3 von GPT-3. Seitdem sind unzählige große Sprachmodelle (LLMs) entstanden. Aber wie entschlüsseln LLMs die Sprache für Chatgpt? Die Antwort liegt in einem Prozess namens Tokenization. (Sehr empfohlen!)
Vor der Erforschung der Tokenisierung untersuchen wir kurz die Innenarbeit eines LLM. Überspringen Sie voran, wenn Sie bereits mit neuronalen Netzwerken und LLMs vertraut sind. Die Eingabe ist eine Folge von Tokens (Wörter, Phrasen oder Zeichen), die durch Einbetten von Schichten verarbeitet werden, wodurch sie in numerische Darstellungen umgewandelt werden. Diese Eingaben werden zusammen mit den Parametern des Netzwerks (Gewichte) in eine massive mathematische Gleichung eingespeist. Das Netzwerk macht zunächst zufällige Vorhersagen. Das Training passt iterativ diese Gewichte an, um die Ausgabe des Netzwerks an Muster in den Trainingsdaten auszurichten. Das Training beinhaltet daher das Finden des optimalen Gewichtssatzes, das die statistischen Eigenschaften der Trainingsdaten am besten widerspiegelt. Ursprünglich für die Übersetzung der neuronalen Maschine verwendet, ist es heute der Eckpfeiler von LLMs. href = "https://www.php.cn/link/f4a7536b061f291b6c11f5e4d6ebf7d"> https://www.php.cn/link/f4a7536b061f291b6c11f5e4d6eB7d Diese Seite bietet interaktive 3D-Visualisierungen von GPT-Architekturen und ihren Inferenzprozess. 85.584 Parameter) zeigt Eingangs-Token-Sequenzen, die durch Ebenen verarbeitet werden, und unterziehen Transformationen (Aufmerksamkeitsmechanismen und Feed-Forward-Netzwerke), um das nächste Token vorherzusagen. (Weitere Informationen zu der Trainingspipeline finden Sie in meinem vorherigen Artikel über Halluzinationen.)
Vorbetrag, die Anfangsstadium, erfordert einen massiven, qualitativ hochwertigen Datensatz (Terabyte). Diese Datensätze sind in der Regel proprietär. Wir werden den Open-Source-Datensatz für Fineweb als Beispiel aus der Umarmung von Face (verfügbar unter der Open Data Commons Attribution Lizenz) verwenden. ( Weitere Details zur Erstellung von Feinweb hier ). src = "https://img.php.cn/upload/article/000/000/174166081948412.jpg" Alt = "So brechen LLMs die Sprache aus"/> ein Beispiel aus feinweb (100 Beispiele). src = "https://img.php.cn/upload/article/000/000/174166082170272.jpg" Alt = "So brechen LLMs die Sprache auf"/> Unser Ziel ist es, ein neurales Netzwerk zu trainieren, um diesen Text zu replizieren. Neuronale Netze erfordern eine eindimensionale Abfolge von Symbolen aus einem endlichen Satz. Dies erfordert das Umwandeln des Textes in eine solche Sequenz.
Wir beginnen mit einer eindimensionalen Textsequenz. UTF-8-Codierung verwandelt dies in eine Rohbitsequenz.
diese binäre Sequenz, während technisch gesehen eine Sequenz von Symbolen (0 und 1) zu lang ist. Wir brauchen kürzere Sequenzen mit mehr Symbolen. Die Gruppierung von 8 Bits in ein Byte gibt uns eine Sequenz von 256 möglichen Symbolen (0-255).
sind Belästigungsausweise. src = "https://img.php.cn/upload/article/000/000/174166083192550.jpg" Alt = "So brechen LLMs die Sprache auf."/> Diese Konvertierung ist Tokenisierung. Die hochmodernen Modelle gehen weiter unter Verwendung der Byte-Pair-Codierung (BPE). Wenn beispielsweise "101 114" häufig erscheint, wird es durch ein neues Symbol ersetzt. Dieser Vorgang wiederholt sich, verkürzt die Sequenz und erweitert das Wortschatz. GPT-4 verwendet BPE, was zu einem Vokabular von rund 100.000 Token führt. Tokenisierung für verschiedene Modelle. Using GPT-4's cl100k_base encoder on the first four sentences yields:
<code>11787, 499, 21815, 369, 90250, 763, 14689, 30, 7694, 1555, 279, 21542, 3770, 323, 499, 1253, 1120, 1518, 701, 4832, 2457, 13, 9359, 1124, 323, 6642, 264, 3449, 709, 3010, 18396, 13, 1226, 617, 9214, 315, 1023, 3697, 430, 1120. 1093, 499, 0 </code>
https://www.php.cn/link/f4a75336b061f291b6c11f5e4d6eBf71)
Please replace the bracketed links with the actual links. Ich habe versucht, die ursprüngliche Formatierung und Bildplatzierungen wie angefordert beizubehalten.
Das obige ist der detaillierte Inhalt vonSo brechen LLMs die Sprache auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!