[PYTHON] Deep Learning Großtechnologie

Deep Learning (betreut von der Society of Artificial Intelligence) Buch - 2015/11/5 http://www.amazon.co.jp/dp/476490487X/ref=pd_lpo_sbs_dp_ss_1?pf_rd_p=187205609&pf_rd_s=lpo-top-stripe&pf_rd_t=201&pf_rd_i=4061529021&pf_rd_m=AN1VRQENFRJN5&pf_rd_r=1ZJ9T7KCKHC8QV0QKN9H Ich habe Kapitel 4 von zusammengefasst.

DistBelief Google ist die Quelle von Tensorflow, das entwickelt wurde. Eine gute Implementierung der verteilten parallelen Technologie.

Bisher erforderte MapReduce eine qualitativ hochwertige Kommunikation. Die Lösung dafür.

Es gibt zwei Arten der Parallelisierung -Modell (Aufgabe) parallel: Der Prozess ist für jede Maschine aufgeteilt. Flow Arbeit. -Daten parallel: Teilen Sie die Daten auf, die in den Verarbeitungsablauf aufgenommen werden sollen. Der Unglaube nutzt diese zusammen.

Mit Distbelief müssen sich Benutzer nur auf "Berechnen eines Knotens" und "Informationen zum Senden an den nächsten Knoten" konzentrieren, und der Computer entscheidet, wo das Modell und wo die Daten aufgeteilt werden sollen.

Die Gradientenberechnung und Parameteraktualisierung werden parallel zum Modell durchgeführt, und die tatsächliche Datenberechnung wird parallel zu den Daten durchgeführt. Als Gradientenberechnungsmethode wird die Regenguss-SGD (probabilistische Gradientenabstiegsmethode) verwendet. Selbst wenn das Replikatmodell, das eine bestimmte Datengruppe verarbeitet, fehlschlägt, funktioniert der Rest.

Sandblaster L-BFGS wird für die Stapelverarbeitung verwendet (eine Methode, um dies nach und nach zu tun). Da dies datenparallel ist, ist am Ende eine Datensynchronisation erforderlich. Das Warten auf den langsamsten Computer ist zu ärgerlich. Verkleinern Sie den Stapel und geben Sie ihn nacheinander an die Knoten weiter. Aufgaben werden in der Reihenfolge vom Ende verteilt.

GPU verwenden

Bei der sprachlichen Verarbeitung ist nur ein kleiner Teil des langen Vektors ungleich Null und der Rest ist 0 (dünne Matrix). Die Bildverarbeitung hat andererseits einen dichten Vektor. Es gibt nur wenige Zweige in der Bildverarbeitung, und die gleiche Verarbeitung kann endlos durchgeführt werden. Dies ist ein Bereich, in dem GPUs gut sind. Deshalb denken viele Leute darüber nach, es der GPU zu überlassen.

Auch die Übertragungsgeschwindigkeit zwischen GPU / CPU / Speicher kann ein subtiler Engpass sein.

InfiniBand Wahnsinnig schnelles Kabel. Mit einer Leistung von 56 Gbit / s scheint es in der Lage zu sein, das für die GPU typische Problem der Übertragungsgeschwindigkeit zu lösen.

Beschleunigen Sie die Lernkonvergenz

Chargennormalisierung

Technologie zur Lösung des Problems der internen Kovariatenverschiebung. Die interne Kovariatenverschiebung bedeutet, dass sich die Verteilung von x zum Zeitpunkt der Eingabe während des Lernens erheblich ändert. Da die Gewichte begeistert sind, sich auf diese Verschiebung einzustellen, kann das Lernen der Schicht selbst erst danach fortgesetzt werden. Das verlangsamt mich.

Die Chargennormalisierung normalisiert diese Verschiebung. Gleichzeitig wird ein Bleaching (Normalisierung + Unkorrelation) durchgeführt.

Destillation

Ensemble-Lernen, bei dem der Durchschnitt mehrerer Modelle für die Inferenz verwendet wird, ist genau. Aber es dauert zu lange.

Im Fall eines neuronalen Netzwerks ist flach schnell und tief langsam. Die Destillation beschleunigt das Lernen tiefer neuronaler Netze aus dem Lernen flacher neuronaler Netze.

Wenn das Optimum θ ausgewählt ist, ist der Gradient von E 0. Dann stimmen die Steigungen des Fehlerterms L und des Normalisierungsterms R von E überein. Mit anderen Worten, wenn Sie wissen, wie man einen Fehler macht, können Sie auch den Normalisierungsterm kennen. Eine Technik, die dies gut nutzt.

