Articles

Backpropagation Neuronales Netzwerk: Erklärt mit einfachem Beispiel

Posted on

Bevor wir Backpropagation lernen, wollen wir es verstehen:

Was sind künstliche neuronale Netze?

Ein neuronales Netzwerk ist eine Gruppe von verbundenen E/A-Einheiten, bei denen jede Verbindung ein Gewicht hat, das mit den Computerprogrammen verknüpft ist. Es hilft Ihnen, aus großen Datenbanken Vorhersagemodelle zu erstellen. Dieses Modell baut auf dem menschlichen Nervensystem auf. Es hilft Ihnen bei der Durchführung von Bildverstehen, menschlichem Lernen, Computer-Sprache, etc.

Was ist Backpropagation?

Backpropagation ist die Essenz des Trainings neuronaler Netze. Es handelt sich um eine Methode zur Feinabstimmung der Gewichte eines neuronalen Netzes auf der Grundlage der in der vorherigen Epoche (d. h. Iteration) erzielten Fehlerrate. Durch die richtige Abstimmung der Gewichte können Sie die Fehlerrate reduzieren und das Modell durch Erhöhung seiner Generalisierung zuverlässig machen.

Backpropagation ist eine Kurzform für „Rückwärtspropagation von Fehlern.“ Es ist eine Standardmethode zum Training künstlicher neuronaler Netze. Diese Methode hilft, den Gradienten einer Verlustfunktion in Bezug auf alle Gewichte im Netz zu berechnen.

In diesem Tutorial lernen Sie:

  • Was sind Künstliche Neuronale Netze?
  • Was ist Backpropagation?
  • Wie funktioniert Backpropagation?
  • Warum brauchen wir Backpropagation?
  • Was ist ein Feed Forward Netzwerk?
  • Typen von Backpropagation-Netzwerken
  • Geschichte der Backpropagation
  • Backpropagation-Schlüsselpunkte
  • Best Practice Backpropagation
  • Nachteile der Backpropagation

Wie Backpropagation funktioniert: Einfacher Algorithmus

Betrachten Sie das folgende Diagramm


Wie Backpropagation funktioniert

  1. Eingaben X, kommen über den vorgeschalteten Pfad an
  2. Eingänge werden mit realen Gewichten W modelliert. Die Gewichte sind in der Regel zufällig gewählt.
  3. Berechnen Sie die Ausgabe für jedes Neuron von der Eingabeschicht über die versteckten Schichten bis zur Ausgabeschicht.
  4. Berechnen Sie den Fehler in den Ausgaben
ErrorB= Actual Output – Desired Output
  1. Zurück von der Ausgabeschicht zur versteckten Schicht, um die Gewichte so anzupassen, dass der Fehler verringert wird.

Wiederholen Sie den Prozess so lange, bis die gewünschte Ausgabe erreicht ist

Warum brauchen wir Backpropagation?

Die wichtigsten Vorteile der Backpropagation sind:

  • Backpropagation ist schnell, einfach und leicht zu programmieren
  • Sie hat keine Parameter, die eingestellt werden müssen, abgesehen von der Anzahl der Eingaben
  • Sie ist eine flexible Methode, da sie keine Vorkenntnisse über das Netzwerk erfordert
  • Sie ist eine Standardmethode, die im Allgemeinen gut funktioniert
  • Sie benötigt keine besondere Erwähnung der Eigenschaften der zu lernenden Funktion.

Was ist ein Feed Forward Netzwerk?

Ein Feed Forward neuronales Netzwerk ist ein künstliches neuronales Netzwerk, bei dem die Knoten nie einen Zyklus bilden. Diese Art von neuronalem Netz hat eine Eingabeschicht, versteckte Schichten und eine Ausgabeschicht. Es ist der erste und einfachste Typ eines künstlichen neuronalen Netzes.

Typen von Backpropagation Networks

Zwei Typen von Backpropagation Networks sind:

  • Statische Backpropagation
  • Rekurrente Backpropagation

Statische Backpropagation:

Es ist eine Art von Backpropagationsnetz, das eine Abbildung einer statischen Eingabe für eine statische Ausgabe erzeugt. Es ist nützlich, um statische Klassifizierungsprobleme wie optische Zeichenerkennung zu lösen.

Rekurrente Backpropagation:

Rekurrente Backpropagation wird so lange vorwärts gefüttert, bis ein fester Wert erreicht ist. Danach wird der Fehler errechnet und rückwärts propagiert.

