Python & Machine Learning Study Memo ③: Neuronales Netz

Fortsetzung

Referenzmaterialien

Udemy jedermanns KI-Kurs Künstliche Intelligenz und maschinelles Lernen von Grund auf mit Python

Problemeinstellung

Erstellen Sie anhand des Breiten- und Längengrads ein Programm, das bestimmt, ob es zu Tokio oder Kanagawa gehört.

Beurteilungsmethode

Die Beurteilung erfolgt durch ein neuronales Netzwerk mit zwei Eingangsschichten, zwei Zwischenschichten und einer Ausgangsschicht.

Neuronenklasse

class Neuron:
    input_sum = 0.0
    output = 0.0

    def setInput(self, inp):
        self.input_sum += inp

    def getOutput(self):
        self.output = sigmoid(self.input_sum)
        return self.output

    def reset(self):
        self.input_sum = 0
        self.output = 0

setInput Summiere die Eingaben.

getOutput Gibt den Wert aus, der durch Konvertieren des Eingabewerts mit der Aktivierungsfunktion erhalten wird. Neuronen haben die Eigenschaft zu feuern, wenn der Eingabewert den Schwellenwert überschreitet, und dies wird nachgeahmt, indem die Sigmoidfunktion wie oben beschrieben auf die Aktivierungsfunktion angewendet wird.

reset Setzen Sie den Eingabewert zurück.

neurales Netzwerk

class NeuralNetwork:
    #Eingabegewicht
    w_im = [[0.496, 0.512], [-0.501, 0.990], [0.490, -0.502]] # [[i1-m1, i1-m2], [i2-m1, i2-m2], [bias1-m1, bias1-m2]]
    w_mo = [0.121, -0.4996, 0.200] # [m1-o, m2-o, bias2-0]
    #Erklärung jeder Schicht
    input_layer = [0.0, 0.0, 1.0]
    middle_layer = [Neuron(), Neuron(), 1.0]
    ouput_layer = Neuron()
    ...

Das dritte Element von "input_layer" und "middle_layer" ist Bias.

Eingabeformat und Dateilesen

Eingabedatei

Lesen Sie eine Datei, die den Längen- und Breitengrad in einer Zeile beschreibt.

35.48,137.76
35.47,137.81
35.29,138.06
...

Ergebnisse erhalten

Figure_1.png

Es ist möglich, in Bezug auf komplizierte Grenzen zwischen Tokio und Kanagawa zu unterscheiden. Um ein richtiges Urteil zu fällen, ist es notwendig, das Gewicht und den Schwellenwert jeder Eingabe entsprechend einzustellen. Die Einstellmethode wird ab dem nächsten Mal gelernt.

Recommended Posts

Python & Machine Learning Study Memo ③: Neuronales Netz
Python & Machine Learning Study Memo: Vorbereitung der Umgebung
Python & maschinelles Lernen Lernnotiz Machine: Maschinelles Lernen durch Rückausbreitung
Python & Machine Learning Study Memo ⑥: Zahlenerkennung
[Python / Maschinelles Lernen] Warum Deep Learning # 1 Perceptron Neural Network
Python & Machine Learning Study Memo ⑤: Klassifikation von Ayame
Python & Machine Learning Study Memo Introduction: Einführung in die Bibliothek
Python & Machine Learning Study Memo ⑦: Aktienkursprognose
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 13 Training für neuronale Netze ~ Chainer abgeschlossen
"Scraping & maschinelles Lernen mit Python" Lernnotiz
[Memo] Maschinelles Lernen
Ich habe Python 3.5.1 installiert, um maschinelles Lernen zu studieren
Python-Klasse (Python-Lernnotiz ⑦)
Python-Modul (Python-Lernnotiz ④)
Memo zum Kurs für maschinelles Lernen
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 13 Grundlagen des neuronalen Netzwerks
Behandlung von Python-Ausnahmen (Python-Lernnotiz ⑥)
Neuronales Netzwerk mit Python (Scikit-Learn)
Python-Lernnotiz für maschinelles Lernen von Chainer aus Kapitel 2
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 1 und 2
Maschinelles Lernen mit Python! Vorbereitung
Lernressourcen-Lernblock für maschinelles Lernen
Praktisches Memo zum maschinellen Lernsystem
Python Machine Learning Programming> Schlüsselwörter
Implementierung eines neuronalen Netzwerks in Python
Beginnend mit maschinellem Python-Lernen
Konstruktionsnotiz für eine maschinelle Lernumgebung von Python
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 7 Regressionsanalyse
Python-Steuerungssyntax, Funktionen (Python-Lernnotiz ②)
Neuronales Netzwerk mit OpenCV 3 und Python 3
Maschinelles Lernen mit Python (1) Gesamtklassifizierung
Zusammenfassung des maschinellen Lernens von Python-Anfängern
PRML Kapitel 5 Python-Implementierung für neuronale Netze
Eingabe / Ausgabe mit Python (Python-Lernnotiz ⑤)
<Für Anfänger> Python-Bibliothek <Für maschinelles Lernen>
Python: Vorverarbeitung beim maschinellen Lernen: Übersicht
Abschnittsplanung Lernnotiz ~ von Python ~
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 8 Einführung in Numpy
Python-Memo
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 10 Einführung in Cupy
Python-Memo
Maschinelles Lernen
Python-Memo
Python lernen
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 9 Einführung in das Scikit-Lernen
Python-Memo
Hinweise zur Python-Grammatik für maschinelles Lernen in PyQ
Python-Zahlen, Zeichenfolgen, Listentypen (Python-Lernnotiz ①)
[Lernnotiz] Grundlagen des Unterrichts mit Python
Verstärken Sie Bilder für maschinelles Lernen mit Python
Verwenden Sie die API-Gruppe A3RT für maschinelles Lernen aus Python
Implementierung eines 3-Schicht-Neuronalen Netzwerks (kein Lernen)
[Python] Techniken, die häufig beim maschinellen Lernen verwendet werden
Warum Python für maschinelles Lernen ausgewählt wird
"Python Machine Learning Programming" - Zusammenfassung (Jupyter)
Python: Vorverarbeitung beim maschinellen Lernen: Datenerfassung
[Shakyo] Begegnung mit Python zum maschinellen Lernen
Struktur und Betrieb der Python-Daten (Python-Lernnotiz ③)
[Python] Erste Datenanalyse / maschinelles Lernen (Kaggle)
[Python] Wenn ein Amateur mit dem maschinellen Lernen beginnt