Dropout So steuern Sie das Überlernen. Eine Methode zum Ignorieren von Knoten mit einer bestimmten Rate in der Lernphase. Ändern Sie jedes Mal, wenn Sie die zu lernenden Daten ändern, den zu ignorierenden Knoten. Während des Tests nicht ignorieren. Die Ignorierrate wird im Allgemeinen eingegeben: 0,2, mittlere Schicht: 0,5.

Arten von Aktivierungsfunktionen

ReLu

max(0,x)

Die Gradientenberechnung ist schnell und erfordert keinen besonderen Einfallsreichtum. Der Fehler verschwindet nicht und der Fehler breitet sich auf die tiefen Knoten aus. MaxOut

max wx

Eine Methode zur Auswahl der größten von mehreren linearen Funktionen. Es ist linear und wahnsinnig einfach, während es komplexe Zustände ausdrücken kann. Es scheint sehr gut zu sein.

Recommended Posts

Deep Learning Großtechnologie
Tiefes Lernen
Deep Learning Memorandum
Starten Sie Deep Learning
Python Deep Learning
Deep Learning × Python
Erstes tiefes Lernen ~ Kampf ~
Python: Deep Learning-Praxis
Deep Learning / Aktivierungsfunktionen
Deep Learning von Grund auf neu
Deep Learning / Cross Entropy
Erstes tiefes Lernen ~ Vorbereitung ~
[AI] Deep Metric Learning
Python: Deep Learning Tuning
Deep Learning / Softmax-Funktion
Deep Learning von Grund auf 1-3 Kapitel
Versuchen Sie es mit TensorFlow
Deep Learning Gaiden ~ GPU-Programmierung ~
<Kurs> Tiefes Lernen: Day2 CNN
Deep Learning Bilderkennung 1 Theorie
Deep Running 2 Tuning von Deep Learning
Deep Learning / LSTM Scratch Code
<Kurs> Tiefes Lernen: Tag 1 NN
Deep Kernel Learning mit Pyro
Versuchen Sie Deep Learning mit FPGA
Deep Learning für die Bildung von Verbindungen?
Einführung in Udacity Deep Learning Nanodegree
Themen> Deep Learning: Tag 3 RNN
Einführung in Deep Learning ~ Lernregeln ~
Tiefe Stärkung des Lernens 1 Einführung in die Stärkung des Lernens
Tiefes Lernen der Verstärkung 2 Implementierung des Lernens der Verstärkung
Generiere Pokemon mit Deep Learning
Einführung in Deep Learning ~ Backpropagation ~
Deep Learning Model Lightening Library Distiller
Deep Learning / Deep Learning von Grund auf neu 2 Kapitel 4 Memo
Probieren Sie Deep Learning mit FPGA-Select-Gurken aus
Identifikation der Katzenrasse mit Deep Learning
Deep Learning / Deep Learning von Grund auf neu Kapitel 3 Memo
Machen Sie ASCII-Kunst mit tiefem Lernen
Deep Learning / Deep Learning von Null 2 Kapitel 5 Memo
Implementieren Sie Deep Learning / VAE (Variational Autoencoder)
Einführung in das tiefe Lernen ~ Funktionsnäherung ~
Versuchen Sie es mit TensorFlow Part 2
Über das Projektmanagement von Deep Learning (DNN)
Einführung in Deep Learning ~ Codierungsvorbereitung ~
Organisation von Plattformen für maschinelles Lernen und tiefes Lernen
Deep Learning durch Implementierung 1 gelernt (Return Edition)
Deep Learning / Deep Learning von Null 2 Kapitel 7 Memo
Deep Learning / Deep Learning von Null 2 Kapitel 8 Memo
Microsoft Deep Learning Library "CNTK" Tutorial
Überprüfen Sie die Kniebeugenform mit tiefem Lernen
Deep Learning / Deep Learning von Grund auf neu Kapitel 4 Memo
Deep Strengthing Learning 3 Praktische Ausgabe: Block Breaking
Deep Learning Bilderkennung 2 Modellimplementierung
Kategorisieren Sie Nachrichtenartikel mit Deep Learning
Deep Learning / Deep Learning von Grund auf neu 2 Kapitel 3 Memo
Ich habe versucht, mit Theano tief zu lernen