Der Hauptunterschied zwischen diesen beiden Methoden ist, dass das Mapping bei der statischen Backpropagation schnell ist, während es bei der rekurrenten Backpropagation nicht statisch ist.

Geschichte der Backpropagation

  • Im Jahr 1961 wurde das Grundkonzept der kontinuierlichen Backpropagation im Rahmen der Regelungstheorie von J. Kelly, Henry Arthur und E. Bryson abgeleitet.
  • Im Jahr 1969 gaben Bryson und Ho eine mehrstufige Methode zur Optimierung dynamischer Systeme an.
  • Im Jahr 1974 zeigte Werbos die Möglichkeit auf, dieses Prinzip in einem künstlichen neuronalen Netz anzuwenden.
  • Im Jahr 1982 brachte Hopfield seine Idee eines neuronalen Netzes ein.
  • Im Jahr 1986 erlangte die Backpropagation durch die Bemühungen von David E. Rumelhart, Geoffrey E. Hinton, Ronald J. Williams Anerkennung.
  • Im Jahr 1993 war Wan der erste, der einen internationalen Mustererkennungswettbewerb mit Hilfe der Backpropagationsmethode gewann.

Schlüsselpunkte der Backpropagation

  • Vereinfacht die Netzwerkstruktur durch gewichtete Elemente, die den geringsten Einfluss auf das trainierte Netzwerk haben.
  • Sie müssen eine Gruppe von Eingabe- und Aktivierungswerten untersuchen, um die Beziehung zwischen der Eingabe- und der versteckten Einheitenschicht zu entwickeln.
  • Es ist hilfreich, den Einfluss einer bestimmten Eingabevariablen auf die Ausgabe des Netzes zu beurteilen. Die aus dieser Analyse gewonnenen Erkenntnisse sollten in Regeln dargestellt werden.
  • Backpropagation ist besonders nützlich für tiefe neuronale Netze, die an fehleranfälligen Projekten arbeiten, wie z. B. Bild- oder Spracherkennung.
  • Backpropagation nutzt die Vorteile der Ketten- und Potenzregeln, die es Backpropagation ermöglichen, mit einer beliebigen Anzahl von Ausgängen zu arbeiten.

Best practice Backpropagation

Backpropagation kann mit Hilfe der Analogie „Schuhspitze“ erklärt werden

Zu wenig Spannung =

  • Nicht genug Zwang und sehr locker

Zu viel Spannung =

  • Zu viel Zwang (Übertraining)
  • Zu viel Zeit (relativ langsamer Prozess)
  • Höhere Wahrscheinlichkeit eines Bruchs

Eine Spitze mehr ziehen als andere =

  • Unbequemlichkeit (Bias)

Nachteile der Backpropagation

  • Die tatsächliche Leistung der Backpropagation bei einem bestimmten Problem ist von den Eingabedaten abhängig.
  • Backpropagation kann recht empfindlich auf verrauschte Daten reagieren
  • Sie müssen den matrixbasierten Ansatz für Backpropagation anstelle von Mini-Batch verwenden.

Zusammenfassung

  • Ein neuronales Netzwerk ist eine Gruppe von miteinander verbundenen It-I/O-Einheiten, bei denen jede Verbindung ein Gewicht hat, das mit den Computerprogrammen verknüpft ist.
  • Backpropagation ist eine Kurzform für „Rückwärtsfortpflanzung von Fehlern.“ Es ist eine Standardmethode für das Training künstlicher neuronaler Netze
  • Backpropagation ist schnell, einfach und leicht zu programmieren
  • Ein Feedforward Neural Network ist ein künstliches neuronales Netz.
  • Zwei Arten von Backpropagation-Netzen sind 1) Statische Backpropagation 2) Rekurrente Backpropagation
  • Im Jahr 1961 wurde das Grundkonzept der kontinuierlichen Backpropagation im Rahmen der Kontrolltheorie von J. Kelly, Henry Arthur und E. Bryson abgeleitet.
  • Backpropagation vereinfacht die Netzstruktur, indem sie gewichtete Verbindungen entfernt, die einen minimalen Einfluss auf das trainierte Netz haben.
  • Es ist besonders nützlich für tiefe neuronale Netzwerke, die an fehleranfälligen Projekten arbeiten, wie z. B. Bild- oder Spracherkennung.
  • Der größte Nachteil der Backpropagation ist, dass sie empfindlich für verrauschte Daten sein kann.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.