Kursleiter: Hallo und willkommen zurück.
In diesem Video sprechen wir darüber, wie man
ChatGPT zur Lösung von "Breakout" verwendet, indem
man ChatGPT zur Implementierung von A3C nutzt.
Ich habe also schon eine Menge verrückter Prompts eingegeben, und wir haben erstaunliche
Ergebnisse erzielt, die wir in einer Sekunde sehen werden.
Also dieses Video wird im Grunde zu Fuß
durch meine Gedanken-Prozess
auf, wie ich tatsächlich die Ergebnisse,
und wie Sie tatsächlich ChatGPT verwenden können,
um A3C Algorithmus als auch zu erstellen.
Okay, ich habe also ähnlich wie bei "DOOM" angefangen und gesagt: Okay,
du bist im Grunde ein Experte für
maschinelles Lernen mit
jahrelanger Erfahrung in der Robotik.
Ich beauftrage Sie mit der Durchführung des A3C-Algorithmus für "Breakout". Das Ziel ist ein voll funktionsfähiger SOTA,
A3C Algorithmus,
der das "Breakout" Spiel spielen kann.
Ich habe Klassen, die Testcodeumgebung
und benutzerdefinierte Versionen
des Adam-Optimierers implementiert, der
als Optimierer für geteilte Gewichte für das
A3C-Modell verwendet wird.
Ich werde Ihnen also diese drei Dinge zur Verfügung
stellen, um den Zusammenhang zu verdeutlichen, den ich hergestellt habe.
Wie ich bereits erwähnt habe, bevor ich den restlichen Code generiert habe, besteht
Ihr Ziel darin, die vollständige Lösung
mit Python und Torch zu implementieren,
ähnlich wie wir es zuvor
getan haben, und den Code zu optimieren,
damit er in Google Colab ausgeführt
werden kann, wie wir es zuvor getan haben.
Kommentieren Sie außerdem jede einzelne
Zeile des Codes, damit die Schülerinnen und Schüler
verstehen können, was Sie im Code gemacht haben.
Stellen Sie bei Bedarf klärende Fragen, verstanden.
Es gibt also einige Überschneidungen mit dem, was wir für
die Konversation Deep Q für "DOOM"
gemacht haben, aber ich habe eine Menge Kontext hinzugefügt, den ich bereits
implementiert habe, und
ich möchte, dass er genutzt wird.
Damit fange ich an, und es wird bestätigt.
Ja, ich verstehe und werde alle Fragen stellen,
bitte stellen Sie den Rest des Codes zur Verfügung.
Dann sagte ich, das ist Adam Optimizer, fügte
den Code für Adam Optimizer ein, für die
Ressourcen, die wir haben, und ich gab diese Anweisung, ich
sagte, warte auf den Rest des Codes,
bevor ich implementiere, ich habe
gerade, bevor ich irgendwelche guten Ergebnisse bekam,
ich fügte eigentlich nur ein und es sprang sofort zur Implementierung
von A3C, ohne auf den Rest zu warten.
Also fügte ich dies als eine Art
systemischen Code hinzu,
eine systemische Aufforderung, und es hieß, okay, bitte stellen Sie die Umgebung
bereit und testen Sie den
Code.
Sie bezieht sich also auf das, was wir in
der ersten Aufforderung angegeben haben.
Ich sagte: "Cool, hier ist
die Umsetzung der Gym-Umgebung.
Ich habe den Hauptcode eingefügt,
ich habe hier Kontext hinzugefügt, wenn Sie einen Blick
darauf werfen, und dies ist
die Hauptdatei, in der alles läuft.
Und dann habe ich gesagt, okay, cool,
warte auf den Testcode.
Und er sagte, ja, aber ich muss
noch den Testcode
sehen, bevor ich A3C implementiere, und ich sagte, cool,
hier ist ein Testcode.
Wenn Sie ein größeres Projekt
haben, können Sie das verwenden,
um diesen Teil des Codes oder
eine Referenz im Stil
zu verwenden, so dass Sie tatsächlich
etwas in Ihrem Codestil erzeugen
können.
Cool, und als ich das gemacht
habe, hieß es, toll, mach es.
Und er sagte, dass ich im Grunde diesen Hauptcode
und die Tests verwenden und dies implementieren werde.
Und dann stand da: "Modell erstellt". py, was wir in dem Kurs auch gemacht
haben.
Und er sagte: "Hier ist das ActorCritic-Modell,
und ich vergleiche es mit unserem.
Dies ist die neuere Version von Python, so dass ein
Großteil der Gewichte Initialisierung
und Dinge wie, dass in einer eleganteren Art und Weise getan werden kann.
So tat es und es tatsächlich verwendet
ziemlich gut, dann erzeugt Zug-Code, und im Grunde
ActorCritic.
Und wenn man sich das anschaut, ist es ziemlich simpel,
also muss es definitiv verbessert
werden.
Sie können also sagen: "Okay, ich habe gesagt,
ich mache weiter", und
es wird weiter aufgeschrieben.
Es hat dies als eine Art Verlust erstellt,
aber es gibt, ja, im Grunde alles,
was wir brauchten, es hat alles optimiert,
und Sie können diesen Optimierer
sehen. am Ende aufhören.
Es wurde also im Grunde alles
verwendet, was wir bisher
definiert haben, sowie
der richtige Verlust, und ja, Optimierer, alles.
Das war's also.
In ein paar einfachen Schritten
haben wir es geschafft, den gesamten Code für
eines der modernsten Modelle zu implementieren,
das zufällig eines der besten im
Jahr 2017, 2018, war.
Bis zum heutigen Tag ist es
in der Lage, komplexe Umgebungen wie "Breakout"
zu lösen. Sie haben also gesehen, dass wir jetzt zum Beispiel
ChatGPT haben, und Sie können
es anleiten, bestimmte Teile des Codes zu implementieren.
Und wenn du nicht weißt, was bestimmte
Teile des Codes tatsächlich
tun, kannst du ihn fragen, z. B. "Cool, kannst du den Trainingsteil erklären und wo
ist der Brauch von Adam?
Ich fordere sie also auf, sich selbst zu erklären. Das ist also eine
weitere Möglichkeit,
sie zu veranlassen, Ihnen mehr Gründe für ihre Erzeugung
zu nennen.
Und Sie können sehen, dass es
tatsächlich Schritt für Schritt erklärt wird.
Also ja, wir können
darauf warten, Sie können die gleichen Aufforderungen
machen und Sie werden wirklich ähnliche Ergebnisse
wie ich erhalten, aber im Allgemeinen
wird es jetzt die Zugfunktion nehmen, die es
hier oben definiert hat, und es wird
im Grunde jeden einzelnen Schritt durchgehen
und ihn implementieren.
Ja, das war's dann wohl.
Ich möchte Sie auf jeden Fall ermutigen, diesen Code
in Google Colab auszuprobieren.
Es ist machbar, aber
es wird ein bisschen schwierig sein, es zum Laufen zu bringen, wegen der Visualisierung und den Einschränkungen
der Goggle Colab Umgebung.
Sie können jedoch auf jeden Fall
gehen und fügen Sie die Fehler hier, und Sie können, können
Sie gehen und erhalten einige ziemlich
anständige Ergebnisse für das zu debuggen den Prozess.
Und ja, damit lasse ich Sie sein, und jetzt
haben Sie die Art und Weise zu verwenden ChatGPT
auf, wie man Wert für A3C zu bekommen.
Und ja, ich hoffe, der Kurs hat
dir bis jetzt gefallen, tschüss.