Heim Backend-Entwicklung Python-Tutorial Wie man mit Python die KI trainiert, das Snake-Spiel zu spielen

Wie man mit Python die KI trainiert, das Snake-Spiel zu spielen

Jan 23, 2024 am 08:39 AM
人工智能 机器学习

Dies ist eine einfache Anleitung, wie man mithilfe von Reinforcement Learning einer KI beibringt, das Snake-Spiel zu spielen. Der Artikel zeigt Schritt für Schritt, wie man eine benutzerdefinierte Spielumgebung einrichtet und die in Python standardisierte Stable-Baselines3-Algorithmusbibliothek verwendet, um die KI für das Spielen von Snake zu trainieren.

In diesem Projekt verwenden wir Stable-Baselines3, eine standardisierte Bibliothek, die eine benutzerfreundliche PyTorch-basierte Implementierung von Reinforcement Learning (RL)-Algorithmen ermöglicht.

Zunächst richten Sie die Umgebung ein. Es gibt viele integrierte Spielumgebungen in der Stable-Baselines-Bibliothek. Hier verwenden wir eine modifizierte Version des klassischen Snake, mit zusätzlichen kreuz und quer verlaufenden Wänden in der Mitte.

Wie man mit Python die KI trainiert, das Snake-Spiel zu spielen

Ein besserer Belohnungsplan wäre, nur Schritte zu belohnen, die dem Essen näher kommen. Hier ist Vorsicht geboten, denn die Schlange kann immer noch nur lernen, im Kreis zu laufen, sich bei der Annäherung an Futter eine Belohnung zu holen, sich dann umzudrehen und zurückzukommen. Um dies zu vermeiden, müssen wir auch eine gleichwertige Strafe für den Verzicht auf Nahrungsmittel verhängen, das heißt, wir müssen sicherstellen, dass der Nettogewinn im geschlossenen Kreislauf Null ist. Wir müssen auch eine Strafe für das Auftreffen auf Wände einführen, da sich eine Schlange in manchen Fällen dafür entscheidet, gegen eine Wand zu schlagen, um näher an ihr Futter heranzukommen.

Die meisten Algorithmen für maschinelles Lernen sind recht komplex und schwer zu implementieren. Glücklicherweise implementiert Stable-Baselines3 bereits mehrere hochmoderne Algorithmen, die uns zur Verfügung stehen. Im Beispiel verwenden wir Proximal Policy Optimization (PPO). Wir müssen zwar nicht im Detail wissen, wie der Algorithmus funktioniert (sehen Sie sich dieses Erklärvideo an, wenn Sie interessiert sind), aber wir müssen ein grundlegendes Verständnis davon haben, was seine Hyperparameter sind und was sie tun. Glücklicherweise gibt es bei PPO nur wenige davon und wir werden Folgendes verwenden:

learning_rate: Legt fest, wie groß die Schritte für Richtlinienaktualisierungen sind, genau wie bei anderen maschinellen Lernszenarien. Wenn Sie den Wert zu hoch einstellen, kann der Algorithmus daran gehindert werden, die richtige Lösung zu finden, oder ihn sogar in eine Richtung drängen, von der er sich nie wieder erholen kann. Wenn Sie den Wert zu niedrig einstellen, dauert das Training länger. Ein gängiger Trick besteht darin, eine Zeitplanerfunktion zu verwenden, um es während des Trainings anzupassen.

Gamma: Rabattfaktor für zukünftige Belohnungen, zwischen 0 (nur unmittelbare Belohnungen sind wichtig) und 1 (zukünftige Belohnungen haben den gleichen Wert wie unmittelbare Belohnungen). Um den Trainingseffekt aufrechtzuerhalten, ist es am besten, ihn über 0,9 zu halten.

clip_range1+-clip_range: Eine wichtige Funktion von PPO, die dafür sorgt, dass sich das Modell während des Trainings nicht wesentlich ändert. Die Reduzierung hilft bei der Feinabstimmung des Modells in späteren Trainingsphasen.

ent_coef: Je höher sein Wert, desto mehr wird der Algorithmus dazu ermutigt, verschiedene nicht optimale Aktionen zu untersuchen, was dem Schema helfen kann, lokale Belohnungsmaxima zu umgehen.

Im Allgemeinen beginnen Sie einfach mit den Standard-Hyperparametern.

