Embeddings: Die geheimen Bausteine der KI

Shownotes

Was steckt eigentlich hinter Begriffen wie Embeddings, die überall in der KI-Welt auftauchen? In dieser Folge nehmen wir euch mit auf eine Reise zu den kleinsten, aber entscheidenden Bausteinen neuronaler Netze. Wir zeigen, warum Embeddings mehr sind als nur Zahlenkolonnen und wie sie es Systemen wie ChatGPT ermöglichen, mit Bedeutung und Konzepten zu rechnen. Dabei ziehen wir Vergleiche zu Pixeln, Quartettkarten und Alltagsrätseln, um das vermeintlich esoterische Thema greifbar zu machen. Am Ende wird klar: Wer Embeddings versteht, blickt tiefer in das Innenleben moderner KI – und kann ihre Magie besser einordnen. Hört rein und entdeckt mit uns, wie aus Mathematik plötzlich Bedeutung wird!

Haben Sie Feedback oder Anregungen für kommende Folgen? Wir freuen uns über eine Nachricht!

kuenstlichklug@gmail.com

RAG (Retrieval-Augmented Generation)

https://de.wikipedia.org/wiki/Retrieval-Augmented_Generation

Deep Learning

https://de.wikipedia.org/wiki/Deep_Learning

Neuronales Netz

https://de.wikipedia.org/wiki/K%C3%BCnstlichesneuronalesNetz

Embeddings (Maschinelles Lernen)

https://de.wikipedia.org/wiki/Worteinbettung

DIVISIO GmbH

https://divis.io/

afritz consulting GmbH

https://afritz.co/

Transkript anzeigen

00:00:00: Bits sind entweder Nullen oder Einsen und werden von Computern zum Rechnen benutzt.

00:00:05: Klar, Pixel sind kleine bunte Quadrate, die dafür sorgen, dass man auf einem Bildschirm was sieht.

00:00:11: Einfach.

00:00:13: Für Computer und digitale Bilder weiß inzwischen jeder, was die kleinsten Bausteine sind.

00:00:18: Aber wie sieht das bei neuronalen Netzen aus?

00:00:21: Wie können Chat, GPT und Co.

00:00:23: mit Ideen und Konzepten rechnen?

00:00:26: Die Antwort lautet Embeddings.

00:00:28: Das sind die Bausteine, die die Basis für jedes Deep Learning System bilden und das Thema für die heutige Folge.

00:00:36: Herzlich willkommen zu einer neuen Folge von Künstlich Klug, dem KI-Podcast ohne Hype, dafür mit Fakten und Begeisterung, von Afritz Consulting und Division.

00:00:47: Hier im verregneten Köln heißen euch wie immer Christoph und Andreas willkommen.

00:00:53: Hi Christoph.

00:00:54: Hallo Andreas.

00:00:55: Wir haben uns heute ein Thema vorgenommen, zu dem ich ehrlicherweise noch gar nicht so viel weiß und du mir immer gesagt hast, das muss man aber wissen.

00:01:02: Genau.

00:01:03: Nämlich das Thema Embeddings.

00:01:05: Richtig, das ist ein Thema, was mir am Herzen liegt.

00:01:08: Ja.

00:01:08: Deshalb gehe ich dir auch immer auf den Keks damit und jedem anderen das zuhören will.

00:01:13: Embeddings finde ich sind deshalb so wichtig, weil es eine der wichtigsten Grundlagen ist für KI, wie wir sie im Moment haben.

00:01:23: Wir haben ja schon gesagt in einer der letzten Folgen, es gibt verschiedene Arten von KI's und LLMs sind auch nicht die einzigen, aber den Begriff Deep Learning, der ist ja auch schon seit ein paar Jahren präsent, also das KI mithilfe von tief geschachtelten neuronalen Netzen und dazu gehören die LLMs, LLMs sind ein Teil davon, es gibt da noch viel mehr und bei all diesen Systemen wird ja immer gesagt, dass es Blackboxen sind.

00:01:50: Das heißt, wir wissen nicht genau, wie sie funktionieren.

00:01:52: Und das stimmt auch.

00:01:54: Aber wenn man versteht, was Embeddings sind, bekommt man ein wesentlich besseres Gefühl davon, wie sie funktionieren.

00:02:00: Und Embeddings sind sowohl, was die Eingabe in diese Systeme angeht, als auch die Ausgabe und für viele lustige Tricks und Anwendungen, die man machen kann, essentiell.

00:02:11: Ich sage immer, wenn man wissen möchte, wie Computer Bildverarbeitung machen, wie ein Photoshop funktioniert oder ein Malprogramm oder ein Paint oder warum Bilder auf dem Bildschirm erscheinen und wenn man was über Grafik wissen will, muss man schon eigentlich verstehen, was ein Pixel ist.

00:02:26: Ich denke, das ist etwas, was inzwischen auch jeder Computerleihe weiß, was ein Pixel ist, also ein bunter Punkt auf dem Bildschirm.

00:02:33: Da gibt es halt nun eine endliche Anzahl.

00:02:35: Und so ein bisschen ist es bei Deep Learning und Embeddings, weil Deep Learning die Embeddings ganz tief die Basis bilden davon, wie diese Systeme überhaupt funktionieren können.

00:02:48: Okay.

00:02:49: Lass uns mal vielleicht irgendwie, bevor wir über Einsatzmöglichkeiten oder andere Dinge zum Thema im Bedding sprechen.

00:02:56: Wir hatten letztens irgendeinen Anwendungsfall, ich habe es genutzt beim Programmieren und habe quasi eine Art des Embeddings genutzt, um für mich quasi den Code, den ich habe, zwischenzuspeichern, mal blöd gesagt.

00:03:09: Genau, du hast auf meine Empfehlung hin mit RU Code experimentiert und das ist ein Plugin, ein Programm für Visual Studio, um Programmierern mit KI zu helfen.

