Zum Inhalt springen

Neuronales Netzwerk in LLMs mit Tokens

aus AufEinWort, der freien Forschung

Über diese Seite Werk


Gründet auf dem Werk „KI-Revolution“ Arnold Oberleiter
25. Oktober 2024 n. Chr. hrsg.  
AI mit Arnie
LLMs meistern
Funktionsweise von LLMs
Überarbeitung Liste Werke von Klaus Feldmann 
Abschrift
27. November 2024 n. Chr. erst.  
18:57 Uhr Ausgabe 00
Ausgabe 00
veröffentlicht
geprüft
↑ Neuronales Netzwerkwerk erklärt
→ Neuronales Netzwerk in LLMs mit Tokens
↓ Die Transformer-Architektur
Wie arbeitet ein neuronales Netz in einem LLM mit Tokens.mp4 Wie arbeitet ein neuronales Netz in einem LLM mit Tokens.pages

🎓 Neuronales Netzwerk in LLMs mit Tokens

📽️ 4 Wie arbeitet ein neuronales Netz in einem LLM mit Tokens (7:15)

Im letzten Video haben wir gelernt, wie ein neuronales Netzwerk funktioniert. Und keine Sorge, dieses Ding auf der Nase ist nur dafür da, dass ich etwas besser atmen kann – wegen meines Heuschnupfens. Aber du hast ja gesehen: Jedes Neuron wird ganz einfach feuern, wenn es korrekt getriggert wird, und die Gewichte werden einfach dementsprechend angepasst, wie gut der Output ist.

In diesem Video sehen wir uns an, wie ein solches neuronales Netz bei einem Large Language Model funktioniert. Im Groben ist das ganz ganz ähnlich, aber wir sollten uns das etwas genauer ansehen. Wenn man googelt, wie ein neuronales Netzwerk funktioniert, bekommt man ganz ganz viele verschiedene Bilder. Das einfachste Bild ist das da. Ich glaube, das Bild kam von Andrew Karpathy. Der hat auch ein super super gutes Video auf YouTube, wie LLMs funktionieren.

Im Groben sagt er uns hier, dass man ganz einfach „Cat set on a“ eintippen kann, und danach bekommen wir das Wort dazu „mat“ – z. B. zu 97 %. Wie funktioniert das alles? Diese Wörter die speist man ganz einfach in das neuronale Netz. Die richtigen Neuronen feuern und feuern und feuern, und irgendwann kommt ein Wort zum Schluss dabei raus. Das Wort ist hier ganz einfach „mat“ („Katze sitzt auf einer...“). Zum Schluss kommt „Matte“ dabei raus.

Wichtig ist: Das ist hier ein iterativer Prozess. Das heißt, wenn du fragst: „Was könnte ich heute Abend essen?“ – das ist die komplette Frage – dann wird das neuronale Netz diese Wörter nehmen, es wird sie danach durch dieses neuronale Netz jagen, und erstmal kommt das Wort „du“ dabei heraus, mit einer Wahrscheinlichkeit von z. B. 97 %. Danach geht das Ganze von vorne los, denn auch das Wort „du“ kommt hier vorne mit dazu. Und das nächste Wort ist danach wieder zu einer hohen Wahrscheinlichkeit „könntest“. Z. B.: „Du könntest heute zu Abend Steak essen.“ Das wird ganz einfach immer wieder und wieder wieder gemacht, und die Wörtchen, die bereits da sind, werden einfach immer mit eingespeist in dieses Netzwerk. So kann man mit relativ hoher Wahrscheinlichkeit herrausfinden, wie man die Dinge bekommt.

Nun ist das wichtig: Du weißt ja, diese Gewichte hier dazwischen, das sind tatsächlich Nummern. Und diese Nummern muss man natürlich mal nehmen – mit irgendetwas. Deshalb speisen wir in das neuronale Netzwerk nicht wirklich diese Wörter, sondern wir speisen Wort-Token in dieses neuronale Netzwerk.

OpenAI hat eine coole Webseite. Das nennt sich Tokenizer. Hier bei diesem Tokenizer kannst du z. B. eingeben: „Was könnte ich heute zu Abend essen?“ Jetzt siehst du: Wir haben hier 1, 2, 3, 4, 5, 6, 7 Wörter. Das sind 36 Charaktere, aber wir haben 10 Token. Ein Token ist in etwa ein Dreiviertel-Wort.