Die nächsten Schritte bestehen darin, einige vorgegebene Schritte zu trainieren, dann selbst zu sehen, wie der Algorithmus funktioniert, und dann mit den neuen möglichen Parametern, die die beste Leistung erbringen, von vorne zu beginnen. Hier zeichnen wir die Belohnungen für verschiedene Trainingszeiten auf.

Wie man mit Python die KI trainiert, das Snake-Spiel zu spielen

Nach genügend Schritten konvergiert der Schlangentrainingsalgorithmus zu einem bestimmten Belohnungswert. Sie können das Training abschließen oder versuchen, die Parameter zu verfeinern und mit dem Training fortzufahren.

Die zum Erreichen der maximal möglichen Belohnung erforderlichen Trainingsschritte hängen stark vom Problem, dem Belohnungsschema und den Hyperparametern ab. Daher wird empfohlen, vor dem Training des Algorithmus eine Optimierung durchzuführen. Am Ende des Beispiels zum Trainieren der KI für das Schlangenspiel stellten wir fest, dass die KI in der Lage war, Nahrung im Labyrinth zu finden und eine Kollision mit dem Schwanz zu vermeiden.

Das obige ist der detaillierte Inhalt vonWie man mit Python die KI trainiert, das Snake-Spiel zu spielen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Bytedance Cutting führt SVIP-Supermitgliedschaft ein: 499 Yuan für ein fortlaufendes Jahresabonnement, das eine Vielzahl von KI-Funktionen bietet Bytedance Cutting führt SVIP-Supermitgliedschaft ein: 499 Yuan für ein fortlaufendes Jahresabonnement, das eine Vielzahl von KI-Funktionen bietet Jun 28, 2024 am 03:51 AM

Diese Seite berichtete am 27. Juni, dass Jianying eine von FaceMeng Technology, einer Tochtergesellschaft von ByteDance, entwickelte Videobearbeitungssoftware ist, die auf der Douyin-Plattform basiert und grundsätzlich kurze Videoinhalte für Benutzer der Plattform produziert Windows, MacOS und andere Betriebssysteme. Jianying kündigte offiziell die Aktualisierung seines Mitgliedschaftssystems an und führte ein neues SVIP ein, das eine Vielzahl von KI-Schwarztechnologien umfasst, wie z. B. intelligente Übersetzung, intelligente Hervorhebung, intelligente Verpackung, digitale menschliche Synthese usw. Preislich beträgt die monatliche Gebühr für das Clipping von SVIP 79 Yuan, die Jahresgebühr 599 Yuan (Hinweis auf dieser Website: entspricht 49,9 Yuan pro Monat), das fortlaufende Monatsabonnement beträgt 59 Yuan pro Monat und das fortlaufende Jahresabonnement beträgt 499 Yuan pro Jahr (entspricht 41,6 Yuan pro Monat). Darüber hinaus erklärte der Cut-Beamte auch, dass diejenigen, die den ursprünglichen VIP abonniert haben, das Benutzererlebnis verbessern sollen

Kontexterweiterter KI-Codierungsassistent mit Rag und Sem-Rag Kontexterweiterter KI-Codierungsassistent mit Rag und Sem-Rag Jun 10, 2024 am 11:08 AM

Verbessern Sie die Produktivität, Effizienz und Genauigkeit der Entwickler, indem Sie eine abrufgestützte Generierung und ein semantisches Gedächtnis in KI-Codierungsassistenten integrieren. Übersetzt aus EnhancingAICodingAssistantswithContextUsingRAGandSEM-RAG, Autor JanakiramMSV. Obwohl grundlegende KI-Programmierassistenten natürlich hilfreich sind, können sie oft nicht die relevantesten und korrektesten Codevorschläge liefern, da sie auf einem allgemeinen Verständnis der Softwaresprache und den gängigsten Mustern beim Schreiben von Software basieren. Der von diesen Coding-Assistenten generierte Code eignet sich zur Lösung der von ihnen zu lösenden Probleme, entspricht jedoch häufig nicht den Coding-Standards, -Konventionen und -Stilen der einzelnen Teams. Dabei entstehen häufig Vorschläge, die geändert oder verfeinert werden müssen, damit der Code in die Anwendung übernommen wird

