Zephyrnet-Logo

Einführender Hinweis zu Deep Learning

Datum:

Dieser Artikel wurde als Teil des veröffentlicht Data-Science-Blogathon.

Einführung in Deep Learning

Künstliche Intelligenz, Deep Learning, maschinelles Lernen – was auch immer Sie tun, wenn Sie es nicht verstehen – lernen Sie es. Denn sonst wirst du innerhalb von 3 Jahren ein Dinosaurier sein.

-Mark Kubaner

Diese Aussage von Mark Cuban mag drastisch klingen – aber ihre Botschaft ist goldrichtig! Wir befinden uns mitten in einer Revolution – einer Revolution verursacht durch Big Riesige Daten und eine Menge Rechenleistung.

Denken Sie für eine Minute darüber nach, wie sich eine Person im frühen 20. Jahrhundert fühlen würde, wenn sie Elektrizität nicht verstehen würde. Sie waren es seit Ewigkeiten gewohnt, Dinge auf eine bestimmte Weise zu tun, und plötzlich begannen sich die Dinge um Sie herum zu verändern. Dinge, die viele Menschen erforderten, können jetzt mit einer Person und Strom erledigt werden. Wir machen heute eine ähnliche Reise mit maschinellem Lernen und Deep Learning.

Wenn Sie also die Leistungsfähigkeit von Deep Learning noch nicht erforscht oder verstanden haben, sollten Sie heute damit beginnen. Ich habe diesen Artikel geschrieben, um Ihnen zu helfen, allgemeine Begriffe zu verstehen, die beim Deep Learning verwendet werden.

Wer sollte diesen Artikel lesen?

Wenn Sie Deep Learning lernen oder verstehen möchten, ist dieser Artikel für Sie bestimmt. In diesem Artikel werde ich verschiedene Begriffe erklären, die häufig im Deep Learning verwendet werden.

Wenn Sie sich fragen, warum ich diesen Artikel schreibe – ich schreibe ihn, weil ich möchte, dass Sie Ihre Deep-Learning-Reise ohne Probleme oder ohne Einschüchterung beginnen können. Als ich anfing, über Deep Learning zu lesen, gab es mehrere Begriffe, von denen ich gehört hatte, aber es war einschüchternd, als ich versuchte, sie zu verstehen. Es gibt mehrere Wörter, die immer wiederkehren, wenn wir anfangen, über eine Deep-Learning-Anwendung zu lesen.

In diesem Artikel habe ich so etwas wie ein Deep-Learning-Wörterbuch für Sie erstellt, auf das Sie jederzeit zurückgreifen können, wenn Sie die grundlegende Definition der am häufigsten verwendeten Begriffe benötigen. Ich hoffe, dass diese Begriffe Sie nach diesem Artikel nicht mehr verfolgen werden.

Begriffe im Zusammenhang mit Deep Learning

Um Ihnen zu helfen, verschiedene Begriffe zu verstehen, habe ich sie in 3 verschiedene Gruppen eingeteilt. Wenn Sie nach einem bestimmten Begriff suchen, können Sie zu diesem Abschnitt springen. Wenn Sie neu in der Domäne sind, würde ich empfehlen, dass Sie sie in der Reihenfolge durchgehen, in der ich sie geschrieben habe.

  1. Grundlagen neuronaler Netze
    • Allgemeine Aktivierungsfunktionen
  2. Convolutional Neuronale Netze
  3. Wiederkehrende neuronale Netze

Grundlagen neuronaler Netze

1) Neuron- So wie ein Neuron das Grundelement unseres Gehirns bildet, bildet ein Neuron die Grundstruktur eines neuronalen Netzes. Denken Sie nur daran, was wir tun, wenn wir neue Informationen erhalten. Wenn wir die Informationen erhalten, verarbeiten wir sie und generieren dann eine Ausgabe. In ähnlicher Weise empfängt ein Neuron im Fall eines neuronalen Netzwerks eine Eingabe, verarbeitet sie und erzeugt eine Ausgabe, die entweder zur weiteren Verarbeitung an andere Neuronen gesendet wird oder die endgültige Ausgabe ist.

2) Gewichte – Wenn eine Eingabe in das Neuron eintritt, wird sie mit einem Gewicht multipliziert. Wenn zum Beispiel ein Neuron zwei Eingaben hat, dann wird jeder Eingabe eine zugehörige Gewichtung zugewiesen. Wir initialisieren die Gewichte nach dem Zufallsprinzip und diese Gewichte werden während des Modelltrainingsprozesses aktualisiert. Das neuronale Netzwerk weist nach dem Training den Eingaben, die es für wichtiger hält, ein höheres Gewicht zu als denjenigen, die als weniger wichtig angesehen werden. Eine Gewichtung von null bedeutet, dass das bestimmte Merkmal unbedeutend ist.