Hier siehst du, wie diese Token aufgebaut werden. Was ist hier ein Token? „Leerzeichen könnte“ ist hier ein Token, „ich“ ist der nächste Token, danach „Leerzeichen eh“ und „Ute“ ist ein separater Token. Du siehst hier: Das wird nicht genau nach Wörtern zerteilt, sondern es werden solche kleinen Cluster gebildet – ganz einfach Cluster, wie es für das neuronale Netz am meisten Sinn macht. Das heißt, die Wörter werden erst geteilt in Wort-Token, und wenn wir hier die Token-IDs ansehen, dann sehen wir uns das da an. Also, der erste Token ist diese Nummer, danach diese Nummer, diese, diese, diese, diese. Das heißt, in das neuronale Netzwerk werden diese Nummern eingespeist – und nicht etwa dieser Text.

Ich habe das jetzt gerade nochmal neu eingetippt, und je nach Rechtschreibung verändern sich hier ein paar Dinge. Und man muss hier dazu sagen, dass Rechtschreibung auch nicht wichtig ist. Ich könnte z. B. hier ein Leerzeichen dazu machen, es ändern sich einige Dinge, aber es ändert sich nicht allzu viel, tatsächlich. Also die Großschreibung, die Kleinschreibung und so weiter – ja das ist nicht wirklich wichtig. Auch die Rechtschreibung ist nicht wichtig. Wenn wir nochmal auf die Token-IDs klicken, dann sehen wir: Diese Token die werden ganz einfach in dieses neuronale Netz geschmissen, und diese Token werden immer multipliziert mit den Gewichten. Tatsächlich und so feuern dann nur die Neuronen, die jeden Sinn machen. Am Ende kommt zu einer relativ hohen Wahrscheinlichkeit das richtige Wort raus.

Wie gesagt: Diese neuronalen Netze werden natürlich trainiert, solange, bis sie das Zeug richtig richtig gut machen. Und sobald sie das gut machen, bekommen wir auch Antwort zurück. Wenn ich z. B. das da kopiere, ich gehe in ChatGPT, füge es ein und sende es los, dann wird ChatGPT diese Wörtchen hier in diese Wort-Token teilen. Diese Wort-Token fließen danach sozusagen in dieses neuronale Netzwerk, und jedes Wort wird immer neu reingefüttert. Und zu einer großen Wahrscheinlichkeit bekomme ich eine Antwort, die Sinn macht.

Hier siehst du: Ich bekomme ganz viele verschiedene Antworten. Hier sind einige Vorschläge für ein leckeres Abendessen. Und wichtig ist, dass wir jetzt diese Token im neuronalen Netzwerk haben. Danach kommen eben immer die neuen Token von jedem verschiedenen Wörtchen, von jedem Wörtstückchen, immer dazu. Ein Token ist in etwa ein Dreiviertel-Wort. Und es ist ganz ganz wichtig zu wissen, dass es ein Token-Limit gibt. Über das Token-Limit sprechen wir jedoch erst ein klein wenig später, da das jetzt noch nicht wichtig ist.

In diesem Video haben wir gelernt, wie ein neuronales Netz in Zusammenhang mit einem Large Language Model funktioniert. Es wird ganz einfach der Input genommen und der wird in das neuronale Netz geschmissen. Jedoch werden die Wörter erstmal in diese Wort-Token geteilt, damit wir mit diesen Token im neuronalen Netz unsere Multiplikation machen können. Und die richtigen Gewichte feuern dann die richtigen Neuronen. Danach bekommen wir erstmal ein Wort zurück. Dieses Wort wird dazu genommen zu unserem Satz, und das ist ein Prozess, der aufeinander aufbaut. Jedes Wort wird immer mit eingespeist, und danach wird anhand von Wahrscheinlichkeiten errechnet, welches Wort das Richtige ist, weil eben nur die richtigen Neuronen feuern.

Und mittlerweile sind diese Large Language Models ganz gut darin. So oder so ähnlich funktioniert das und wichtig ist, dass wir bei diesem Token auch ein Limit haben. Sobald dieses Limit überschritten wird, kann das Modell nicht mehr wirklich merken, worüber wir gesprochen haben. Darüber sprechen wir aber etwas später, da es noch nicht ganz so weit ist. Wenn man sich klar macht, wie viel ein Large Language Model tatsächlich wissen muss, damit es immer mit einer guten Wahrscheinlichkeit das nächste Wort errechnen kann, dann wird ganz ganz schnell klar, dass hier doch ein klein wenig Magie passiert. Denn wenn man hier spezifische Fragen stellt, dann muss das Modell natürlich auch ganz ganz viele spezifische Antworten darauf haben. Deshalb brauchen wir so viel Computing Power.

Und im nächsten Video sehen wir uns an, dass wir noch nicht mal so viel wissen, wie das alles ganz genau passiert.