00:03:23: Und das hat ein neues Feature.

00:03:24: Wie du sagtest, nämlich den Code Index.

00:03:27: Das heißt... Das geht den gesamten Code durch, den man hat und packt ihn in eine spezielle Art von Datenbank.

00:03:32: Und das tut es mithilfe von Embeddings.

00:03:34: Und das, was da passiert, ist ein sogenanntes Racksystem.

00:03:38: Aber dazu machen wir eine eigene Folge, weil jetzt sind wir schon am Ende der Folge quasi angelangt, nämlich bei einer der modernen Anbindungen für Embeddings.

00:03:45: Und da habe ich dir gesagt, dass das auch nur funktioniert mithilfe von diesen Embeddings.

00:03:51: Und ich denke, wir sollten jetzt einmal kurz auflösen, was denn jetzt ein Embedding ist.

00:03:58: Und zwar ist es so, dass neuronale Netze, die keine Gehirne sind, dann sollen wir wieder sagen, ganz wenig oder praktisch gar nichts mit menschlichen Gehirn gemein haben, die können hier nur mit Zahlen arbeiten.

00:04:11: Und dann fragt man sich manchmal, wie kann ein System das nur mit Zahlen arbeitet, Sprache verstehen, Text, aber auch Bei Bildern.

00:04:20: kann man sich das noch vorstellen, denn wenn ich weiß, was ein Pixel ist und ein Pixel sind Farbwerte, dann ist klar, Farbwerte sind Zahlen.

00:04:28: Und dann kann ich die Zahlen ins neuronale Netz stecken.

00:04:31: Und dann, auch wenn man nicht weiß, wie die Mathematik funktioniert, kann ich mir vorstellen, dass ich mit einem Pixel rechne.

00:04:35: Aber wie rechne ich mit einem Wort wie Katze?

00:04:38: Das sind ja Buchstaben.

00:04:39: Jetzt kann ich natürlich hingehen und jedem Buchstaben eine Zahl zu weisen.

00:04:42: Aber das ist ein solcher Salat, das funktioniert praktisch gar nicht.

00:04:46: Also das funktioniert einfach nicht, weil die Tatsache, dass diese Zahlenkolonne jetzt Katze bedeutet, sagt dem System nichts.

00:04:54: Und Embeddings gibt es vor allem möglichen Arten von Information.

00:04:58: Man kann aber sehr gut lernen, wie es funktioniert, wenn man mal Wörter als Beispiel nimmt, zum Beispiel Katze.

00:05:04: Und was man jetzt macht, wie verwandle ich das Wort Katze in eine Kolonne von Zahlen?

00:05:09: Ich könnte jetzt zum Beispiel hingehen, manche Leute, die zuhören, haben vielleicht mal ein Fantasy-Spiel gespielt, so eins mit zwanzigseitigen Würfeln, Dungeons & Dragons oder so, oder auch ein Computerspiel, wo ich einen Charakter habe, der Eigenschaften hat.

00:05:22: Dann kann ich hingehen und kann zum Beispiel einem Charaktereigenschaften geben, wie Stärke, fünf, Geschwindigkeit, sieben und so weiter.

00:05:29: Das gibt es in Spielen sehr oft oder auch an anderen Stellen.

00:05:32: Quartettspielen ist ein wunderbares

00:05:34: Beispiel.

00:05:34: Muss ich daran

00:05:35: denken?

00:05:35: Genau.

00:05:35: Muss ich so als Kind auch Quartett gespielt?

00:05:37: Autokquartett, die PS Anzahl und genau.

00:05:40: Genau.

00:05:41: Was war dein Lieblingsquartett?

00:05:43: Ich glaube, so ein Autoquartett.

00:05:44: Bei mir war es Dinosaurier.

00:05:46: Ich habe tatsächlich mein heiß geliebtes Dinosaurierquartett noch von damals.

00:05:51: Quartette sind perfekte Beispiele für Embeddings.

00:05:54: Nehmen wir mal das Autoquartett.

00:05:56: Da habe ich gewisse Eigenschaften eines Autos und kann die in Zahlen packen.

00:06:00: Also ich kann zum Beispiel sagen PS Anzahl, Höchstgeschwindigkeit von null auf hundert innen.

00:06:06: Und dann habe ich auf einmal eine Kolonne aus Zahl.

00:06:09: Das Fachwort, Vorsicht Matte, nennt man Vektor.

00:06:14: Manche haben das in der Schule schon mal gehört, das ist aber auch gar nicht schlimm.

00:06:16: Jeder, der mal mit einer Tabellenkalkulation gearbeitet hat, weiß das.

00:06:20: Das wäre eine Spalt von Zahlen in Echsel und so kann man sich das vorstellen.

00:06:23: Und jetzt kann ich auf einmal was Interessantes machen, weil ich kann mir diesen Vektor angucken und wenn ich weiß, dass ich über Autos spreche, kann ich jetzt gucken, wie ähnlich sich zwei Autos.

00:06:34: sind, weil ich kann diese ganzen Zahlen voneinander abziehen und dann habe ich Abstände und wenn die Abstände fast null sind, dann weiß ich zum Beispiel, die zwei Zahlen sind ähnlich.

00:06:44: Das heißt, ich kann auf einmal anfangen mit mathematischen Operationen, da wollen wir jetzt nicht in die Tiefe gehen, was das alle sind, da gibt es ganz abgefahrene Sachen, die man machen kann, aber ich kann auf einmal Mathematik auf einer Bedeutung machen.

00:06:56: Also ich habe nach einem gewissen System Bedeutung in eine Kolonne Zahlen codiert.

00:07:02: Bei der Katze könnte ich das zum Beispiel machen.

00:07:04: Ich weiß, ich codiere Wörter und dann kann ich zum Beispiel sagen... Mein erstes ist die Frage, ist es ein Nomen oder ein Verb?