Nehmen wir an, die Eingabe sei a und die zugeordnete Gewichtung W1. Dann wird die Eingabe nach dem Passieren des Knotens zu a*W1

Gewichte - tiefes Lernen

3) Voreingenommenheit – Zusätzlich zu den Gewichtungen wird eine weitere lineare Komponente auf die Eingabe angewendet, die als Bias bezeichnet wird. Es wird zum Ergebnis der Gewichtsmultiplikation zur Eingabe addiert. Die Vorspannung wird grundsätzlich hinzugefügt, um den Bereich der gewichteten multiplizierten Eingabe zu ändern. Nach dem Hinzufügen der Vorspannung würde das Ergebnis wie a*W1+Vorspannung aussehen. Dies ist die letzte lineare Komponente der Eingabetransformation.

4) Aktivierungsfunktion – Sobald die lineare Komponente auf den Eingang angewendet wird, wird eine nichtlineare Funktion darauf angewendet. Dies erfolgt durch Anwendung der Aktivierungsfunktion auf die Linearkombination. Die Aktivierungsfunktion übersetzt die Eingangssignale in Ausgangssignale. Die Ausgabe nach Anwendung der Aktivierungsfunktion würde in etwa so aussehen wie f(a*W1+b), wobei f() die Aktivierungsfunktion ist.

Im folgenden Diagramm haben wir „n“ Eingaben, die als X1 bis Xn und entsprechende Gewichtungen Wk1 bis Wkn angegeben sind. Wir haben eine Vorspannung, die als bk angegeben ist. Die Gewichte werden zunächst mit ihrer entsprechenden Eingabe multipliziert und dann zusammen mit dem Bias addiert. Lassen Sie dies als u bezeichnet werden.

u=∑w*x+b

Die Aktivierungsfunktion wird auf u angewendet, dh f(u), und wir erhalten die endgültige Ausgabe vom Neuron als yk = f(u)

Aktivierungsfunktion - Deep Learning

Häufig angewandte Aktivierungsfunktionen

Die am häufigsten verwendeten Aktivierungsfunktionen sind – Sigmoid, ReLU und Softmax

a) Sigma – Eine der am häufigsten verwendeten Aktivierungsfunktionen ist Sigmoid. Es ist definiert als:

Sigmoid(x) = 1/(1+e-x)

Aktivierungsfunktion - Deep Learning

Quelle: Wikipedia

Die Sigmoid-Transformation erzeugt einen glatteren Wertebereich zwischen 0 und 1. Möglicherweise müssen wir die Änderungen in der Ausgabe bei geringfügigen Änderungen in den Eingabewerten beobachten. Glatte Kurven ermöglichen uns dies und werden daher den Überschreitungen von Funktionen vorgezogen.

b) ReLU (gleichgerichtete lineare Einheiten) – Anstelle von Sigmoiden bevorzugen die neueren Netzwerke die Verwendung von ReLu-Aktivierungsfunktionen für die verborgenen Schichten. Die Funktion ist definiert als:

f(x) = max(x,0).

Die Ausgabe der Funktion ist X wenn X>0 und 0 für X<=0. Die Funktion sieht so aus:

Gleichgerichtete Lineareinheit – Deep Learning

Quelle: cs231n

Der Hauptvorteil der Verwendung von ReLU besteht darin, dass es einen konstanten Ableitungswert für alle Eingaben größer als 0 hat. Der konstante Ableitungswert hilft dem Netzwerk, schneller zu trainieren.

c) Softmax – Softmax-Aktivierungsfunktionen werden normalerweise in der Ausgabeschicht für Klassifizierungsprobleme verwendet. Sie ähnelt der Sigmoid-Funktion, mit dem einzigen Unterschied, dass die Ausgaben normalisiert werden, um sich auf 1 zu summieren. Die Sigmoid-Funktion würde funktionieren, falls wir eine binäre Ausgabe haben, aber falls wir ein Klassifizierungsproblem mit mehreren Klassen haben, macht Softmax es wirklich einfach, jeder Klasse Werte zuzuweisen, die leicht als Wahrscheinlichkeiten interpretiert werden können.

