Wie GPT funktioniert: Eine metaphorische Erklärung von Schlüssel, Wert und Abfrage in Aufmerksamkeit anhand einer Zaubertrankgeschichte | von Lili Jiang | Juni 2023

0
34


Quelle: Erstellt von Midjourney.

TDas Rückgrat von ChatGPT ist das GPT-Modell, das mit erstellt wird Transformator die Architektur. Das Rückgrat von Transformer ist das Aufmerksamkeit Mechanismus. Für viele ist es das am schwierigsten zu verstehende Konzept Schlüssel, Wert und Abfrage. In diesem Beitrag werde ich eine Analogie zu Trank verwenden, um diese Konzepte zu verinnerlichen. Selbst wenn Sie die Mathematik der Transformatormechanik bereits verstehen, hoffe ich, dass Sie am Ende dieses Beitrags ein intuitiveres Verständnis für das Innenleben von GPT von Anfang bis Ende entwickeln können.

Für diese Erklärung sind keine mathematischen Vorkenntnisse erforderlich. Für technisch Interessierte füge ich weitere technische Erklärungen hinzu […]. Sie können Notizen auch problemlos überspringen [brackets] und Randnotizen in Zitatblöcken wie diesem. Im Laufe meines Schreibens erfinde ich einige für Menschen lesbare Interpretationen der Zwischenzustände des Transformatormodells, um die Erklärung zu erleichtern, aber GPT denkt nicht genau so.

[When I talk about “attention”, I exclusively mean “self-attention”, as that is what’s behind GPT. But the same analogy explains the general concept of “attention” just as well.]

Die Einrichtung

GPT kann Absätze mit zusammenhängendem Inhalt ausspucken, weil es eine Aufgabe hervorragend erledigt: „Welches Wort kommt bei einem gegebenen Textual content als nächstes?“ Lassen Sie uns GPT im Rollenspiel spielen: „Sarah liegt nonetheless auf dem Bett und fühlt sich ____“. Können Sie die Lücke ausfüllen?

Eine vernünftige Antwort unter vielen lautet: „müde“. Im Relaxation des Beitrags werde ich erläutern, wie GPT zu dieser Antwort gelangt. (Zum Spaß habe ich diese Aufforderung in ChatGPT eingefügt und sie hat einen Kurztext geschrieben Geschichte heraus.)

Die Analogie: (Schlüssel, Wert, Abfrage) oder (Tag, Trank, Rezept)

Sie geben die obige Eingabeaufforderung an GPT weiter. In GPT ist jedes Wort mit drei Dingen ausgestattet: Schlüssel, Wert, Abfrage, deren Werte durch das Verschlingen des gesamten Internets von Texten während des Trainings des GPT-Modells gelernt werden. Es ist die Interaktion zwischen diesen drei Zutaten, die es GPT ermöglicht, einem Wort im Kontext eines Textes einen Sinn zu geben. Was machen sie additionally wirklich?

Quelle: vom Autor erstellt.

Lassen Sie uns unsere Analogie der Alchemie aufstellen. Für jedes Wortwir haben:

  • Ein Trank (auch bekannt als „Wert“): Der Trank enthält umfangreiche Informationen über das Wort. Stellen Sie sich zur Veranschaulichung den Trank des Wortes vor „Lügen“ enthält Informationen wie „müde; Unehrlichkeit; kann eine constructive Konnotation haben, wenn es sich um eine Notlüge handelt; …“. Das Wort „Lügen“ kann mehrere Bedeutungen annehmen, z. B. „lügen“ (verbunden mit Unehrlichkeit) oder „hinlegen“ (verbunden mit müde). Die wahre Bedeutung kann man nur im Kontext eines Textes erkennen. Im Second enthält der Trank Informationen für beide Bedeutungen, da er nicht im Kontext eines Textes steht.
  • Das Rezept eines Alchemisten (auch bekannt als „Abfrage“): Der Alchemist eines bestimmten Wortes, z „Lügen“, geht alle Wörter in der Nähe durch. Er findet, dass einige dieser Wörter für sein eigenes Wort related sind „Lügen“, und er hat die Aufgabe, eine leere Flasche mit Zaubertränken dieser Worte zu füllen. Der Alchemist hat ein Rezept, das spezifische Kriterien auflistet, die bestimmen, welche Tränke er bezahlen soll Aufmerksamkeit Zu.
  • Eine Markierung (auch bekannt als „Schlüssel“): Jeder Trank (Wert) ist mit einem Etikett (Schlüssel) versehen. Wenn der Tag (Schlüssel) intestine mit dem Rezept (Abfrage) des Alchemisten übereinstimmt, wird der Alchemist diesem Trank Aufmerksamkeit schenken.

Achtung: Die Zaubertrank-Mixologie des Alchemisten

Die Tränke mit ihren Etiketten. Quelle: vom Autor erstellt.

Im ersten Schritt (Aufmerksamkeit) begeben sich die Alchemisten aller Wörter jeweils auf ihre eigene Suche, um ihre Fläschchen mit Tränken aus relevanten Wörtern zu füllen.