Kann LLM durch Feinabstimmung wirklich neue Dinge lernen: Die Einführung neuen Wissens kann dazu führen, dass das Modell mehr Halluzinationen hervorruft Kann LLM durch Feinabstimmung wirklich neue Dinge lernen: Die Einführung neuen Wissens kann dazu führen, dass das Modell mehr Halluzinationen hervorruft Jun 11, 2024 pm 03:57 PM

Large Language Models (LLMs) werden auf riesigen Textdatenbanken trainiert und erwerben dort große Mengen an realem Wissen. Dieses Wissen wird in ihre Parameter eingebettet und kann dann bei Bedarf genutzt werden. Das Wissen über diese Modelle wird am Ende der Ausbildung „verdinglicht“. Am Ende des Vortrainings hört das Modell tatsächlich auf zu lernen. Richten Sie das Modell aus oder verfeinern Sie es, um zu erfahren, wie Sie dieses Wissen nutzen und natürlicher auf Benutzerfragen reagieren können. Aber manchmal reicht Modellwissen nicht aus, und obwohl das Modell über RAG auf externe Inhalte zugreifen kann, wird es als vorteilhaft angesehen, das Modell durch Feinabstimmung an neue Domänen anzupassen. Diese Feinabstimmung erfolgt mithilfe von Eingaben menschlicher Annotatoren oder anderer LLM-Kreationen, wobei das Modell auf zusätzliches Wissen aus der realen Welt trifft und dieses integriert

Sieben coole technische Interviewfragen für GenAI und LLM Sieben coole technische Interviewfragen für GenAI und LLM Jun 07, 2024 am 10:06 AM

Um mehr über AIGC zu erfahren, besuchen Sie bitte: 51CTOAI.x Community https://www.51cto.com/aigc/Translator|Jingyan Reviewer|Chonglou unterscheidet sich von der traditionellen Fragendatenbank, die überall im Internet zu sehen ist erfordert einen Blick über den Tellerrand hinaus. Large Language Models (LLMs) gewinnen in den Bereichen Datenwissenschaft, generative künstliche Intelligenz (GenAI) und künstliche Intelligenz zunehmend an Bedeutung. Diese komplexen Algorithmen verbessern die menschlichen Fähigkeiten, treiben Effizienz und Innovation in vielen Branchen voran und werden zum Schlüssel für Unternehmen, um wettbewerbsfähig zu bleiben. LLM hat ein breites Anwendungsspektrum und kann in Bereichen wie der Verarbeitung natürlicher Sprache, der Textgenerierung, der Spracherkennung und Empfehlungssystemen eingesetzt werden. Durch das Lernen aus großen Datenmengen ist LLM in der Lage, Text zu generieren

Fünf Schulen des maschinellen Lernens, die Sie nicht kennen Fünf Schulen des maschinellen Lernens, die Sie nicht kennen Jun 05, 2024 pm 08:51 PM

Maschinelles Lernen ist ein wichtiger Zweig der künstlichen Intelligenz, der Computern die Möglichkeit gibt, aus Daten zu lernen und ihre Fähigkeiten zu verbessern, ohne explizit programmiert zu werden. Maschinelles Lernen hat ein breites Anwendungsspektrum in verschiedenen Bereichen, von der Bilderkennung und der Verarbeitung natürlicher Sprache bis hin zu Empfehlungssystemen und Betrugserkennung, und es verändert unsere Lebensweise. Im Bereich des maschinellen Lernens gibt es viele verschiedene Methoden und Theorien, von denen die fünf einflussreichsten Methoden als „Fünf Schulen des maschinellen Lernens“ bezeichnet werden. Die fünf Hauptschulen sind die symbolische Schule, die konnektionistische Schule, die evolutionäre Schule, die Bayes'sche Schule und die Analogieschule. 1. Der Symbolismus, auch Symbolismus genannt, betont die Verwendung von Symbolen zum logischen Denken und zum Ausdruck von Wissen. Diese Denkrichtung glaubt, dass Lernen ein Prozess der umgekehrten Schlussfolgerung durch das Vorhandene ist

Um ein neues wissenschaftliches und komplexes Frage-Antwort-Benchmark- und Bewertungssystem für große Modelle bereitzustellen, haben UNSW, Argonne, die University of Chicago und andere Institutionen gemeinsam das SciQAG-Framework eingeführt Um ein neues wissenschaftliches und komplexes Frage-Antwort-Benchmark- und Bewertungssystem für große Modelle bereitzustellen, haben UNSW, Argonne, die University of Chicago und andere Institutionen gemeinsam das SciQAG-Framework eingeführt Jul 25, 2024 am 06:42 AM