Es ist sehr einfach, es so zu sehen – Angenommen, Sie versuchen, eine 6 zu identifizieren, die auch ein bisschen wie eine 8 aussehen könnte. Die Funktion würde jeder Zahl wie unten Werte zuweisen. Wir können leicht erkennen, dass die höchste Wahrscheinlichkeit 6 zugeordnet ist, die nächsthöhere 8 und so weiter …

Softmax - tiefes Lernen

5) Neuronales Netzwerk – Neuronale Netze bilden das Rückgrat des Deep Learning. Das Ziel eines neuronalen Netzes ist es, eine Annäherung an eine unbekannte Funktion zu finden. Es wird von miteinander verbundenen Neuronen gebildet. Diese Neuronen haben Gewichte und Bias, die während des Netzwerktrainings in Abhängigkeit von dem Fehler aktualisiert werden. Die Aktivierungsfunktion fügt der linearen Kombination eine nichtlineare Transformation hinzu, die dann die Ausgabe erzeugt. Die Kombinationen der aktivierten Neuronen ergeben die Ausgabe.

Ein neuronales Netzwerk wird am besten durch „Liping Yang“ definiert als –

"Neuronale Netze bestehen aus zahlreichen miteinander verbundenen konzeptualisierten künstlichen Neuronen, die Daten untereinander austauschen und die zugeordnete Gewichtungen haben, die auf der Grundlage der „Erfahrung“ des Netzwerks abgestimmt werden. Neuronen haben Aktivierungsschwellenwerte, die gefeuert werden, wenn sie von einer Kombination ihrer zugeordneten Gewichte und an sie weitergegebenen Daten erreicht werden; Kombinationen von gefeuerten Neuronen führen zu „Lernen“.

6) Eingabe-/Ausgabe-/verborgene Ebene – Wie der Name schon sagt, ist die Eingabeschicht diejenige, die die Eingabe empfängt und im Wesentlichen die erste Schicht des Netzwerks ist. Die Ausgabeschicht ist diejenige, die die Ausgabe generiert oder die letzte Schicht des Netzwerks ist. Die Verarbeitungsschichten sind die verborgenen Schichten innerhalb des Netzwerks. Diese verborgenen Schichten sind diejenigen, die bestimmte Aufgaben an den eingehenden Daten ausführen und die von ihnen erzeugte Ausgabe an die nächste Schicht weitergeben. Die Eingabe- und Ausgabeschichten sind für uns sichtbar, während die Zwischenschichten verborgen sind.

Versteckte Ebene

Quelle: cs231n

7) MLP (Mehrschicht-Perzeptron) – Ein einzelnes Neuron wäre nicht in der Lage, hochkomplexe Aufgaben zu erfüllen. Daher verwenden wir Stapel von Neuronen, um die gewünschten Ausgaben zu erzeugen. Im einfachsten Netzwerk hätten wir eine Eingabeschicht, eine verborgene Schicht und eine Ausgabeschicht. Jede Schicht hat mehrere Neuronen und alle Neuronen in jeder Schicht sind mit allen Neuronen in der nächsten Schicht verbunden. Diese Netze können auch als vollständig verbundene Netze bezeichnet werden.

Mehrschichtige Wahrnehmung

8) Vorwärtsausbreitung – Vorwärtsausbreitung bezieht sich auf die Bewegung des Eingangs durch die verborgenen Schichten zu den Ausgangsschichten. Bei der Vorwärtsausbreitung bewegt sich die Information in einer einzigen Richtung VORWÄRTS. Die Eingabeschicht liefert die Eingabe an die verborgenen Schichten und dann wird die Ausgabe generiert. Es gibt keine Rückwärtsbewegung.

9) Kostenfunktion – Wenn wir ein Netzwerk aufbauen, versucht das Netzwerk, die Ausgabe so nah wie möglich am tatsächlichen Wert vorherzusagen. Wir messen diese Genauigkeit des Netzwerks mit der Kosten-/Verlustfunktion. Die Kosten- oder Verlustfunktion versucht, das Netzwerk zu bestrafen, wenn es Fehler macht.

Unser Ziel beim Betrieb des Netzwerks ist es, unsere Vorhersagegenauigkeit zu erhöhen und den Fehler zu reduzieren, wodurch die Kostenfunktion minimiert wird. Die am besten optimierte Ausgabe ist diejenige mit dem geringsten Wert der Kosten- oder Verlustfunktion.

Wenn ich die Kostenfunktion als den mittleren quadratischen Fehler definiere, kann sie geschrieben werden als –