Nehmen wir den Alchemisten des Wortes „Lügen“ Zum Beispiel. Er weiß aus früherer Erfahrung – nachdem er sich mit dem gesamten Web der Texte vertraut gemacht hat –, dass Wörter helfen, zu interpretieren „Lügen“ in einem Satz haben normalerweise die Kind: „einige flache Oberflächen, Wörter im Zusammenhang mit Unehrlichkeit, Wörter im Zusammenhang mit Ausruhen“. Diese Kriterien notiert er in seinem Rezept (Question) und sucht nach Tags (Key) auf den Tränken anderer Wörter. Wenn die Markierung den Kriterien sehr ähnlich ist, wird er eine große Menge dieses Tranks in sein Fläschchen gießen; Wenn das Etikett nicht ähnlich ist, wird er wenig oder gar keinen Trank einschenken.

Additionally findet er das Tag für „Bett“ sagt „ein flaches Möbelstück“. Das ist ähnlich „einige ebene Flächen“ in seinem Rezept! Er gießt den Trank ein „Bett“ in seiner Flasche. Der Trank (Wert) für „Bett“ enthält Informationen wie „müde, erholsam, schläfrig, krank“.

Der Alchemist für das Wort „Lügen“ setzt die Suche fort. Er findet den Tag für das Wort „nonetheless“ sagt „im Zusammenhang mit Ruhe“ (neben anderen Konnotationen des Wortes „nonetheless“). Das hängt mit seinen Kriterien zusammen „erholsam“additionally gießt er einen Teil des Tranks hinein „nonetheless“die Informationen enthält wie „erholsam, nonetheless, stationär“.

Er schaut auf das Etikett von „auf“, „Sarah“, „das“, „Gefühl“ und findet sie nicht related. Additionally schüttet er keinen ihrer Tränke in sein Fläschchen.

Denken Sie daran, dass er auch seinen eigenen Trank überprüfen muss. Das Etikett seines eigenen Tranks „Lügen“ sagt „ein Verb im Zusammenhang mit Ruhen“, was zu seinem Rezept passt. Additionally gießt er auch etwas von seinem eigenen Trank in die Flasche, der Informationen enthält wie „müde; unehrlich; kann eine constructive Konnotation haben, wenn es sich um eine Notlüge handelt; …“.

Am Ende seiner Suche nach Wörtern im Textual content ist seine Flasche voll.

Quelle: vom Autor erstellt.

Im Gegensatz zum Originaltrank für „Lügen“, berücksichtigt dieser Mischtrank nun den Kontext dieses ganz konkreten Satzes. Es enthält nämlich viele Elemente von „müde erschöpft“ und nur eine Prise „unehrlich“.

Bei dieser Suche Der Alchemist weiß, wie man auf die richtigen Worte achtet, und kombiniert den Wert dieser relevanten Worte. Dies ist ein metaphorischer Schritt für „Aufmerksamkeit“. Wir haben gerade die wichtigste Gleichung für Transformer, die zugrunde liegende Architektur von GPT, erklärt:

Q ist Abfrage; Ok ist der Schlüssel; V ist Wert. Quelle: Aufmerksamkeit ist alles, was Sie brauchen

Erweiterte Hinweise:

1. Jeder Alchemist schaut sich jede Flasche an, auch seine eigene [Q·K.transpose()].

2. Der Alchemist kann sein Rezept (Abfrage) schnell mit dem Tag (Schlüssel) abgleichen und eine schnelle Entscheidung treffen. [The similarity between query and key is determined by a dot product, which is a fast operation.] Darüber hinaus erledigen alle Alchemisten ihre Quests parallel, was ebenfalls zur Beschleunigung beiträgt. [Q·K.transpose() is a matrix multiplication, which is parallelizable. Speed is a winning feature of Transformer, compared to its predecessor Recurrent Neural Network that computes sequentially.]

3. Der Alchemist ist wählerisch. Er wählt nur die besten Tränke aus, anstatt von allem etwas unterzumischen. [We use softmax to collapse Q·K.transpose(). Softmax will pull the inputs into more extreme values, and collapse many inputs to near-zero.]

4. In diesem Stadium berücksichtigt der Alchemist nicht die Reihenfolge der Wörter. Ob „Sarah liegt nonetheless auf dem Bett und fühlt“ oder „Bett die Sarah immer noch auf Lügen“, die gefüllte Flasche (Ausstoß der Aufmerksamkeit) wird dieselbe sein. [In the absence of “positional encoding”, Attention(Q, K, V) is independent of word positions.]

5. Die Flasche ist immer zu 100 % gefüllt, nicht mehr und nicht weniger. [The softmax is normalized to 1.]

6. Das Rezept des Alchemisten und die Beschriftung der Tränke müssen dieselbe Sprache sprechen. [The Query and Key must be of the same dimension to be able to dot product together to communicate. The Value can take on a different dimension if you wish.]