00:07:12: Kann ich auch als Zahl codieren, weil ich kann nicht nur Sachen wie Geschwindigkeit oder Größen codieren.

00:07:17: Ich kann auch sagen, wenn ich eine endliche Auswahl von Begriffen habe, zum Beispiel Verb, Adjektiv, Nomen,

00:07:23: etc.,

00:07:24: dann kann ich sagen, das erste ist Null, das nächste ist eins, das nächste ist zwei.

00:07:28: Und dann kann ich zum Beispiel sagen, Katze ist Nomen, dann mache ich eine Null.

00:07:33: So, dann kann ich sagen, ist es... ist es ein Tier, ja, nein, zum Beispiel, Null, Eins sagen.

00:07:38: Also alles, was sich mit Null, ja, nein machen, codieren lässt sich ganz einfach in die Zahlen Null und Eins umwandeln.

00:07:45: Und so kann ich mir alle möglichen wichtigen Fragen über einen Wort stellen.

00:07:49: Und das können sehr, sehr viele sein.

00:07:51: Und dann habe ich dafür eine Kolonne von Zahlen.

00:07:54: Und das nennt man dann einen Embedding Vector.

00:07:57: Der hat in der Regel die Größe irgendwo, wenn sie ganz klein sind, ein paar Dutzend.

00:08:02: Die meisten sind einige Hundert oder einige Tausend Einträge lang, dann spricht man von Dimensionen.

00:08:08: Wichtig an der Stelle ist auch wieder so ein mathematischer Begriff, der dann so isoterisch oder science-fictionmäßig belastet wird.

00:08:15: Dimension ist einfach nur die Anzahl von etwas.

00:08:18: Das ist überhaupt kein hochtrabender Begriff.

00:08:20: Also die Anzahl der

00:08:22: Einträge.

00:08:23: Einträge, die da drin sind, die ich beispielsweise mal im Auto im Auto Quartett zuweisen.

00:08:27: Genau, da wäre die Auto Quartett, also die Embeddings für Autos aus dem Auto Quartett hat wahrscheinlich Dimensionen sechs oder acht.

00:08:33: Wie viele Anträge sind da drin, können wir uns erinnern so in der Größenordnung.

00:08:37: Genau, das wäre dann ein sehr kleines Embedding, das sogar funktioniert für einzelne Sachen.

00:08:42: So, jetzt ist natürlich die Frage, wie komme ich auf so ein Embedding?

00:08:46: Jetzt kann ich natürlich theoretisch jemanden hinsetzen oder ja, ein paar arme Studenten oder Click-Worker oder ähnliches, den gebe ich so ein Telefonbuch an Regeln, wie sie das kodieren sollen.

00:08:56: und dann kriegen die zusätzlich noch einen Wörterbuch und sagen so, du Du nimmst jetzt A bis B, du nimmst C, D, E und so weiter.

00:09:04: So funktioniert es nicht.

00:09:07: hat man tatsächlich in der Frühzeit, da nannte man das noch Featurevektoren, das ist einfach nur ein anderes Wort für das Gleiche in Anglismus, also Feature, Eigenschaften, genau.

00:09:18: Da hat man die tatsächlich noch händisch engineered, offen gut neue Deutsch, also mit einem Programm geschrieben, das aus verschiedenen Informationen diese Sachen zusammengelegt hat.

00:09:29: Das war in der Frühzeit, also nicht in der Frühzeit, so lange ist es gar nicht her, also es fühlt sich heute an wie die Frühzeit des Machine Learnings.

00:09:37: Da hat man solche Featurevektoren per Hand erstellt und hat darauf dann andere Sachen gemacht.

00:09:41: Beim Deep Learning erstellt man die Dinge nicht mehr per Hand, sondern jetzt kommt das ganz, ganz Faszinierende an diesen Ding an, wenn ein LLM jetzt über diese Wörter nachdenken soll.

00:09:55: Und das tut es ja.

00:09:56: Wir haben ja in der Einfolge gesagt, das bekommt lauter Tokens oder sagen wir mal Wörter als Eingabe und muss dann eine Ausgabe berechnen.

00:10:04: Und das kann es nur mit Mathematik tun, weil es ist kein Gehirn mit irgendwelchen Sachen, sondern es sind einfach nur mathematische Formeln aufeinander gestapelt.

00:10:11: Dann muss es die Zahlen haben.

00:10:13: Aber die Zahlen müssen ja so gewählt sein, dass es Katze und Hund unterscheiden kann.

00:10:18: Das haben wir aber gerade gesagt, das machen wir gar nicht selber.

00:10:21: Und das ist einer der faszinierenden Tricks, wie LLMs funktionieren.

00:10:25: Die bekommen ein Wörterbuch aller Wörter oder Tokens, bleiben wir bei Wörtern, die sie kennen.

00:10:31: Das ist sehr groß.

00:10:33: Und dann bekommt jedes Wort ein Embedding zufällig ausgewählt.

00:10:38: Und das ist das Faszinierende.

00:10:40: Diese Embeddings bestehen komplett aus Zufallszahlen.

00:10:43: Das heißt, am Anfang ist es so, als würde das LLM nur weißes Rauschen lesen.

00:10:50: Das ist total skurril.

00:10:51: Also, stellt ihr vor, alle Buchstaben oder alle Wörter, die du kennst, werden durch zufällige Farbpunkte kodiert.

00:10:58: Das sind aber immer die gleichen Farbpunkte.

00:11:01: Und das Besondere ist, dass diese Embeddings als Teil des sogenannten Trainingsprozesses mitoptimiert werden.

00:11:09: Das heißt, dass LLM lernt nicht nur die eigenen Gewichte, wo dieses schlaue Weltwissen kodiert ist, warum du ein LLM fragen kannst, was ein Embedding ist.