C= 1/m ∑(y – a)2 Dabei ist m die Anzahl der Trainingseingaben, a der vorhergesagte Wert und y der tatsächliche Wert dieses bestimmten Beispiels.

Der Lernprozess dreht sich um die Minimierung der Kosten.

10) Steigungsabstieg – Der Gradientenabstieg ist ein Optimierungsalgorithmus zur Minimierung der Kosten. Um es intuitiv zu bedenken, sollten Sie beim Herunterklettern eines Hügels kleine Schritte machen und hinuntergehen, anstatt sofort hinunterzuspringen. Wenn wir also von einem Punkt x ausgehen, bewegen wir uns ein wenig nach unten, dh Delta h, und aktualisieren unsere Position auf x-delta h, und wir machen dasselbe, bis wir den Boden erreichen. Betrachten Sie den Boden als den minimalen Kostenpunkt.

Gradientenabstieg - Deep Learning

Quelle

Um das lokale Minimum einer Funktion zu finden, unternimmt man mathematisch Schritte, die proportional zum Negativ des Gradienten der Funktion sind.

Du kannst durchgehen Dieser Artikel für ein detailliertes Verständnis des Gradientenabstiegs.

11) Lernrate – Die Lernrate ist definiert als der Betrag der Minimierung in der Kostenfunktion bei jeder Iteration. Einfach ausgedrückt ist die Rate, mit der wir zu den Minima der Kostenfunktion absteigen, die Lernrate. Wir sollten die Lernrate sehr sorgfältig wählen, da sie weder sehr groß sein sollte, dass die optimale Lösung verpasst wird, noch sehr niedrig sein sollte, dass es ewig dauert, bis das Netzwerk konvergiert.

Lernrate - tiefes Lernen

Quelle

12) Backpropagation – Wenn wir ein neuronales Netzwerk definieren, weisen wir unseren Knoten zufällige Gewichtungen und Bias-Werte zu. Sobald wir die Ausgabe für eine einzelne Iteration erhalten haben, können wir den Fehler des Netzwerks berechnen. Dieser Fehler wird dann zusammen mit dem Gradienten der Kostenfunktion an das Netzwerk zurückgeführt, um die Gewichte des Netzwerks zu aktualisieren. Diese Gewichte werden dann aktualisiert, so dass die Fehler in den nachfolgenden Iterationen reduziert werden. Diese Aktualisierung der Gewichte unter Verwendung des Gradienten der Kostenfunktion ist als Back-Propagation bekannt.

Bei der Rückwärtsausbreitung ist die Bewegung des Netzwerks rückwärts, der Fehler fließt zusammen mit dem Gradienten von der äußeren Schicht durch die verborgenen Schichten zurück und die Gewichte werden aktualisiert.

13) Chargen – Während wir ein neuronales Netzwerk trainieren, teilen wir die Eingabe zufällig in mehrere Teile gleicher Größe auf, anstatt die gesamte Eingabe auf einmal zu senden. Das Trainieren der Daten in Stapeln macht das Modell allgemeiner im Vergleich zu dem Modell, das erstellt wird, wenn der gesamte Datensatz auf einmal in das Netzwerk eingespeist wird.

14) Epochen – Eine Epoche ist als eine einzelne Trainingsiteration aller Batches sowohl in der Vorwärts- als auch in der Rückwärtsausbreitung definiert. Dies bedeutet, dass 1 Epoche ein einzelner Vorwärts- und Rückwärtsdurchlauf der gesamten Eingabedaten ist.

Die Anzahl der Epochen, die Sie verwenden würden, um Ihr Netzwerk zu trainieren, können Sie selbst wählen. Es ist sehr wahrscheinlich, dass mehr Epochen eine höhere Genauigkeit des Netzwerks zeigen würden, es würde jedoch auch länger dauern, bis das Netzwerk konvergiert. Außerdem müssen Sie darauf achten, dass bei einer zu hohen Anzahl von Epochen das Netzwerk möglicherweise überlastet wird.

15) Ausfall – Dropout ist eine Regularisierungstechnik, die eine Überanpassung des Netzwerks verhindert. Wie der Name schon sagt, wird während des Trainings zufällig eine bestimmte Anzahl von Neuronen in der verborgenen Schicht abgelegt. Das bedeutet, dass das Training auf mehreren Architekturen des neuronalen Netzes auf verschiedenen Kombinationen von Neuronen stattfindet. Sie können sich Drop-Out als eine Ensemble-Technik vorstellen, bei der die Ausgabe mehrerer Netzwerke dann verwendet wird, um die endgültige Ausgabe zu erzeugen.