7. Der technisch versierte Leser könnte darauf hinweisen, dass wir es nicht getan haben Maskierung. Ich möchte die Analogie nicht mit zu vielen Particulars überladen, aber ich werde sie hier erklären. Bei der Selbstaufmerksamkeit kann jedes Wort nur die vorherigen Wörter sehen. So im Satz „Sarah liegt nonetheless auf dem Bett und fühlt“, „Lügen“ sieht nur „Sarah“; „nonetheless“ sieht nur „Sarah“, „Lügen“. Der Alchemist von „nonetheless“ Ich kann nicht in die Zaubertränke greifen „auf der“, „Bett“ Und „Gefühl“.

Feed Ahead: Chemie der Mischtränke

Bis zu diesem Zeitpunkt gießt der Alchemist den Trank einfach aus anderen Flaschen. Mit anderen Worten: Er gießt den Trank aus „Lügen“ – „müde; unehrlich;…“ — als gleichmäßige Mischung in den Kolben geben; er kann das nicht herausdestillieren „müde“ Teil und entsorge die „unehrlich“ Teil gerade noch. [Attention is simply summing the different V’s together, weighted by the softmax.]

Quelle: vom Autor erstellt.

Jetzt kommt die wahre Chemie (Feed Ahead). Der Alchemist mischt alles zusammen und führt eine Synthese durch. Er bemerkt Wechselwirkungen zwischen Wörtern wie „schläfrig“ Und„erholsam“usw. Das merkt er auch „Unehrlichkeit“ wird nur in einem Trank erwähnt. Aus früheren Erfahrungen weiß er, wie man bestimmte Zutaten miteinander interagieren lässt und wie man einzelne Zutaten verwirft. [The feed forward layer is a linear (and then non-linear) transformation of the Value. Feed forward layer is the building block of neural networks. You can think of it as the “thinking” step in Transformer, while the earlier mixology step is simply “collecting”.]

Der resultierende Trank wird nach seiner Verarbeitung viel nützlicher für die Aufgabe, das nächste Wort vorherzusagen. Intuitiv repräsentiert es einige reichhaltigere Eigenschaften dieses Wortes im Kontext seines Satzes, im Gegensatz zum Anfangstrank (Wert), der außerhalb des Kontexts steht.

Die letzte lineare und Softmax-Schicht: die Versammlung der Alchemisten

Wie kommen wir von hier aus zur endgültigen Ausgabe, nämlich der Vorhersage des nächsten Wortes danach? „Sarah liegt nonetheless auf dem Bett und fühlt sich ___“ Ist „müde“?

Bisher arbeitete jeder Alchemist unabhängig und kümmerte sich nur um sein eigenes Wort. Jetzt stellen alle Alchemisten verschiedener Wörter ihre Flaschen in der ursprünglichen Wortreihenfolge zusammen, stapeln sie und präsentieren sie der letzten linearen und Softmax-Schicht des Transformers. Was meine ich damit? Hier müssen wir von der Metapher abweichen.

Diese letzte lineare Schicht synthetisiert Informationen über verschiedene Wörter. Basierend auf vorab trainierten Daten besteht eine believable Erkenntnis darin, dass das unmittelbar vorherige Wort wichtig ist, um das nächste Wort vorherzusagen. Beispielsweise könnte sich die lineare Ebene stark auf den letzten Kolben (den Kolben des „Gefühls“) konzentrieren.

In Kombination mit der Softmax-Schicht weist dieser Schritt dann jedem einzelnen Wort in unserem Vokabular eine Wahrscheinlichkeit zu, wie wahrscheinlich es ist, dass dies das nächste Wort danach ist „Sarah liegt auf dem Bett und fühlt…“. Beispielsweise erhalten nicht-englische Wörter Wahrscheinlichkeiten nahe 0. Wörter wie „müde“, „schläfrig“, „erschöpft“ wird hohe Wahrscheinlichkeiten erhalten. Als endgültige Antwort wählen wir dann den Prime-Gewinner aus.

Quelle: vom Autor erstellt.

Rekapitulieren

Jetzt haben Sie ein minimalistisches GPT erstellt!

Um es noch einmal zusammenzufassen: Sie bestimmen für jedes Wort im Aufmerksamkeitsschritt, auf welche Wörter (einschließlich sich selbst) jedes Wort achten soll, basierend darauf, wie intestine die Abfrage (Rezept) dieses Worts mit dem Schlüssel (Tag) des anderen Worts übereinstimmt. Sie mischen die Werte (Tränke) dieser Wörter proportional zur Aufmerksamkeit, die das Wort ihnen schenkt. Sie verarbeiten diese Mischung, um etwas „zu denken“ (Feed Ahead). Sobald jedes Wort verarbeitet ist, kombinieren Sie die Mischungen aller anderen Wörter, um mehr zu „denken“ (lineare Ebene) und eine endgültige Vorhersage darüber zu treffen, wie das nächste Wort lauten soll.

Quelle: vom Autor erstellt.

Randbemerkung: Der Sprach-„Decoder“ ist ein Überbleibsel des Originals Papier, da Transformer erstmals für maschinelle Übersetzungsaufgaben eingesetzt wurde. Sie „kodieren“ die Quellsprache in Einbettungen und „dekodieren“ die Einbettungen in die Zielsprache.



Source link

HINTERLASSEN SIE EINE ANTWORT

Please enter your comment!
Please enter your name here