Einführung in die künstliche Intelligenz mit Python 1 "Genetic Algorithm-Theory-"

Relativ leicht verständlicher genetischer Algorithmus

Dies ist, was künstliche Intelligenz (KI) nicht so viel körperliche Kraft erfordert, um von 1 bis 10 zu verstehen. Ich hoffe, dass diejenigen, die am Eingang zur künstlichen Intelligenz gestanden haben, auch daran arbeiten und ihre Ideen in diesem wunderbaren Algorithmus voll ausnutzen werden.

Was ist ein "genetischer" Algorithmus?

Angenommen, es gibt einen Kobold, der sich mit 100 Parametern bewegt. Die Parameter werden zufällig bestimmt und es gibt insgesamt 50 Kakerlaken. Wenn Sie mit ihnen um etwas konkurrieren, haben sie alle unterschiedliche Parameter, sodass einige schneller und andere langsamer laufen. Dann ordne sie. Wenn Sie an erster und zweiter Stelle ein Kind zur Welt bringen, kann dieses Kind dann ein früher Mann werden? Sie können ** "genetisch" ** sein. Mit diesem Gefühl haben Sie eine Gruppe mit besseren Tieren als zuvor, wenn Sie die 10 besten Tiere zur Welt bringen und die Mitglieder durch die langsameren der ursprünglich 50 Tiere wechseln.

Und wenn Sie erneut an Wettkämpfen teilnehmen, genetisch überlegene Kinder zur Welt bringen, sie ersetzen, erneut antreten und so weiter, wird eines Tages ein unglaublich schneller Typ herauskommen.

Das ist der Hintergrund des genetischen Algorithmus.

Erstens umfasst KI zufällige Wälder und neuronale Netze, aber die meisten davon entsprechen der Lösung von Optimierungsproblemen. Der genetische Algorithmus (GA) ist einer von ihnen, und der Entwurf besteht darin, viele Organismen erscheinen zu lassen, um das Überleben zu konkurrieren und dann den stärksten zu bestimmen.

Dies kann in die folgenden Verfahren eingeteilt werden.

** ⑴ Erstpopulation generieren ⑵ Bewertung ⑶ Crossover (genetisch) ⑷ Mutation ⑸ Gruppenwechsel (Generationswechsel) Wiederholen Sie danach die Schritte ⑵ bis ⑸ **

Werfen wir einen Blick auf jeden.

⑴ Anfangsgruppe (erste Generation)

Das Beispiel handelte von Kakerlaken, aber ich denke natürlich selbst über die Einstellungen nach. Wenn hier die Reihenfolge des Parametersatzes berücksichtigt wird, ist es ** so, als wäre es die genetische Information (Genom) eines Organismus **. Die anfängliche Anzahl von Individuen und die Anzahl von Parametern werden bestimmt, Individuen werden zufällig erzeugt und dies wird als erste Generation verwendet.

⑵ Bewertung

Entscheiden Sie, was Sie bewerten möchten, und bewerten Sie jeden Einzelnen entsprechend. Im obigen Beispiel ist die "Laufgeschwindigkeit" der Kakerlake das Bewertungskriterium.

⑶ Frequenzweiche

Dies ist der Prozess, der das Konzept der Vererbung verwendet. Überlegen Sie in der Bewertungsphase, wie Sie die Parameter des Kindes bestimmen, wenn Sie die hervorragenden als Eltern zur Welt bringen. Häufig wird ein n-Punkt-Crossover verwendet, bei dem das Elterngen (eine Folge von Parametern) an n-Punkten geteilt und in zwei Hälften vererbt wird.

⑷ Mutation

Die Gene der durch Kreuzung vererbten Nachkommen werden mit einer bestimmten Wahrscheinlichkeit zufällig modifiziert. Infolgedessen bleibt der Wettbewerb nicht hängen, selbst wenn dieselbe Person auftritt (das heißt, ** Zufälligkeit ist gegeben und ** macht einen Unterschied zwischen Personen).

Zusammenfassung

wie wäre es mit. Die Person, die darüber nachdenkt, muss ein Genie sein. Es ist ein wirklich interessanter Algorithmus, sich auf das Überlebensmodell eines Organismus zu beziehen. Genau das ist genetische Manipulation. Lassen Sie es uns jetzt in die Praxis umsetzen. Sie sollten die Schönheit dieses Algorithmus selbst genießen.