Dropout - tiefes Lernen

Quelle: Original Papier

16) Batch-Normalisierung – Als Konzept kann die Batch-Normalisierung als Damm betrachtet werden, den wir als spezifische Kontrollpunkte in einem Fluss gesetzt haben. Dies geschieht, um sicherzustellen, dass die Verteilung der Daten dieselbe ist wie die nächste Schicht, die zu erhalten erhofft wird. Wenn wir das neuronale Netzwerk trainieren, werden die Gewichte nach jedem Schritt des Gradientenabstiegs geändert. Dies ändert, wie die Form der Daten an die nächste Schicht gesendet wird.

Batch-Normalisierung

Aber die nächste Schicht erwartete eine ähnliche Verteilung wie zuvor. Also normalisieren wir die Daten explizit, bevor wir sie an die nächste Schicht senden.

Tiefes Lernen

Convolutional Neural Networks im Deep Learning

17) Filter – Ein Filter in einem CNN ist wie eine Gewichtsmatrix, mit der wir einen Teil des Eingabebildes multiplizieren, um eine gefaltete Ausgabe zu erzeugen. Nehmen wir an, wir haben ein Bild der Größe 28*28. Wir weisen zufällig einen Filter der Größe 3*3 zu, der dann mit verschiedenen 3*3-Ausschnitten des Bildes multipliziert wird, um eine sogenannte Convoluted-Ausgabe zu bilden. Die Filtergröße ist im Allgemeinen kleiner als die ursprüngliche Bildgröße. Die Filterwerte werden wie Gewichtswerte während der Backpropagation zur Kostenminimierung aktualisiert.

Betrachten Sie das folgende Bild. Hier ist der Filter eine 3*3-Matrix die mit jedem 3*3-Abschnitt des Bildes multipliziert wird, um das gefaltete Merkmal zu bilden.

Faltungs-Neuronales Netz

18) CNN (Convolutional Neural Network) – Convolutional Neural Networks werden grundsätzlich auf Bilddaten angewendet. Angenommen, wir haben eine Eingabe der Größe (28 * 28 * 3). Wenn wir ein normales neuronales Netzwerk verwenden, gäbe es 2352 (28 * 28 * 3) Parameter. Und wenn die Größe des Bildes zunimmt, wird die Anzahl der Parameter sehr groß. Wir „falten“ die Bilder, um die Anzahl der Parameter zu reduzieren (wie oben in der Filterdefinition gezeigt). Wenn wir den Filter über die Breite und Höhe des Eingangsvolumens schieben, erzeugen wir a 2-dimensionale Aktivierungskarte das gibt die Ausgabe dieses Filters an jeder Position. Wir werden diese Aktivierungskarten entlang der Tiefendimension stapeln und das Ausgabevolumen erzeugen.

Sie können das folgende Diagramm für ein klareres Bild sehen.

CNN | Tiefes Lernen

Quelle: cs231n

19) Bündelung – Es ist üblich, zwischen den Faltungsschichten periodisch Pooling-Schichten einzuführen. Dies geschieht im Wesentlichen, um die Anzahl der Parameter zu reduzieren und eine Überanpassung zu verhindern. Die gebräuchlichste Art des Poolings ist eine Pooling-Schicht der Filtergröße (2,2) unter Verwendung der MAX-Operation. Was es tun würde, ist, es würde das Maximum jeder 4 * 4-Matrix des Originalbildes nehmen.

Bündelung | Tiefes Lernen

Quelle: cs231n

Sie können auch andere Operationen wie Average Pooling verwenden, aber Max-Pooling hat sich in der Praxis als besser erwiesen.

20) Polsterung – Padding bezieht sich auf das Hinzufügen einer zusätzlichen Ebene von Nullen über die Bilder, damit die Das Ausgabebild hat die gleiche Größe wie das Eingabebild. Dies wird als gleiche Polsterung bezeichnet.

Polsterung

Nach dem Aufbringen von Filtern hat die gefaltete Schicht bei gleicher Polsterung eine Größe, die gleich dem tatsächlichen Bild ist.

Gültige Auffüllung bezieht sich darauf, das Bild als solches beizubehalten und alle Pixel des Bildes zu haben, die tatsächlich oder „gültig“ sind. In diesem Fall wird nach der Anwendung von Filtern die Größe der Länge und der Breite der Ausgabe bei jeder Faltungsschicht weiter reduziert.

