[PYTHON] Verändert TensorFlow das Bild des tiefen Lernens? Was ich dachte, nachdem ich ein wenig berührt hatte

Neulich hat Google die Deep-Learning-Bibliothek TensorFlow veröffentlicht. Viele Leute haben es bereits versucht und ihre Eindrücke und Verwendung wurden geschrieben. Ich würde es gerne selbst anfassen und schreiben, was ich dachte.

Als ich zum ersten Mal die Erklärung des tiefen Lernens las

Bei der Erklärung des allgemeinen tiefen Lernens wird die folgende Abbildung verwendet.

pic1.png

Es wird als Mechanismus eingeführt, der an den Mechanismus der Nerven erinnert. Daten werden durch Synapse von Nervenzelle zu Nervenzelle übertragen, und die Nervenzelle, die die Daten empfängt, sieht die Daten und sendet erneut neue Daten.

Wenn ich etwas über den Mechanismus des tiefen Lernens verstehe

Wenn es jedoch darum geht, diese Figur zu betrachten und im Programm wiederzugeben, befürchte ich, dass ich viele Zellen reproduzieren muss. Daher ist es einfacher zu verstehen, wenn Sie an Nervenzellen mit der gleichen Funktion wie eine Masse denken und die Figur mithilfe eines hochdimensionalen Vektorraums vereinfachen.

pic2.png

Stellen Sie sich Nervenzellen als synaptische Verbindungen im Vektorraum als eine Art Mapping vor (diejenigen, die es nicht verstehen, sind Funktionen). Diese Abbildung ist oft nicht linear, aber ich denke, viele verwenden etwas, das durch eine Zusammensetzung aus einer linearen Abbildung (dargestellt durch eine Matrix) und einer einfachen nicht linearen Funktion dargestellt wird. Beim maschinellen Lernen wird die Leistung dieses Mappings durch Lernen verbessert. Wenn Sie eine Kombination aus einer linearen Abbildung und einer nichtlinearen Funktion haben, können Sie den Teil der linearen Abbildung als Matrix darstellen und die Matrix jedes Mal aktualisieren, wenn Sie lernen.

Jetzt hier

Aufgrund dieses Verständnisses war ich beim Lesen der Erklärung von TensorFlow sofort davon überzeugt, dass ich mithilfe von Diagrammen tiefes Lernen mache, aber ich fragte mich manchmal: "Was?" Das heißt, obwohl es viele Erklärungen zu Eckpunkten gibt, gibt es fast keine Teile, die Kanten entsprechen. In der vorherigen Abbildung wird der Teil des Mappings, dh die Seite des Diagramms, durch Lernen verstärkt, aber es gibt keine Erklärung für diese Seite. Stattdessen gibt es Variable, und es scheint, dass Sie durch Aktualisieren lernen sollten.

Anscheinend muss ich das Bild des tiefen Lernens in mir selbst neu schreiben.

Beachten Sie, dass der Teil der Zuordnung normalerweise in einen variablen und lernaktualisierten Teil (den linearen Zuordnungsteil) und einen invarianten Teil (den nichtlinearen Funktionsteil) unterteilt ist. Der variable Teil wird durch eine Zahlenspalte dargestellt. Es versteht sich, dass TensorFlows Stil darin besteht, dies als Variable und als Scheitelpunkt zu behandeln, anstatt es in eine Seite einzubetten. Durch Trennen von der Seite zum Scheitelpunkt werden die Daten und die Funktion getrennt, und die Daten, die von der Eingabe und den Trainingsdaten stammen, werden auf die gleiche Weise behandelt. Das Bild sieht dann wie in der folgenden Abbildung gezeigt aus. pic3.png

Zum Zeitpunkt des Lernens fließt die Seite rückwärts und der Lerndatenteil wird aktualisiert. Wenn Sie anhand eines solchen Bildes darüber nachdenken, können Sie sich Deep Learning als etwas vorstellen, das dem Mechanismus anderer Anwendungen ähnelt.

Recommended Posts