Einführung in die künstliche Intelligenz durch Python 2 "Genetic Algorithm-Practice-"

Übrigens, laut einer Veröffentlichung irgendwo kann der automatische Handel mit Devisen usw. die besten Ergebnisse erzielen, wenn man dies als andere KI verwendet ...?

Recommended Posts

Einführung in die künstliche Intelligenz mit Python 1 "Genetic Algorithm-Theory-"
Einführung in die künstliche Intelligenz mit Python 2 "Genetic Algorithm-Practice-"
Einführung in das Auffüllen von Python-Bildern Auffüllen von Bildern mit ImageDataGenerator
[Einführung in Python] Verwenden wir foreach mit Python
Die erste künstliche Intelligenz. Fordern Sie die Webausgabe mit Python heraus. ~ Kolbeneinführung
Markov Chain Artificial Brainless mit Python + Janome (1) Einführung in Janome
Markov-Kette Künstlich Gehirnlos mit Python + Janome (2) Einführung in die Markov-Kette
Einführung in Tornado (1): Python Web Framework mit Tornado gestartet
Einführung in die Python-Sprache
Einführung in OpenCV (Python) - (2)
Einführung in den Formationsflug mit Tello edu (Python)
Einführung in Python mit Atom (unterwegs)
Einführung in das Generalized Linear Model (GLM) von Python
[Einführung in die Udemy Python3 + -Anwendung] 9. Drucken Sie zunächst mit print
[Einführung in Python] Wie iteriere ich mit der Bereichsfunktion?
Spielen mit der benutzerlokalen API für künstliche Intelligenz in Python
[Kapitel 5] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Einführung in die verteilte Parallelverarbeitung von Python durch Ray
Einführung in die Mathematik ab Python Study Memo Vol.1
Lesehinweis: Einführung in die Datenanalyse mit Python
Ich habe versucht, künstliches Perzeptron mit Python zu implementieren
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 2] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 4] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Stellen Sie mit Python eine Verbindung zu BigQuery her
Einführung in Python Django (2) Win
Vorhersage von Kerzenbeinen mit künstlicher Intelligenz
Stellen Sie mit Python eine Verbindung zu Wikipedia her
Post to Slack mit Python 3
Einführung in RDB mit sqlalchemy Ⅰ
Einführung in die serielle Kommunikation [Python]
Schalten Sie Python mit Alternativen auf 2.7 um
Schreiben Sie mit Python in csv
[Einführung in Python] <Liste> [Bearbeiten: 22.02.2020]
Einführung in Python (Python-Version APG4b)
Eine Einführung in die Python-Programmierung
Einführung in Python For, While
Eine Python-Probe zum Lernen von XOR mit einem genetischen Algorithmus in einem neuronalen Netz
Einführung in sie gemacht mit Python ~ Tinder Automatisierungsprojekt ~ Episode 6
20200329_Einführung in die Datenanalyse mit Python 2nd Edition Personal Summary
Einführung in sie gemacht mit Python ~ Tinder Automatisierungsprojekt ~ Episode 5
Einführung in Python für VBA-Benutzer - Aufrufen von Python aus Excel mit xlwings-
[Raspi4; Einführung in den Sound] Stabile Aufzeichnung der Toneingabe mit Python ♪
[Einführung in Python] So erhalten Sie Daten mit der Funktion listdir
[Einführung in Udemy Python3 + Application] 51. Seien Sie vorsichtig mit Standardargumenten
[Einführung in die Udemy Python3 + -Anwendung] 58. Lambda
[Einführung in die Udemy Python3 + -Anwendung] 31. Kommentar
Python: So verwenden Sie Async mit
Link, um mit Python zu beginnen
Einführung in die Python Numerical Calculation Library NumPy
Trainieren! !! Einführung in Python Type (Type Hints)
[Einführung in Python3 Tag 1] Programmierung und Python
[Python] Mit Python in eine CSV-Datei schreiben
Schön dich mit Python zu treffen
[Einführung in Python] <numpy ndarray> [edit: 2020/02/22]
[Einführung in die Udemy Python3 + -Anwendung] 57. Decorator
Versuchen Sie, Facebook mit Python zu betreiben
Einführung in Python Hands On Teil 1
[Einführung in Python3 Tag 13] Kapitel 7 Zeichenfolgen (7.1-7.1.1.1)