Herausgeber | Der Frage-Antwort-Datensatz (QA) von ScienceAI spielt eine entscheidende Rolle bei der Förderung der Forschung zur Verarbeitung natürlicher Sprache (NLP). Hochwertige QS-Datensätze können nicht nur zur Feinabstimmung von Modellen verwendet werden, sondern auch effektiv die Fähigkeiten großer Sprachmodelle (LLMs) bewerten, insbesondere die Fähigkeit, wissenschaftliche Erkenntnisse zu verstehen und zu begründen. Obwohl es derzeit viele wissenschaftliche QS-Datensätze aus den Bereichen Medizin, Chemie, Biologie und anderen Bereichen gibt, weisen diese Datensätze immer noch einige Mängel auf. Erstens ist das Datenformular relativ einfach, die meisten davon sind Multiple-Choice-Fragen. Sie sind leicht auszuwerten, schränken jedoch den Antwortauswahlbereich des Modells ein und können die Fähigkeit des Modells zur Beantwortung wissenschaftlicher Fragen nicht vollständig testen. Im Gegensatz dazu offene Fragen und Antworten

SOTA Performance, eine multimodale KI-Methode zur Vorhersage der Protein-Ligand-Affinität in Xiamen, kombiniert erstmals molekulare Oberflächeninformationen SOTA Performance, eine multimodale KI-Methode zur Vorhersage der Protein-Ligand-Affinität in Xiamen, kombiniert erstmals molekulare Oberflächeninformationen Jul 17, 2024 pm 06:37 PM

Herausgeber |. KX Im Bereich der Arzneimittelforschung und -entwicklung ist die genaue und effektive Vorhersage der Bindungsaffinität von Proteinen und Liganden für das Arzneimittelscreening und die Arzneimitteloptimierung von entscheidender Bedeutung. Aktuelle Studien berücksichtigen jedoch nicht die wichtige Rolle molekularer Oberflächeninformationen bei Protein-Ligand-Wechselwirkungen. Auf dieser Grundlage schlugen Forscher der Universität Xiamen ein neuartiges Framework zur multimodalen Merkmalsextraktion (MFE) vor, das erstmals Informationen über Proteinoberfläche, 3D-Struktur und -Sequenz kombiniert und einen Kreuzaufmerksamkeitsmechanismus verwendet, um verschiedene Modalitäten zu vergleichen Ausrichtung. Experimentelle Ergebnisse zeigen, dass diese Methode bei der Vorhersage von Protein-Ligand-Bindungsaffinitäten Spitzenleistungen erbringt. Darüber hinaus belegen Ablationsstudien die Wirksamkeit und Notwendigkeit der Proteinoberflächeninformation und der multimodalen Merkmalsausrichtung innerhalb dieses Rahmens. Verwandte Forschungen beginnen mit „S

SK Hynix wird am 6. August neue KI-bezogene Produkte vorstellen: 12-Layer-HBM3E, 321-High-NAND usw. SK Hynix wird am 6. August neue KI-bezogene Produkte vorstellen: 12-Layer-HBM3E, 321-High-NAND usw. Aug 01, 2024 pm 09:40 PM

Laut Nachrichten dieser Website vom 1. August hat SK Hynix heute (1. August) einen Blogbeitrag veröffentlicht, in dem es ankündigt, dass es am Global Semiconductor Memory Summit FMS2024 teilnehmen wird, der vom 6. bis 8. August in Santa Clara, Kalifornien, USA, stattfindet viele neue Technologien Generation Produkt. Einführung des Future Memory and Storage Summit (FutureMemoryandStorage), früher Flash Memory Summit (FlashMemorySummit), hauptsächlich für NAND-Anbieter, im Zusammenhang mit der zunehmenden Aufmerksamkeit für die Technologie der künstlichen Intelligenz wurde dieses Jahr in Future Memory and Storage Summit (FutureMemoryandStorage) umbenannt Laden Sie DRAM- und Speicheranbieter und viele weitere Akteure ein. Neues Produkt SK Hynix wurde letztes Jahr auf den Markt gebracht

See all articles