00:11:18: Das heißt, es wird nicht nur das neugonale Netz selber mitoptimiert, sondern auch die Embeddings, weil der mathematische Prozess, der dahinter steht, dem ist das egal, der optimiert Zahlen, sodass das Ergebnis stimmt.

00:11:29: Dem ist es total egal, welche Zahlen es optimiert.

00:11:32: Das heißt, der geht durch das gesamte System durch.

00:11:36: Dadurch ist es so, dass man quasi ein Wort reinschmeißen kann.

00:11:40: Ich weiß also, Katze ist Wort, siebenhundertdrehen, siebzig.

00:11:44: Und dann wird dieses Embedding ausgewählt und dann fängt dieser Begriff an, durch das neuronale Netz zu laufen.

00:11:52: Und das ist also ein Embedding, eine Kolonne von Zahlen, die gewisses Wissen kudiert.

00:11:57: Das Problem ist, weil das LLM beim Trainingsprozess das selber optimiert.

00:12:03: Also der Optimierungsprozess verschiebt diese Zahlen in Milliarden von Schritten ganz vorsichtig, so dass auf einmal drinsteht.

00:12:09: Die Katze ist flauschig, die ist nicht zu groß, nicht zu klein.

00:12:13: Da sind all diese Informationen, die wir haben über so ein Wort, die stecken in diesem Embedding auch drin.

00:12:20: Aber wir können halt nicht, wie in meinem schönen Beispiel, sagen, ein Antrag, ist ein Sieben, daher weiß ich, es ist ein Säugetier.

00:12:27: Das geht leider nicht.

00:12:29: Das heißt, auf eine gewisse Art und Weise ist das in Bedding dann trotzdem eine Black Box.

00:12:33: Das heißt, wir wissen, wie es funktioniert im Prinzip.

00:12:36: Aber wir können sie leider trotzdem nicht auslesen.

00:12:38: Das ist eine sehr spannende Sache.

00:12:40: Jetzt gibt es zwei Begriffe im Zusammenhang mit Embeddings, die immer wieder fallen.

00:12:45: Eins davon ist Retrieval.

00:12:48: Wie bedeutet das quasi?

00:12:50: Ich hole die Informationen aus dem LLM raus und bekomme damit quasi was wieder?

00:12:55: Oder was ist damit gemeint?

00:12:56: Ja, fast nicht aus dem LLM selber.

00:12:59: Das Besondere ist jetzt, ich habe ja gesagt, ich kann mir zwei Embeddings anschauen und herausfinden durch eine relativ simple mathematische Berechnung, wie ähnlich die sind.

00:13:10: Das heißt ich zähle die Zahlen voneinander ab und guck einfach wie schlimm ist mein Abstand.

00:13:15: Das bedeutet jetzt... Ich kann nach Dingen suchen, die sich ähnlich sind.

00:13:20: Zum Beispiel mit anderen Neuronalnetzen, die mit Bildern arbeiten, da muss man jetzt nicht erklären, wie diese Embeddings zustande kommen.

00:13:27: Es ist auch ein spannendes Prinzip.

00:13:30: Aber diese Neuronalnetze können sich zum Beispiel ein Foto nehmen und erzeugen aus einem Foto ein Embedding und das Embedding beschreibt, was auf dem Foto ist.

00:13:41: Das bedeutet, wenn ich ein Foto habe von einer Katze und das Wort Katze, Und das ist dann echter Trick.

00:13:48: Ich nehme das Bildneuronale Netz und das Wortneuronale Netz und ich trete mir die auf eine Art und Weise, dass dies gleiche Embedding erzeugen.

00:13:56: Ganz coole Tricks.

00:13:57: Dann bekomme ich einen Embedding, das heißt Katze.

00:13:59: Egal ob ich ein Foto durch das erste Neuronale Netz geschickt habe und hinterher einen Embedding bekommen.

00:14:06: Oder ob ich das Wort durch das andere Neuronale Netz schick und hinterher einen Embedding bekommen.

00:14:11: Beide Embeddings heißen Katze.

00:14:13: Das heißt, ich kann zum Beispiel sagen, ich brauche Fotos von Katzen.

00:14:19: Und dann kann ich mir meine Fotos anschauen, für die ich meine Embeddings habe und kann auf einmal Fotos von Katzen finden.

00:14:25: Oder ich kann was anderes machen.

00:14:27: Ich kann zwei Bilder nehmen.

00:14:29: So funktioniert zum Beispiel die Google-Bildersuche.

00:14:32: Google hat ja die Funktion, dass ich mit einem Foto suchen

00:14:35: kann.

00:14:36: Wenn ich also diese Tasse oder ein Gegenstand erwerben will, dann kann ich also ein Foto von dem Ding machen, macht die Bildersuche und dann findet der mir Bilder, die so aussehen wie mein Bild.

00:14:50: Wenn ich mit Pixeln arbeiten würde, ist das fast unmöglich, weil ich habe eine andere Kameraeinstellung, die Beleuchtung ist nun ein bisschen anders.

00:14:57: Da finde ich nie das Bild, das so aussieht wie meins.

00:15:02: Aber durch das Embedding geht es, weil das Embedding enthält Bedeutung.

00:15:07: Das Foto enthält die Pixel im Foto, sind auch nur Zahlen.

00:15:11: Ich könnte auch einfach die Pixel in dem Foto von oben nach unten als Kolonne von Zahlen schreiben.

00:15:16: Aber die codieren nur Helligkeit und Farbe.

00:15:21: Aber das Embedding encodiert, was es bedeutet, was auf dem Foto ist.

00:15:26: Und dadurch kann ich Dinge nach ihrer Bedeutung suchen.

00:15:29: Also ich kann Bilder, Suchen.

00:15:32: diese aussehen wie ein anderes Bild.

00:15:33: und jetzt kommen wir zu deinem Code Beispiel.