Verändert TensorFlow das Bild des tiefen Lernens? Was ich dachte, nachdem ich ein wenig berührt hatte
Ich dachte ein wenig nach, weil Trace Plot von Stan's Parameter schwer zu sehen ist
Ich habe versucht, ein Deep-Learning-Modell von TensorFlow mit TensorFlow Serving zu hosten
Was ich dachte, nachdem ich ein Jahr lang an dem Projekt "Schreibe keine Kommentare" gearbeitet hatte
Ich habe ein Punktbild des Bildes von Irasutoya gemacht. (Teil 1)
Ich habe ein wenig versucht, das Verhalten der Zip-Funktion
Ich habe ein Punktbild des Bildes von Irasutoya gemacht. (Teil 2)
Ich suchte mit Deep Learning nach einer ähnlichen Karte von Hearthstone
[Los] Erstellen Sie einen CLI-Befehl, um die Erweiterung des Bildes zu ändern
Nachdem ich die Python-Bibliothek recherchiert hatte, verstand ich ein wenig über ei.info.
Was passiert, wenn ich die Hyperparameter von SVM (RBF-Kernel) ändere?
Ich habe versucht, das Gesichtsbild mit sparse_image_warp von TensorFlow Addons zu transformieren
Diagramm der Geschichte der Anzahl der Ebenen des tiefen Lernens und der Änderung der Genauigkeit
Ich habe GAN mit Keras gemacht, also habe ich ein Video des Lernprozesses gemacht.
Ich habe die übliche Geschichte ausprobiert, Deep Learning zu verwenden, um den Nikkei-Durchschnitt vorherzusagen
Was Java-Benutzer davon gehalten haben, die Go-Sprache für einen Tag zu verwenden
Ich habe die gängige Geschichte der Vorhersage des Nikkei-Durchschnitts mithilfe von Deep Learning (Backtest) ausprobiert.
Othello-Aus der dritten Zeile von "Implementation Deep Learning" (3)
Visualisieren Sie die Auswirkungen von Deep Learning / Regularisierung
Deep Learning Bilderkennung 3 nach der Modellerstellung
Othello-Aus der dritten Zeile von "Implementation Deep Learning" (2)
Erstellen Sie eine Python-Umgebung, um die Theorie und Implementierung von Deep Learning zu erlernen
So installieren Sie das Deep Learning Framework Tensorflow 1.0 in der Windows Anaconda-Umgebung
Tiefes Lernen! Die Geschichte der Daten selbst, die gelesen werden, wenn sie nach der handschriftlichen Nummernerkennung nicht folgen
Die Geschichte des tiefen Lernens mit TPU
Ein Memorandum zum Studieren und Implementieren von Deep Learning
Ich habe ein wenig über die wachsende API von TensorFlow nachgedacht
Ich habe versucht, die Trapezform des Bildes zu korrigieren
Implementierung eines Deep Learning-Modells zur Bilderkennung
Ich habe versucht, den Bildfilter von OpenCV zu verwenden
Ich habe den Deep Learning Framework Chainer installiert
Ich habe ein wenig über die Klasse recherchiert
Ich habe versucht, mit dem Seq2Seq-Modell von TensorFlow so etwas wie einen Chatbot zu erstellen
Das Konzept der Referenz in Python brach für einen Moment zusammen, also experimentierte ich ein bisschen.
Woran ich in der Aufnahmeprüfungsfrage "Bayes Statistics from the Basics" gedacht habe
Ich habe mir den Inhalt von sklearn (scikit-learn) angesehen. (1) ~ Was ist mit der Implementierung von CountVectorizer? ~
So ändern Sie das generierte Bild von GAN in ein qualitativ hochwertiges Bild nach Ihren Wünschen
Ich dachte darüber nach, warum Python selbst mit dem Gefühl eines Python-Interpreters notwendig ist
Ich habe eine Twitter-App erstellt, die das Bild eines bestimmten Charakters auf der Twitter-Timeline durch Pytorch-Transfer-Lernen identifiziert und speichert