21) Datenerweiterung – Data Augmentation bezieht sich auf das Hinzufügen neuer Daten, die aus den gegebenen Daten abgeleitet werden, was sich als vorteilhaft für die Vorhersage erweisen könnte. Beispielsweise kann es sein, dass die Katze in einem dunklen Bild besser zu sehen ist, wenn Sie es aufhellen, oder beispielsweise eine 9 in der Ziffernerkennung leicht geneigt oder gedreht ist. In diesem Fall würde die Drehung das Problem lösen und die Genauigkeit unseres Modells erhöhen. Durch Drehen oder Aufhellen verbessern wir die Qualität unserer Daten. Dies wird als Datenaugmentation bezeichnet.

Datenerweiterung

Wiederkehrendes neuronales Netzwerk im Deep Learning

22) Wiederkehrendes Neuron – Ein rekurrentes Neuron ist eines, bei dem die Ausgabe des Neurons für t Zeitstempel an es zurückgesendet wird. Wenn Sie sich das Diagramm ansehen, wird die Ausgabe t-mal als Eingabe zurückgesendet. Das entrollte Neuron sieht aus wie t verschiedene Neuronen, die miteinander verbunden sind. Der grundlegende Vorteil dieses Neurons besteht darin, dass es eine allgemeinere Ausgabe liefert.

Wiederkehrendes neuronales Netzwerk | tiefes Lernen

Quelle: cs231n

23) RNN (Recurrent Neural Network) – Rekurrente neuronale Netze werden insbesondere für sequentielle Daten verwendet, bei denen die vorherige Ausgabe verwendet wird, um die nächste vorherzusagen. In diesem Fall haben die Netzwerke Schleifen in sich. Die Schleifen innerhalb des verborgenen Neurons geben ihnen die Möglichkeit, Informationen über die vorherigen Wörter für einige Zeit zu speichern, um die Ausgabe vorhersagen zu können. Die Ausgabe der verborgenen Schicht wird für t Zeitstempel erneut an die verborgene Schicht gesendet. Das entfaltete Neuron sieht aus wie im obigen Diagramm. Die Ausgabe des rekurrenten Neurons geht erst nach Abschluss aller Zeitstempel in die nächste Schicht. Die gesendete Ausgabe ist allgemeiner und die vorherigen Informationen bleiben länger erhalten.

Der Fehler wird dann gemäß dem entfalteten Netzwerk zurückpropagiert, um die Gewichtungen zu aktualisieren. Dies ist bekannt als Backpropagation through time (BPTT).

24) Problem des verschwindenden Gradienten – Das Problem des verschwindenden Gradienten tritt in Fällen auf, in denen der Gradient der Aktivierungsfunktion sehr klein ist. Während der Backpropagation, wenn die Gewichtungen mit diesen niedrigen Gradienten multipliziert werden, neigen sie dazu, sehr klein zu werden und zu „verschwinden“, wenn sie tiefer in das Netzwerk eindringen. Dadurch vergisst das neuronale Netz die Fernabhängigkeit. Dies wird im Allgemeinen in Fällen von wiederkehrenden neuronalen Netzwerken zu einem Problem, bei denen langfristige Abhängigkeiten sehr wichtig sind, damit sich das Netzwerk daran erinnert.

Dies kann gelöst werden, indem Aktivierungsfunktionen wie ReLu verwendet werden, die keine kleinen Gradienten haben.

25) Explodierendes Gradientenproblem – Dies ist das genaue Gegenteil des Problems des verschwindenden Gradienten, bei dem der Gradient der Aktivierungsfunktion zu groß ist. Während der Backpropagation wird das Gewicht eines bestimmten Knotens in Bezug auf die anderen sehr hoch, wodurch sie unbedeutend werden. Dies kann leicht gelöst werden, indem der Farbverlauf so abgeschnitten wird, dass er einen bestimmten Wert nicht überschreitet.

Endnoten

Ich hoffe, es hat Ihnen Spaß gemacht, den Artikel durchzulesen. Ich habe einen allgemeinen Überblick über die grundlegenden Deep-Learning-Begriffe gegeben. Ich hoffe, Sie haben jetzt ein grundlegendes Verständnis dieser Begriffe. Ich habe versucht, alles in einer möglichst einfachen Sprache zu erklären, aber im Falle von Zweifeln/Klarstellungen können Sie gerne Ihre Kommentare hinterlassen.

Die in diesem Artikel gezeigten Medien sind nicht Eigentum von Analytics Vidhya und werden nach Ermessen des Autors verwendet.

spot_img

Neueste Intelligenz

spot_img