00:15:35: Ich kann zum Beispiel in meiner Code Basis nach Bedeutung suchen, wenn ich zum Beispiel wissen will, in meinem Code, wo wird ein neuer Benutzer angelegt?

00:15:47: dann habe ich für dieses Code Schnipsel mit einem anderen neuronalen Netz, das darauf spezialisiert ist.

00:15:53: Embedding für Code Schnitzel.

00:15:56: Nicht für Code Schnitzel, sondern für Code Schnipsel zu erzeugen.

00:16:00: Dann kann es all diese Embeddings durchgehen, ohne ständig den Code lesen zu müssen.

00:16:05: Und ich habe hier meine Frage, ich will irgendwas wissen über den User-Login und dann kann ich feststellen, ob dort etwas mit User-Login passiert und kann so also die Stellen herausfinden, in denen es darum geht, dass ein User eingelobt.

00:16:19: Genau, ich glaube der Gedanke dahinter ist ja, Tokens zu sparen, also sprich schneller an die Stellen zu kommen im Code, an denen es relevant ist, dort die Änderungen vorzunehmen.

00:16:30: Das wäre jetzt ein spezielles Beispiel für Code, aber generell die Embeddings für Suche zu verwenden ist ein ganz neuer Trend.

00:16:38: Dann sind wir wieder bei dem Rack-Thema.

00:16:41: Wobei, das ist das, wofür es im Moment gehypt wird.

00:16:44: Also jeder Pseudo-Experte sagt als erstes, ja, Embedding, das ist für Rag.

00:16:52: Das ist nicht ganz falsch, aber das ist nur ein kleiner Aspekt.

00:16:56: Ich kann diese Suche ja auch anders machen.

00:16:58: Ich kann auch tatsächlich, wie man es früher gemacht hat, einfach nach Wörtern suchen und das ist auch in vielen Fällen okay.

00:17:06: Und umgekehrt kann ich mit Embeddings noch ganz tolle andere Sachen machen, denn die fliegen wirklich überall in diesem Bereich rum.

00:17:15: Also Embeddings sind die Eingabe für manche neuronale Netze, für andere neuronale Netze sind sie die Ausgabe.

00:17:23: Und das Spannende ist, wenn ein neuronales Netz irgendetwas verarbeitet.

00:17:28: Egal was, eine Audioaufnahme, ein Foto von dir, etwas, was du gesagt hast, ein Text von dir, Wurst.

00:17:35: Alles, was durch das neuronale Netz durchläuft, wird irgendwann zu einem Embedding.

00:17:40: Denn der Trick ist, diese Netze sind schichtweise aufgebaut.

00:17:43: Nach jeder Schicht habe ich ein neues Ergebnis.

00:17:46: Mein Ergebnis ist was?

00:17:47: Eine Kolonne von Zahlen.

00:17:48: Weil das System kann nichts anderes als mit einer Kolonne von Zahlen zu arbeiten.

00:17:53: Aber diese Systeme

00:17:54: müssen

00:17:55: Bedeutung erfassen, um ein Problem zu lösen.

00:17:58: Das heißt, die Netze entwickeln intern bei ihrer Verarbeitung stückweise immer was, ein Embedding.

00:18:06: Das heißt, wenn ich ein Netz irgendwo aufschneide an irgendeiner Stelle in der Berechnung, habe ich irgendwo dazwischen wieder ein Embedding.

00:18:12: Und das ist das Faszinierte.

00:18:13: Die gehen rein, die gehen raus, die sind das Ergebnis jeden Zwischenschrittes und jeder Heck und jede neue Technik, die da gemacht wird, nicht jede, aber unglaublich viele sind das.

00:18:22: Deshalb sind das sozusagen die Atome des Deep Learning.

00:18:26: Genau.

00:18:26: Und um einmal zur Folge eins zu springen, wo wir ja auch LLMs und das Thema Next-Token-Prediction quasi erklärt haben, Wie dieses Next Token, das hängt ja auch mit den Embeddings zusammen, richtig?

00:18:40: Richtig.

00:18:40: Auf der einen Seite ist das Token selber ja repräsentiert durch ein Embedding.

00:18:45: Das heißt, das Token Katze hat ein Embedding sowohl beim Input als auch bei der Prozessierung dazwischen.

00:18:54: Wenn ich jetzt das nächste Token vorhersagen möchte, dann haben wir gesagt, wird eine Wahrscheinlichkeit berechnet.

00:19:03: sagen wir mal, einige tausend Token, wie wahrscheinlich ist das erste, das zweite, das dritte und dann wird gewürfelt.

00:19:10: Diese Wahrscheinlichkeit wird wiederum auch aus einem Embedding berechnet.

00:19:15: Das heißt, was am Ende eigentlich aus dem neuronalen Netz rauskommt, ist ein Embedding, das sich nicht wirklich auf ein einzelnes Wort oder Token-Mappen lässt.

00:19:25: Das ist nämlich auch das Besondere, dass LLM kann ja nur mit einer endlichen Anzahl Tokens.

00:19:30: rechnen oder es kann nur eine endliche Anzahl verstehen oder erzeugen, weil ich eine Tabelle brauche und die hat eine endliche Länge.

00:19:37: Aber der Witz ist, Embeddings können beliebige Bedeutungen kodieren.

00:19:42: Das heißt, ein Embedding kann eine Bedeutung enthalten, die eine Mischung aus verschiedenen Konzepten darstellt.

00:19:51: Man kann sich das vorstellen, dass auf einmal Bedeutung Farben sind und so wie ich Farben mischen kann, kann ich Bedeutungen mischen.

00:19:58: Und aus dieser Mischung von Bedeutung, Semantik und verarbeitetem Wissen, geht dann ein ganz kleines neuronales Netz eine letzte Schicht hin und berechnet die Wahrscheinlichkeiten.

