Transkripte
1. Einführung: Irgendwann haben Sie
vielleicht von
GPT gehört , vielleicht ChatGPT, GPT-4, Sie haben vielleicht
gehört, dass Microsoft es einen Funken künstlicher
allgemeiner Intelligenz
nennt. Es gibt viel zu verdauen. Lassen Sie mich Ihnen helfen, genau das zu tun. Hallo, ich bin [unhörbar],
wissenschaftlicher Mitarbeiter in einem großen Unternehmen. Ich forsche seit sechs Jahren
im Bereich KI, zuvor in Materiality
Labs und Tesla-Autopilot, habe
an der UC Berkeley in
KI promoviert. Insbesondere habe ich
studiert, wie man neuronale Netzwerke wirklich schnell laufen lässt. In diesem Kurs hoffe ich,
meinen Hintergrund nutzen zu können , um modernste
Technologie in leicht verständliche,
intuitive Konzepte zu
zerlegen . Durchgehend werde ich einen Ansatz
verwenden, bei dem
zuerst die Illustration verwendet wird, um Intuition zu
vermitteln. Keine Textwände,
superkomplexe Diagramme oder auch nur ein bisschen Mathematik. Mein Ziel ist es, Ihnen dabei zu helfen, die Grundlagen für das
Verständnis von Chat-GPT und den damit
verbundenen Technologien zu
schaffen . Das Material in diesem Kurs
setzt voraus, dass Sie
meinen kostenlosen KI-Anfängerkurs besucht haben , der in der Beschreibung
verlinkt ist. Darüber hinaus ist kein technischer
Hintergrund erforderlich. ob Sie
Ingenieur, Designer
oder jemand anderes sind, der gerne etwas lernen möchte, dieser Kurs ist für
Sie gemacht. Lass uns anfangen.
2. Warum ChatGPT verstehen: Hier erfahren Sie, warum Sie ChatGPT
verstehen sollten. Wir beginnen mit den Vorteilen. Der größte Vorteil dieses Kurses besteht darin , die Diskussionen
rund um das Thema zu verstehen. Es gibt Unmengen zufälliger verwandter
Begriffe im Internet, Transformatoren, große
Sprachmodelle, ChatGPT, GPT dies, GPT das. Unser Ziel ist es zu wissen, wie diese verschiedenen
Begriffe miteinander zusammenhängen. Wir werden uns dem
Marketingkram zuwenden und direkt zum
technischen Verständnis Der Jargon
muss nicht einschüchternd sein. Mit diesem Wissen können
Sie dann die neuesten
Innovationen in der Region
verstehen. Was bedeutet es,
einen Transformator schneller zu machen? Was ist der Transformator überhaupt? Zusammenfassend
gibt es zwei Vorteile, wenn Sie
verstehen, wie ChatGPT funktioniert. Kenntnis der Terminologie, um Diskussionen zu dem
Thema zu führen, und Wissen ,
wie man die Nachrichten liest und
versteht ,
wenn man
mehr über das Thema liest und lernt. Um es klar zu sagen, wir werden nicht alle
Begriffe oder alle Themen
erschöpfend behandeln. Dieser Kurs bietet Ihnen jedoch
eine Grundlage, um mehr zu lernen Im Grunde
behandeln wir die Intuition und die großen Ideen, die
hinter der Technologie stehen. Ein großer Teil davon ist die
Kenntnis der Terminologie, also wird unser Fokus sein. Lassen Sie uns jetzt direkt
zum Inhalt übergehen. Hier finden Sie eine Übersicht über ChatGPT
und verwandte Konzepte. Erstens ist ChatGPT ein Produkt. Es ist speziell der Name
des Produkts von Open AI. Zweitens große Sprachmodelle oder die Technologie im weiteren Sinne, eine Technologie, die Texteingaben
aufnehmen und hochwertigen, natürlich
klingenden Text als Ausgabe
erzeugen kann . Das ist wie
Kleenex und Taschentücher. Kleenex ist eine bestimmte Marke, Taschentücher sind der
generische Produktname. In diesem Fall ist ChatGPT eine
bestimmte markenrechtlich geschützte Marke. Große Sprachmodelle sind
die allgemeine Technologie. Daher stehen diese
großen Sprachmodelle, kurz LLMs, im Mittelpunkt unseres Kurses. Schließlich sind Transformatoren die Bausteine
großer Sprachmodelle. Wir werden uns in Zukunft auf diese
Bausteine konzentrieren . Allgemein gesagt ist
es unser Ziel,
die Intuition hinter
großen Sprachmodellen zu analysieren . Ich werde eine vereinfachte
Version dieser Modelle vorstellen , die die wichtigsten
Ideen dafür vermittelt, warum sie funktionieren. Sie benötigen keine großen,
komplizierten Diagramme oder unnötigen mathematischen Gleichungen. Wir werden ziemlich
einfache Diagramme haben , die sich an die wichtigsten Punkte halten. Hier ist eine kurze Einführung
in große Sprachmodelle. In unserer KI-Masterclass
haben wir darüber gesprochen, unser ML-Wissen in vier Kategorien zu unterteilen: Daten, Modell, Ziel und Algorithmus. Daten beschreiben die
Inputs und Outputs, was wir daraus lernen
und was wir vorhersagen. Das Modell beschreibt
, wie Vorhersagen getroffen werden. Objective beschreibt das Ziel, wofür das Modell
optimiert wird. Schließlich beschreibt der Algorithmus,
wie das Modell lernt. Wir haben nicht
viel über den Algorithmus gesprochen und werden
ihn dieses Mal wieder überspringen . Bei großen Sprachmodellen ist
die Eingabe Text. Dies kann von Websites,
Büchern, Online-Foren oder mehr stammen. Das Modell transformiert diesen Text mithilfe des Eingabetextes, um
Ausgabetext zu generieren. Das spezifische
Ziel eines Modells darin, das nächste Wort anhand der
vorherigen Wörter vorherzusagen. Wir werden diesen
Prozess später in
diesem Kurs aufschlüsseln und wie zuvor überspringen
wir den Algorithmus. Um es noch einmal zusammenzufassen: Wir haben die
Vorteile des Verständnisses von
ChatGPT im Kontext
schnelllebiger Nachrichten
und Diskussionen erörtert ChatGPT im Kontext . Wir haben auch kurz ChatGPT
vorgestellt, das Produkt im Vergleich
zur breiteren Technologieklasse , den großen
Sprachmodellen. Das war's für den Überblick. Eine Kopie dieser Folien
und weitere Ressourcen finden Sie auf
der Kurswebsite. Aus diesem Grund
sollten Sie ChatGPT verstehen. Lassen Sie uns direkt in die
Technologie einsteigen, damit Sie gut gerüstet sind, um
die Flut
von Informationen zu verstehen .
3. Wie „berechnen“ man?: In dieser Lektion besprechen wir,
wie man Wörter „berechnet“. Hier ist ein Beispiel
dafür, was ich meine. Nimm die folgende Gleichung. Wir haben König - Mann + Frau. Was erwartest du, entspricht das? Pausiere das Video
hier, wenn du dir eine Sekunde Zeit zum Nachdenken
nehmen möchtest. Ein vernünftiger Output
wäre Queen. Das würden wir erwarten, wenn
wir Mathematik auf Wörter anwenden könnten. Das können wir jedoch nicht
wirklich tun. Es gibt keine
Addition von Wörtern, also müssen wir Wörter in
Zahlen umwandeln , die wir
addieren und subtrahieren können. Lassen Sie uns ein konkretes Beispiel verwenden. In diesem Fall wollen wir aus dem
Französischen ins Englische
übersetzen. Wir haben Französisch in Lila
auf der linken Seite, was auf der rechten Seite
in Ich liebe dich in Grün bedeutet. Um dieses Beispiel zu vereinfachen, konzentrieren
wir uns darauf, zunächst nur
ein Wort nach dem anderen zu übersetzen. In diesem Fall konzentrieren wir uns darauf, Je in I
zu
übersetzen . Dazu müssen wir Je in Zahlen
umwandeln. Zum Glück
gibt es bereits eine Art Wörterbuch, das
Wörter in Zahlen abbildet. Dieses Mapping wird Word2vec
genannt. Word2vec definiert eine Zuordnung
von Wörtern zu Vektoren. Vektoren sind einfach
Ansammlungen von Zahlen. Ab jetzt bezeichnen wir
eine Sammlung von
Zahlen als Vektoren. Hier ist ein Beispiel, hier
haben wir das französische Wort Je. Word2vec ordnet dieses Wort dem Vektor.8.1.1
zu
, der unten
mit einigen lila Kästchen dargestellt ist. Wir können auch
das englische Wort I haben. Word2VEC ordnet dies 0.1.9 zu. Endlich haben wir dich. Word2VEC ordnet dies zu.1 0.9 zu. Beachten Sie, dass diese Zuordnung nur ein Beispiel
ist. In Wirklichkeit verwendet word2vec
300-dimensionale Vektoren,
was bedeutet, dass jedes Wort 300 Zahlen
entspricht, viel zu viele, um sie hier zu zeigen. Lassen Sie uns nun diese Vektoren
in unserem Übersetzungsbeispiel verwenden. Jetzt übersetzen wir Je in den entsprechenden
Word2vec-Vektor auf der linken Seite in lila. Irgendeine rätselhafte Berechnung und in der Mitte wird ein weiterer
Vektor in Grün durchgeführt . Dieser grüne Vektor
entspricht dann dem
englischen Wort I. Lassen Sie uns
nun besprechen, was
in das Feld mit
einem Fragezeichen gehört. Wie werden diese Vektoren
transformiert? So geht's. Das Ziel dieser Box ist es,
aussagekräftige Berechnungen durchzuführen. Folgendes meine ich. Dies war das Beispiel, das
wir zuvor
hatten, wo König minus Mann plus
Frau gleich Königin war. So können wir
tatsächlich
Zahlen addieren und subtrahieren oder sogar Wörter addieren und
subtrahieren. Beginne mit den Wörtern
auf der linken Seite. Wir lassen König, Mann
und Frau
jedes Wort in den
entsprechenden Word2vec-Vektor übersetzen . Das gibt uns drei Vektoren. Beginne dann mit dem
Königsvektor auf der linken Seite, subtrahiere den Männervektor und füge den Frauenvektor hinzu. Dadurch erhalten wir einen
neuen Vektor auf der rechten Seite und dieser resultierende Vektor entspricht
zufällig der Königin. Das meinen wir
also
wirklich, wenn wir „mit Wörtern rechnen“. In Wirklichkeit rechnen wir
mit den Vektoren, denen diese
Wörter entsprechen. Jetzt können wir
den gesamten Prozess abkürzen , indem wir einfach diese Gleichung
schreiben. Diese Gleichung ist
übrigens ein echtes Ergebnis. Wenn Sie die
Word2vec-Zuordnungen nachschlagen würden, könnten
Sie diese Gleichung tatsächlich berechnen. Addition und Subtraktion in diesem Vektorraum
haben eine echte Bedeutung. Da wir das wissen, können wir jetzt unsere Mystery-Box
füllen. Angesichts der Eingabe, die ins Englische
übersetzt werden soll, subtrahieren
wir den französischen Vektor
und addieren den englischen Vektor. Allgemeiner gesagt, um
jeder Aufgabe gerecht zu werden, können wir jede Addition,
Multiplikation,
Subtraktion usw.
darstellen . Dieses kleine Diagramm in
der Mitte stellt ein
sogenanntes
mehrschichtiges Perzeptron dar. Auf so viel werden wir nicht eingehen. Stellen Sie sich dieses kleine
Diagramm in der Mitte unserer Abbildung als eine Reihe von Additionen,
Multiplikationen , Subtrahierungen und mehr vor. Dadurch können wir jede
Wort-zu-Wort-Übersetzungsaufgabe
mit dieser Architektur
darstellen . Beachten Sie nun, dass unsere
Pipeline mit einem Vektor endet. Wir müssen diesen
Vektor wieder in ein Wort umwandeln. Für unser letztes Ziel hier wollen
wir also Zahlen wieder in Wörter umwandeln. Hier ist unsere Pipeline von früher. Am Ende hatten wir einen Vektor. Also zurück in ein Wort umwandeln, wir finden den
Vektor, der einem Wort am nächsten kommt. In diesem Fall entspricht der
Vektor, der dem Wort
I am nächsten kommt , und damit haben wir unsere Pipeline
abgeschlossen. Lassen Sie uns nun zusammenfassen, was wir von Anfang bis Ende
getan haben. Zuerst haben wir
Wörter in Vektoren umgewandelt, dann transformieren wir diese Vektoren. Schließlich haben wir
Vektoren wieder in Wörter umgewandelt. Hier ist unser letztes Diagramm. Links haben wir das Wort
Je in einen Vektor umgewandelt, dann führen wir
in der Mitte einige Berechnungen mit diesem Vektor durch. Dadurch wurde ein weiterer
Vektor grün ausgegeben und wir haben dann nach
dem nächstgelegenen Vektor gesucht
, der einem Wort entsprach. Das führte
uns schließlich zum Wort I, und das vervollständigt unsere Pipeline, indem wir von einem französischen
Wort in ein englisches Wort übersetzen. hier eine Pause, wenn Sie
diese Zahl aufschreiben oder sich einen
Moment Zeit nehmen
möchten , um sie zu verdauen oder zusammenzufassen. Wir haben also ein
Wort in ein anderes Wort umgewandelt, wollen
aber letztendlich
viele Eingabewörter in
viele Ausgabewörter umwandeln viele Eingabewörter in , wie wir hier in unserem Beispiel
zeigen Das wird unsere nächste Lektion sein. Eine Kopie dieser Folien
und weitere Ressourcen finden Sie auf
der Kurswebsite. Das war's für die
Berechnung von Wörtern. Jetzt verstehen Sie die Grundlagen dafür wie große Sprachmodelle Eingaben berechnen,
um Ausgaben zu erzeugen. In der nächsten Lektion lernen wir, wie große
Sprachmodelle
mehrere Eingabewörter aufnehmen und mehrere Ausgabewörter
generieren.
4. Was ist ein „Transformator“?: In dieser Lektion behandeln wir,
was ein Transformator ist. Der Transformator
ermöglicht es uns,
mehrere Eingabewörter aufzunehmen und mehrere Ausgangswörter
zu generieren. Das haben wir bisher
erklärt. Wir haben ein französisches
Wort in ein englisches Wort umgewandelt. Jetzt wollen wir
mehrere französische Wörter in
mehrere englische Wörter umwandeln . Dazu
ändern wir unser Ziel. Anstatt
von einem Wort in ein anderes zu übersetzen, übersetzen
wir
vom vorherigen Wort und sagen das nächste Wort voraus. Dazu ändern wir
dieses Diagramm in dieses. Unser Modell verwendet nun die französische Phrase und das vorherige Wort, das unten kursiv
dargestellt ist. Mit diesen beiden Eingaben das Modell
das nächste Wort voraus, das rechts kursiv
dargestellt ist. Der violette Text, in
diesem Fall der französische, nennen wir die Aufforderung, zwischen den
beiden Arten von Eingaben zu unterscheiden. Lassen Sie uns dieses
Diagramm nun auf unsere Eingaben anwenden. Um das erste Wort zu generieren, geben
wir die Eingabeaufforderung und
ein magisches Startwort ein. Wir haben den Beginn des
Sequenzworts hier der Einfachheit
halber als
Startanführungszeichen bezeichnet Sequenzworts hier der Einfachheit
halber als
Startanführungszeichen . In Wirklichkeit ist
das Starttoken
ein unlesbares Tag. Dieses magische Startsymbol zusammen mit der Aufforderung erzeugt
dann
zusammen mit der Aufforderung das erste Wort I. Um das nächste Wort zu generieren, verwenden
wir wieder die lila Eingabeaufforderung
oben. Unten geben wir nun die beiden vorherigen Wörter ein,
die Startsequenz, die durch
ein Zitat
dargestellt wird , und das vorherige Wort I. Jetzt sagen wir das nächste Wort voraus, Liebe. Wir machen das wieder. Wir geben die Eingabeaufforderung oben ein. Unten geben wir alle vorherigen Wörter ein,
das
Zitat am Anfang der Sequenz und Ich und Liebe. All diese Eingaben bringen
dich hervor. Ein letztes Mal. Wir geben die Eingabeaufforderung oben ein. Unten geben wir
alle vorherigen Wörter ein, der Beginn
der Sequenz dann
ich, dann Liebe, dann du. Alle diese Eingaben erzeugen ein Ausgangswort, das
Ende der Sequenz. Dieses Ende der Sequenz
wird in unserem
Diagramm
als Endzitat bezeichnet und das war's. Sobald wir das Ende des
Sequenzworts sehen, sind wir fertig. Wir haben jetzt
eine Sequenz von mehreren
Ausgabewörtern generiert . Wir nennen diesen Vorgang
autoregressive Dekodierung. autoregressive Dekodierung
sagt das nächste Wort
nacheinander voraus , bis wir
das Ende des Sequenzworts erreichen. Hier ist ein Überblick über
den gesamten Prozess. Dies war die generische Version
unseres Diagramms von zuvor. Oben haben wir unsere
Eingabeaufforderung in lila. Unten haben wir alle
vorherigen Wörter. Diese Eingaben werden dann durch die Mystery-Box geleitet, um das nächste Wort zu
erzeugen. Jetzt füllen wir die Mystery-Box aus. Wir füllen dieses Feld auf
die gleiche Weise aus wie zuvor. Wandle zuerst alle
Wörter in Zahlen um. Wir geben jede Aufforderung, jedes Wort in unserer
Aufforderung eins nach dem anderen ein. Wir geben auch das
Startsequenzwort ein, das in diesem Fall wiederum mit dem Startzitat
bezeichnet wird. Alle diese Eingaben werden zuerst in Vektoren
umgewandelt. Irgendwie gibt unsere
Mystery-Box dann einen Vektor aus, der dem nächsten Wort I entspricht
. Als nächstes brauchen wir eine Möglichkeit, „Kontext“
einzubauen. Tatsächlich
benötigt unser vorheriges Wort,
das Startzitat, Kontexte aus
der Eingabeaufforderung, um in das
richtige erste Wort
übersetzt zu werden . Hier verwende ich den Begriff
Kontext sehr vage. Irgendwie müssen
wir automatisch
Informationen aus der
violetten Eingabeaufforderung in
den grünen Vektor integrieren Informationen aus der
violetten Eingabeaufforderung in
den ,
der das vorherige Wort darstellt. In diesem Fall
beziehen wir den Kontext ein, indem einfach eine gewichtete
Summe aller Vektoren nehmen. Dadurch entsteht nur
ein letzter Vektor , den wir in
die Mystery-Box einspeisen. Als Nächstes fügen wir Berechnungen hinzu, genau wie in
der vorherigen Lektion. Wir haben dieses Mystery-Box
durch eine beliebige Anzahl von
Addieren, Multiplizieren, Subtrahieren usw. ersetzt . Dies wird
durch ein kleines Diagramm
in der Mitte unserer Abbildung dargestellt . Wie zuvor stellte dieses Diagramm früher ein
mehrschichtiges Perzeptron
dar. Aber wir müssen die Details des
Perzeptrons nicht
kennen , um zu
verstehen, was vor sich geht. Wir haben unsere Eingabeaufforderung
und den Beginn der Sequenz jetzt erfolgreich
in das erste Wort I
umgewandelt und den Beginn der Sequenz jetzt erfolgreich
in das erste Wort I Tun Sie dasselbe wie zuvor. Sagen Sie das nächste Wort
nacheinander aus allen
vorherigen Zeichen voraus. Dies ist genau der gleiche Prozess. Als nächstes nehmen wir die Aufforderung,
den Beginn der Sequenz, und das vorherige Wort
I ergibt zusammen genommen das
nächste Wort, Liebe. Wir setzen diesen
Prozess iterativ fort. Schließlich erhalten wir das Wort am Ende der Sequenz als Ausgabe
und wir hören hier auf. Damit ist unsere Pipeline nun abgeschlossen. Wir können jetzt
mehrere Wörter als Eingabe aufnehmen und mehrere
Wörter als Ausgabe vorhersagen. In dieser Lektion haben wir zwei neue
Konzepte hinzugefügt. Wir sagen das nächste Wort nacheinander voraus bis wir das
Ende des Sequenzworts erreichen. Wir fügen auch Kontext hinzu, indem die Aufforderung
in die vorherigen Wörter
integrieren. In diesem Fall haben wir Kontexte hinzugefügt indem wir einfach eine gewichtete Summe verwendet haben. Dies war unser letztes
Diagramm von zuvor. Ganz links wandeln wir
die lila Eingabeaufforderung in Vektoren um. Wir wandeln auch die vorherigen
Wörter in Grün in Vektoren um. Dann fügen wir den Kontext aus der Eingabeaufforderung in
die vorherigen Wörter indem wir eine gewichtete Summe verwenden. Diese gewichtete Summe
wird dann in
ein mehrschichtiges Perzeptron eingespeist , um Berechnungen durchzuführen. Diese Berechnung erzeugt
einen Vektor, und wie zuvor finden
wir den nächstgelegenen Vektor
, der einem Wort entspricht, was in diesem Fall das
Ende des Sequenzworts ist. Damit ist unsere
Pipeline für die Konvertierung
mehrerer Eingabewörter in
mehrere Ausgabewörter abgeschlossen . Es gibt ein Detail, das
wir ausgelassen haben, nämlich wie diese
gewichtete Summe berechnet wird. Damit Sie einen weiteren Begriff in der
Tasche haben , wird diese gewichtete Summe, die den Kontext hinzufügt, formeller
als
Selbstaufmerksamkeit bezeichnet. Bleib dran, denn ich plane,
entweder eine neue Lektion zu
diesem Kurs hinzuzufügen oder
einen neuen Minikurs zu veröffentlichen , der
beschreibt, wie das funktioniert. Im Moment verstehen Sie die
gesamte Mehrwort-Pipeline. Eine Kopie dieser Folien
und weiterer Ressourcen finden Sie auf
der Kurswebsite. Damit ist unsere Einführung in
den Transformator abgeschlossen. Sie verstehen jetzt die Intuition dafür, wie ein Transformator funktioniert und wie man generell
Ausgangstexte aus einem Eingabetext erzeugt . Beachten Sie, dass wir in der Architektur eine Reihe
von Details
weggelassen haben in der Architektur eine Reihe
von Details Dies ist
jedoch eine minimale
Darstellung der wichtigsten Ideen und ein guter
Ausgangspunkt, um
mehr über große
Sprachmodelle zu erfahren .
5. Schlussbemerkung: Herzlichen Glückwunsch, dass Sie es
bis zum Ende des Kurses geschafft haben. Sie haben jetzt
die
Grundlagen großer Sprachmodelle behandelt und erfahren, wie ChatGPT
effektiv funktioniert. Wir haben eine Reihe
verschiedener Begriffe besprochen, Word2vec, das Wörter
einem Vektorraum zuordnet. Wo Addition, Subtraktion
usw. sinnvoll sind. Autoregressive Dekodierung
, bei der
Transformatoren mehrere
Ausgangswörter erzeugen
, indem mehrere
Ausgangswörter erzeugen
, indem sie aus
allen vorherigen Wörtern jeweils ein Wort generieren. Transformatoren, die
Bausteine für große Sprachmodelle und große
Sprachmodelle selbst, die allgemeine Technologie im Vergleich
zur spezifischen Marke
und zum Produkt ChatGPT. Sie verfügen jetzt über die Werkzeuge, um Gespräche über
das Fachgebiet zu
verstehen , und verfügen über ein
hohes Maß an Intuition dafür, wie große
Sprachmodelle funktionieren. Denken Sie daran, dass es
auf der Kurswebsite weitere Ressourcen und eine Kopie der Folien gibt. Wenn Sie Fragen haben, diese
gerne
im Diskussionsbereich hinterlassen. Ich werde auch Links mit
weiteren Informationen in der
Kursbeschreibung hinterlassen . Wenn Sie mehr über KI,
Datenwissenschaft oder Programmierung
erfahren möchten , schauen Sie
sich
unbedingt meine Kurse in meinem Skillshare-Profil
an. Nochmals herzlichen Glückwunsch zum Ende des Kurses
und bis zum nächsten Mal.