[PYTHON] Tiefes Lernen von Grund auf neu (Kostenberechnung)

Dies ist eine Fortsetzung von Deep Learning from Zero (Forward Propagation).

Letztes Mal haben wir die Vorwärtsausbreitung implementiert, um die Wahrscheinlichkeit $ AL $ abzuleiten, dass der Eingabewert $ 1 $ ist. Dieses Mal werden wir zur Verbesserung der Genauigkeit des Modells bis zu dem Punkt implementieren, an dem der Fehler zwischen dem vorhergesagten Wert und dem richtigen Antwortetikett abgeleitet wird.

Kosten

Da diese DNN vorhersagt, ob das Eingabebild eine Katze ist oder nicht, verwenden wir den Kreuzentropiefehler für die Kostenfunktion.

Kreuzentropiefehler

Es wird durch die folgende Formel ausgedrückt. $ AL $ ist eine Vorhersage der Wahrscheinlichkeit, dass Y 1 ist, und $ Y $ ist die richtige Bezeichnung. $L(AL, Y) = \sum^m_{i=1}{(-Ylog(AL) - (1-Y)log(1-A))}$

Gibt $ -log (AL) $ zurück, wenn $ Y = 1 $ ist, und $ log (1-AL) $, wenn $ Y = 0 $. Aus der folgenden Grafik können Sie ersehen, dass die Kosten umso höher sind, je weiter der vorhergesagte Wert und die richtige Antwort entfernt sind.

cross_entropy_cost_y_0.png

cross_entropy_cost_y_1.png

Die Funktion ist wie folgt.

def compute_cost(AL, Y):
    m = Y.shape[1]
    logprobs = np.multiply(Y, np.log(AL)) + np.multiply(1-Y, np.log(1-AL))
    cost = -1/m * np.sum(logprobs)
    return cost

Gibt die Kosten zurück, indem der vektorisierte vorhergesagte Wert $ AL $ und die korrekte Bezeichnung $ Y $ übergeben werden.

Recommended Posts

Tiefes Lernen von Grund auf neu (Kostenberechnung)
Deep Learning von Grund auf neu
Deep Learning von Grund auf 1-3 Kapitel
Deep Learning Memo von Grund auf neu gemacht
[Lernnotiz] Deep Learning von Grund auf neu gemacht [Kapitel 7]
Tiefes Lernen von Grund auf neu (Vorwärtsausbreitung)
Tiefes Lernen / Tiefes Lernen von Grund auf 2-Versuchen Sie, GRU zu bewegen
Deep Learning / Deep Learning von Grund auf neu Kapitel 6 Memo
[Lernnotiz] Deep Learning von Grund auf neu gemacht [Kapitel 5]
[Lernnotiz] Deep Learning von Grund auf neu gemacht [Kapitel 6]
"Deep Learning von Grund auf neu" mit Haskell (unvollendet)
Deep Learning / Deep Learning von Grund auf neu Kapitel 7 Memo
[Windows 10] Aufbau einer "Deep Learning from Scratch" -Umgebung
Lernbericht über das Lesen von "Deep Learning von Grund auf neu"
[Deep Learning von Grund auf neu] Über die Optimierung von Hyperparametern
"Deep Learning from Grund" Memo zum Selbststudium (Teil 12) Deep Learning
[Lernnotiz] Deep Learning von Grund auf neu gemacht [~ Kapitel 4]
Selbststudien-Memo "Deep Learning from Grund" (unlesbares Glossar)
"Deep Learning from Grund" Memo zum Selbststudium (Nr. 9) MultiLayerNet-Klasse
GitHub des guten Buches "Deep Learning von Grund auf neu"
Deep Learning von Grund auf neu Kapitel 2 Perceptron (Memo lesen)
[Lernnotiz] Deep Learning von Grund auf ~ Implementierung von Dropout ~
Python vs Ruby "Deep Learning von Grund auf neu" Zusammenfassung
"Deep Learning from Grund" Memo zum Selbststudium (10) MultiLayerNet-Klasse
"Deep Learning from Grund" Memo zum Selbststudium (Nr. 11) CNN
Deep Learning / LSTM Scratch Code
"Deep Learning from Grund" Memo zum Selbststudium (Nr. 19) Datenerweiterung
Anwendung von Deep Learning 2 von Grund auf neu Spam-Filter
Ich habe versucht, Dropout zu erklären
Deep Learning / Deep Learning von Grund auf neu 2 Kapitel 4 Memo
[Deep Learning von Grund auf neu] Implementierung der Momentum-Methode und der AdaGrad-Methode
Ein Amateur stolperte in Deep Learning von Grund auf neu Hinweis: Kapitel 1
Deep Learning / Deep Learning von Grund auf neu Kapitel 3 Memo
Deep Learning / Deep Learning von Null 2 Kapitel 5 Memo
Ein Amateur stolperte über Deep Learning ❷ von Grund auf neu Hinweis: Kapitel 5
Ein Amateur stolperte über Deep Learning ❷ von Grund auf neu Hinweis: Kapitel 2
Ein Amateur stolperte in Deep Learning von Grund auf neu Hinweis: Kapitel 3
Ein Amateur stolperte in Deep Learning von Grund auf neu. Hinweis: Kapitel 7
Ein Amateur stolperte in Deep Learning von Grund auf neu Hinweis: Kapitel 5
Ein Amateur stolperte über Deep Learning ❷ von Grund auf neu Hinweis: Kapitel 1
Ein Amateur stolperte über Deep Learning ❷ von Grund auf neu Hinweis: Kapitel 4
Selbststudien-Memo "Deep Learning from Grund" (Nr. 18) Eins! Miau! Grad-CAM!
Deep Learning / Deep Learning von Null 2 Kapitel 7 Memo
Deep Learning / Deep Learning von Null 2 Kapitel 8 Memo
Deep Learning / Deep Learning von Grund auf neu Kapitel 5 Memo
Ein Amateur stolperte in Deep Learning von Grund auf neu Hinweis: Kapitel 4
Deep Learning / Deep Learning von Grund auf neu Kapitel 4 Memo
Deep Learning / Deep Learning von Grund auf neu 2 Kapitel 3 Memo
Tiefes Lernen
Ein Amateur stolperte in Deep Learning von Grund auf neu Hinweis: Kapitel 2
Ich habe versucht, Perceptron Teil 1 [Deep Learning von Grund auf neu] zu implementieren.
Deep Learning / Deep Learning von Null 2 Kapitel 6 Memo
Selbststudien-Memo "Deep Learning from Grund" (Nr. 15) TensorFlow-Anfänger-Tutorial
Deep Learning Tutorial aus dem Umgebungsbau
[Deep Learning von Grund auf neu] Methoden zur Aktualisierung der wichtigsten Parameter für neuronale Netze
Lua-Version Deep Learning von Grund auf neu Teil 6 [Inferenzverarbeitung für neuronale Netze]
Warum ModuleNotFoundError: In "Deep Learning from Grund" wird kein Modul mit dem Namen "didaset.mnist" angezeigt.