00:20:09: Das heißt also, wie katzenartig ist dieser Output, wie hundeartig ist dieser Output, wenn wir jetzt mal bei den Tieren bleiben wollen.

00:20:20: Und das heißt also, was wirklich aus dem Netz rauskommt, ist, ein Embedding.

00:20:24: und dieses Embedding drückt aus, was das LLM zu diesem Zeitpunkt aus dem vorherigen Text verstanden hat und denkt, wie es weitergehen könnte.

00:20:35: Das ist also das Besondere daran.

00:20:37: Es ist immer wieder dieser Begriff, den ich da gerne benutze, embeddings ermöglichen Mathematik auf Bedeutung.

00:20:43: Das hört sich furchtbar isoterisch an, so ein bisschen hochtraben soll das auch klingen.

00:20:48: Aber das ist die Idee, dass ich mir überlegen kann, wie wird das da reinkodiert.

00:20:53: Man kann sich das in einem einfachen Beispiel selber überlegen und diese echten Embeddings, diesen sehr großen Komplex und was da genau passiert,

00:20:59: sieht man dann nicht.

00:21:00: Also nochmal für mich irgendwie zum Verständnis, wenn ich so ein Wort habe wie Katze, habe ich verschiedene, oder habe ich einen Embeddings unten dran, die die ganzen Eigenschaften von dem Wort Katze irgendwie beschreiben, in Zahlen.

00:21:13: Und wenn ich jetzt quasi meinen Next-Token-Prediction mache und gucke, okay, was ist in das nächste wahrscheinlichste Wort, was irgendwie entweder Hinterkatze kommt oder Katze vielleicht auch das nächste wahrscheinliche Wort ist, dann sucht das LM quasi innerhalb der ganzen Embeddings-Diesel da gibt, distanzen und guckt, okay, was ist denn vielleicht das nächste oder das nächste Wahrscheinliche und gibt das mit zurück.

00:21:39: Ja, also suche wer an diesem ... Punkt wahrscheinlich etwas der falsche Ausdruck, weil das, was das MLM berechnet, das ist der bessere Ausdruck.

00:21:48: Das heißt also, es schaut sich an, was hatte ich bisher?

00:21:52: Dann werden diese unglaublich vielen Formeln durchlaufen und man kann wirklich nicht genau sagen, welche Berechnungen stattfinden.

00:21:59: In den Formeln, in dem MLM ist weltwissen kodiert, das war es mal inzwischen, das heißt, das weiß problematisches Wort, aber auch ähnlich wie die Embeddings, Sachen kodieren, kodieren auch die Parameter wieder Dinge.

00:22:13: Das heißt, da kann man schon irgendwo feststellen, hier irgendwo ist das Wissen über Haustiere kodiert auf eine gewisse Art und Weise.

00:22:20: Und dadurch erzeugt das LLM am Ende wieder eine neue Zahlenkolonne, wo auch wieder Wissen kodiert ist.

00:22:26: Das ist das Wissen, was als nächstes höchstwahrscheinlich kommt.

00:22:31: Und dann kommt halt dieser letzte Schritt, dass diese letzte Darstellung von Wissen noch einmal umgewandelt wird in der Wahrscheinlichkeitsverteilung.

00:22:40: Das ist so, als würde ich dir ungefähr sagen, so kann man sich das vorstellen.

00:22:44: Das ist vielleicht ein Beispiel.

00:22:45: Ich bin das LLM und deine Aufgabe ist es, die Wahrscheinlichkeiten zu erzeugen.

00:22:50: Und ich würde dir sagen, auf jeden Fall ist da ganz viel Tier mit drin.

00:22:56: Und dann hast du alle Möglichkeiten, sagen wir, wir bleiben nur bei Nomen.

00:22:58: Du hast so hundert Wörter, die sind.

00:23:00: Das ist wie Raten von hundert Wörtern.

00:23:02: Und dann wirst du dann, naja, okay, dann alle Haushaltsgegenstände setzt die Wahrscheinlichkeit schon mal praktisch auf null.

00:23:07: Und dann sage ich so, also es hat auf jeden Fall auch Fälle.

00:23:11: Und dann fallen schon mal die Schildkröten weg.

00:23:13: Wir reden die ganze Zeit über Sachen, die zu Hause stattfinden.

00:23:18: Das heißt, es ist bestimmt ein Haustier und dann streichst du den Löwen weg und so weiter.

00:23:21: Und dann kommst du raus, okay, wir sind bei achtzig Prozent Katze, zehn Prozent Hund.

00:23:26: Das ist das, was dieses allerletzte Layer sagt man.

00:23:30: Das ist eigentlich Teil des gesamten LLMs.

00:23:32: Aber man kann es auch als eigenes Netzwerk für sich betrachten, wenn man möchte, dass das, was dieser letzte Schritt macht, der dann die Wahrscheinlichkeitsverteilung macht.

00:23:39: Und der kann das nur machen, weil das LLM vorher Information in dieses Embedding Format gepackt hat, weil nur dann kann eine einfache mathematische Formel Wahrscheinlichkeiten daraus berechnen, weil es muss irgendwie so kodiert sein.

00:23:55: Also man kann sich das vorstellen, wie bei den alten Griechen tatsächlich die Mathematik, was diese letzten Layer machen oder eigentlich alle Layer machen, die ziehen eigentlich nur Linien irgendwo durch Punkte und sagen, okay, das ist links davon, das ist rechts davon.

00:24:07: Links interessiert mich nicht, bleibt das übrig.

00:24:09: Jetzt ziehe ich hier eine Linie.

00:24:10: Und nichts anderes passiert da immer wieder.

00:24:12: Und dann kann man sich sehr gut vorstellen, wenn ich eine Frage zu einem Wort beantworten muss oder was für ein Wort ist, was.

00:24:19: Was ist ähnlich, ja?

