Führen Sie Aufzeichnungen über Ihr Lernen, um Ingenieur für maschinelles Lernen zu werden. Ich werde es ständig schreiben.
Dieses Mal werde ich das Perceptron und das neuronale Netzwerk erklären, die die Grundlagen des tiefen Lernens sind.
Dieser Artikel ist ein Memo, das ich beim Lesen von "Deep Learning from Zero" gelernt habe (Autor: Mr. Yasuki Saito). Bitte nehmen Sie den Inhalt nicht und lesen Sie ihn als Referenz, bis Sie es satt haben. (Punkte und Fragen sind willkommen, aber nur in sanften Worten.) Link: Deep Learning von Grund auf neu
・ Was ist Perceptron? ・ Was ist ein neuronales Netzwerk?
Es ist ein Algorithmus, der eine Ausgabe für mehrere Eingaben zurückgibt. Es ist wie AND / OR / NAND in einer Logikschaltung. Deep Learning, das auch ein neuronales Netzwerk ist, basiert auf diesem Algorithmus.
#Schreiben Sie mit Perceptron eine UND-Schaltung mit 2 Eingängen
def AND(x1,x2,bias=0.5):
tmp = w1*x1 +w2*x2 - bias
if tmp <= 0:
return 0
elif tmp > 0:
return 1
Die Variablen, die sich auf die Ausgabe auswirken, sind der Eingabewert, das Gewicht und die Vorspannung. Diese werden als Parameter bezeichnet. Das neuronale Netzwerk passt die Parameter an und trainiert sie.
In der Abbildung sieht es genauso aus wie das mehrschichtige Perceptron. Es gibt jedoch einen großen Unterschied zu Perceptron.
Die Summe der Eingangssignale (Eingangswert, Vorspannung, Gewicht) ändert den Ausgangswert an der Schwelle. (ein Feuer anzünden) Perceptron hat auch eine Aktivierungsfunktion, die nichts ändert, Im neuronalen Netzwerk ändert sich die Art der Aktivierungsfunktion in Abhängigkeit vom Klassifizierungsproblem und dem Regressionsproblem.
Durch eine Aktivierungsfunktion können verschiedene Werte ausgegeben werden. Zusätzlich zum Einstellen des Eingabewerts, des Gewichts und der Vorspannung kann der Ausgabewert durch Ändern der Funktion geändert werden.
Unabhängig davon, ob es sich um ein Klassifizierungsproblem oder ein Regressionsproblem handelt, besteht der Zweck des maschinellen Lernens darin, die Genauigkeit zu verbessern. Daher ist es notwendig, den optimalen Wert für den Parameter zu finden, während das Gewicht und die Vorspannung eingestellt werden. Die Feineinstellung kann nicht durch eine lineare Funktion gelöst werden. (Weil eine kleine Änderung des Werts einen großen Unterschied macht) Es kann mit einer nichtlinearen Funktion gelöst werden.
Recommended Posts