00:24:20: dass wenn ich diese Zahlen für Eigenschaften kudiere, ich zum Beispiel dann mathematisch das Problem lösen kann.

00:24:26: Ein anderes Beispiel, wie ich dir noch gebe, du merkst das Thema, interessiert mich, ja?

00:24:30: Stell dir vor, ein ganz einfaches Rätsel, welches Wort ist nicht wie die anderen?

00:24:35: Rot, grün, blau, fünf.

00:24:38: Was ist die Antwort?

00:24:39: Welches Wort ist nicht wie die anderen?

00:24:40: Fünf.

00:24:41: Aha, so, das weißt du als Mensch, weil du kannst mir jetzt eine Begründung geben, weil das eine ist eine Zahl, das andere sind Farben.

00:24:47: Genau.

00:24:48: Wenn ich jetzt ein Embedding für diese Wörter habe, dann habe ich irgendwo die Eigenschaft Farbe und irgendwo habe ich die Eigenschaft Zahl und dies bei Rot-Grün-Blau ist die Null und bei dem anderen ist die Eins.

00:25:00: Jetzt habe ich eine Menge Eigenschaften, das heißt ich habe ein ganz schönes Gemüse, aber was ich jetzt machen kann, wie bei so einem Bilderrätsel oder es gibt ja so optische Täuschungen, ich kann das drehen.

00:25:12: Und das ist das, was ein sehr einfacher Algorithmus machen würde, um daraus zu finden, welches Wort nicht dazugehört.

00:25:18: Ich kann es so lange drehen, bis ich auf einmal sehe, Moment.

00:25:21: Die Embeddings, stellen wir vor, wir machen Embedding, das nur zwei Dimensionen hat.

00:25:25: Machen wir mal ganz einfaches.

00:25:27: Ist es eine Farbejahnein, ist es eine Zahljahnein?

00:25:30: Dann würde ich das sofort sehen, weil die kann ich aufmalen, die Punkte.

00:25:33: Und dann sind die ersten Punkte alle auf einer Stelle.

00:25:36: Und die Fünf ist davon weit weg.

00:25:39: Und dann kann ich eine Linie durchziehen.

00:25:41: Wie die alten Griechen, da muss ich noch nicht mal mit Zahlen zu rechnen.

00:25:43: Ich nehme Lineal, ich nehme Stift, ziehe eine Linie durch und dann sage ich, okay, welches Wort ist nicht wie die andere.

00:25:49: Das, was auf der anderen Seite der Linie liegt.

00:25:51: Und so können diese Systeme, das ist bei so einem einfachen Beispiel, kann man sich vorstellen, aber deshalb können solche Systeme dir einen Text erzeugen, wenn du fragst, was ist ein Embanning?

00:26:03: Das ist einfach dadurch, dass die so riesig sind, dass die eine Menge Linien ziehen.

00:26:07: Okay, vielleicht für mich nochmal zum Verständnis, die im Beddings sind dementsprechend die Grundlage eigentlich von so einem LLN.

00:26:13: Von jedem neuronalen Netz, von jedem Deep Learning System, die Eingabe, nicht immer die Eingabe, ich kann auch Pixel reingehen, aber irgendwo im Laufe dieser Verarbeitung entstehen im Beddings immer.

00:26:25: Ja, weil... dass einerseits durchs Training reingekommen ist.

00:26:31: Bei den LLMs zum Beispiel.

00:26:33: Bei den LLMs, was für Eigenschaften sind beispielsweise hinter so einem Wort oder hinter so einem Wortstück sozusagen.

00:26:40: Bild oder eine Audioaufnahme.

00:26:42: Das Wort Katze, wenn du das Wort Katze sagst und du schickst die Audioaufnahme, das sind ja auch nur Zahlen.

00:26:49: Luftschwingungen.

00:26:50: Ja.

00:26:50: Das heißt, du haust vorne die Luftschwingung rein von dem MP-III, in dem du Katze sagst.

00:26:56: Und du kannst einen LLM machen, dann kommt hinten ein Bedding raus, das bedeutet

00:27:00: Katze.

00:27:01: Und deshalb können manche von den LLMs dann auch, die können ja auch notieren.

00:27:06: Das heißt, was die machen, du sprichst oder Leute sprechen, da ist eine Audioaufnahme, die wird durch das LLM, nicht durch das LLM, Entschuldigung, durch das Deep Learning System geschickt.

00:27:18: Und hinten kommen wieder Text raus, unsere Tokens, weil genau das passiert.

00:27:23: Die machen erst den Beddings raus.

00:27:25: Und dann machen die aus den Embeddings wieder Tokens.

00:27:28: Das ist immer dasselbe.

00:27:30: Ja, auch auf die Gefahr hin, dass wir nochmal irgendwie abtauchen.

00:27:35: Unterschied Tokens und Embeddings.

00:27:38: Genau, das Token kann man sich so vorstellen, das Token ist eine Abfolge von Buchstaben.

00:27:46: Das ist tatsächlich so.

00:27:47: Und da gibt es einfach ein ganz großes Wort, das nennt man wirklich Dictionary.

00:27:51: Ja, ein Wörterbuch.

00:27:53: Da sind alle Tokens drin, mit denen mein System arbeitet.

00:27:57: Das ist eine Programmieraufgabe.

00:27:58: Da gibt es auch lustige Algorithmen, mit denen man die Tokens erzeugt.

00:28:03: Aber wenn du möchtest, kannst du einfach sagen, das würde sogar Halb-X funktionieren.

00:28:08: Ich gucke mir einfach die deutsche Wikipedia an und nehme alle Abfolgen von fünf Buchstaben.

00:28:15: So, dann sind das meine Tokens, alle die vorkommen.

00:28:17: Dann ein paar Abfolgen, dann werde ich nicht erwischen, aber ich werde neun, neun, neun, neun Prozent durch solche Schnipsel ausdrucken können, auch kürzere.

00:28:24: Und das ist erstmal eine organisatorische Einheit.

00:28:28: Das ist das, was reinkommt, weil du tippst Text und das ist was am Ende rauskommt, weil ich muss es ja irgendwie anzeigen.

00:28:35: Und diese Tokens, weil das eine endliche Tabelle ist, jedes Token bekommt dann einfach eine Zahl.

00:28:40: Das ist eine fortlaufende Zahl.

00:28:41: Ich gucke mir alle Tokens an, über die ich reden möchte.

00:28:44: Das Erste bekommt die Zahl eins, das Zweite die zwei und so weiter und das Letzte hundertsechzigtausend vierhundert zwölf.

00:28:50: Und dann wird jeder dieser Zahlen einem Bedding zugeordnet.

00:28:55: Das heißt, ich habe dann, das ist eigentlich ein Übersetzungsprozess, eins zu eins Übersetzungsprozess.

00:28:59: Im Falle eines LLMs ist hier das Embedding schon die Eingabe.

00:29:05: Neuronales Netz würde als Eingabe wirklich die Pixel bekommen.

00:29:08: Da schickt man wirklich die Pixel rein.

00:29:11: Man könnte jetzt auch sagen, es ist auch ein Embedding, aber es ist ein sehr blödes Embedding, wo ganz wenig Informationen drin ist.

00:29:18: Also Informationen, da sind ganz viel Daten drin, aber ganz wenig Informationen.

00:29:22: Und das ist das, was neuronale Netze tun.

00:29:25: Sie erzeugen Information aus Daten.

00:29:28: Bei den LLMs ist das jetzt ein bisschen besonders, weil die Embeddings, die reingehen, die enthalten schon Informationen, die sind schon sehr informationsreich.

00:29:37: Das besondere der LLMs ist, dass sie diese statische Information zueinander in Beziehung setzen können.

00:29:43: Ja.

00:29:45: Ja, hoppala!

00:29:46: Was denn da passiert?

00:29:47: Wie

00:29:47: sind wir denn hier gelandet?

00:29:48: Wie

00:29:48: sind wir hier gelandet?

00:29:49: Hallo Andreas aus der Zukunft.

00:29:51: Ja, hier DJ Wurstfinger hat... Hat den Aufnahmeknopf irgendwann verfehlt.

00:29:57: Wir sind aus der Folge gefallen.

00:29:59: Sie wäre aber auch unendlich lang gegangen, weil das Thema echt breitgetreten...

00:30:06: Breitgetreten.

00:30:07: Meine tiefgründigen unterhaltsamen erleuchtenden Erklärungen werden also... Okay, aber du hast recht, die Folge wäre noch glaube ich sehr lang geworden.

00:30:17: Genau, was glaube ich sehr... Einprägsam ist das Beispiel von der Katze und den Farben, weil ich glaube die Klassifizierung der Farben oder was eben katzenartig ist oder nicht, das erklärt ganz gut, wie im Bellings innerhalb so einem Konstrukt LLM funktionieren.

00:30:36: Genau, das Prinzip ist simpel.

00:30:38: Es ist nur irgendwie crazy, sich vorzustellen, dass das bei sowas Komplexen wie wirklich ein Aufsatzverstehen funktionieren kann, aber es ist halt... einfach nur dadurch, dass es sehr, sehr großes und sehr verrechnbar hat.

00:30:50: Am Ende werden Linien durch Punkte gezogen.

00:30:52: Ja.

00:30:53: Und es würde jetzt natürlich super gerne interessieren, was haltet ihr von, ich sage mal, einem technischen Thema wie diesem und dass wir da mal richtig in die Tiefe gegangen sind, um es transparent zu machen und das Verständnis dafür zu wecken?

00:31:08: Genau.

00:31:09: Wollt ihr eher hören, wie Andreas von seinen neuen Spielzeugen erzählt?

00:31:13: Oder wollt ihr tiefgreifende, fundamentale Erkenntnisse von mir oder wie bisher einfach ein guter Mix?

00:31:20: Wahrscheinlich ist das am besten.

00:31:22: Da würden wir uns diesmal sehr freuen, wenn jemand dazu eine Meinung hat.

00:31:26: Lasst uns die doch gerne wissen.

00:31:28: Tja, ansonsten würde ich sagen, ich glaube, ich habe es dann aber auch umfangreich erklärt, oder?

00:31:32: Ja, absolut.

00:31:36: Dann würden wir sagen, Ben, war das an dieser Stelle.

00:31:39: Vielen lieben Dank wie immer fürs Zuhören.

00:31:41: Andreas, vielen lieben Dank

00:31:43: fürs

00:31:45: Zuhören.

00:31:45: Du bist ja nicht so viel Support gekommen.

00:31:48: Dann in der nächsten Folge wieder mehr von dir und hoffentlich bis zum nächsten Mal.

00:31:53: Bis zum nächsten Mal.

00:32:00: Das war es mal wieder von Künstlich Klug.

00:32:02: Wir sind gespannt darauf zu erfahren, ob auch so ein esoterisches Thema wie Embeddings für euch interessant war.

00:32:09: Teilt uns gerne eure Fragen, Wünsche und Gedanken zur heutigen Folge über die E-Mail in der Beschreibung mit.

00:32:14: Und wir hoffen, dass ihr auch bei der nächsten Folge vom Künstlich-Club wieder dabei seid.

Neuer Kommentar

Dein Name oder Pseudonym (wird öffentlich angezeigt)
Mindestens 10 Zeichen
Durch das Abschicken des Formulars stimmst du zu, dass der Wert unter "Name oder Pseudonym" gespeichert wird und öffentlich angezeigt werden kann. Wir speichern keine IP-Adressen oder andere personenbezogene Daten. Die Nutzung deines echten Namens ist freiwillig.