Neuronales Netzwerk-Tutorial: Schritt-für-Schritt-Anleitung für Anfänger

Veröffentlicht: 2019-11-20

Im Bereich maschinelles Lernen gibt es viele interessante Konzepte. Hier, in diesem Tutorial zu neuronalen Netzwerken, werden wir eines der grundlegenden Konzepte von neuronalen Netzwerken diskutieren. Dieser Artikel wird Ihnen helfen, die Funktionsweise dieser Netzwerke zu verstehen, indem er die Theorie dahinter erklärt.

Nachdem Sie dieses Tutorial zu künstlichen neuronalen Netzwerken abgeschlossen haben, werden Sie Folgendes herausfinden:

  • Was ist ein neuronales Netz?
  • Wie funktioniert ein neuronales Netz?
  • Welche Arten von neuronalen Netzen gibt es?

Inhaltsverzeichnis

Was sind neuronale Netze?

Ein neuronales Netzwerk ist ein System, das wie ein menschliches Gehirn funktioniert. Es ist ziemlich einfach, aber in unserem täglichen Leben weit verbreitet.

Eine komplexe Definition wäre, dass ein neuronales Netzwerk ein Rechenmodell ist, das eine Netzwerkarchitektur hat. Diese Architektur besteht aus künstlichen Neuronen. Diese Struktur hat spezifische Parameter, durch die man sie zum Ausführen bestimmter Aufgaben modifizieren kann.

Sie besitzen weitgehende Approximationseigenschaften. Das bedeutet, dass sie eine Funktion unabhängig von ihrer Dimension mit beliebiger Genauigkeit approximieren können. Neuronale Netze finden umfangreiche Anwendungen in Bereichen, in denen traditionelle Computer nicht allzu gut abschneiden. Von Siri bis Google Maps sind neuronale Netze überall präsent, wo Künstliche Intelligenz eingesetzt wird.

Sie sind ein wesentlicher Bestandteil der Operationen der künstlichen Intelligenz. Neuronale Netze lassen sich vom menschlichen Gehirn inspirieren und sind daher auch ähnlich aufgebaut.

Wie funktioniert ein neuronales Netzwerk?

Ein neuronales Netz hat viele Schichten. Jede Schicht erfüllt eine bestimmte Funktion, und je komplexer das Netzwerk ist, desto mehr Schichten gibt es. Deshalb wird ein neuronales Netz auch als mehrschichtiges Perzeptron bezeichnet.

Die reinste Form eines neuronalen Netzes hat drei Schichten:

  1. Die Eingabeschicht
  2. Die verborgene Schicht
  3. Die Ausgangsschicht

Wie der Name schon sagt, hat jede dieser Schichten einen bestimmten Zweck. Diese Schichten bestehen aus Knoten. Je nach Anforderung kann es in einem neuronalen Netz mehrere verborgene Schichten geben. Die Eingangsschicht nimmt die Eingangssignale auf und überträgt sie an die nächste Schicht. Es sammelt die Daten von der Außenwelt.

Die verborgene Schicht führt alle Backend-Aufgaben der Berechnung aus. Ein Netzwerk kann sogar null versteckte Schichten haben. Ein neuronales Netzwerk hat jedoch mindestens eine verborgene Schicht. Die Ausgangsschicht überträgt das Endergebnis der Berechnung der verborgenen Schicht.

Wie bei anderen maschinellen Lernanwendungen müssen Sie auch ein neuronales Netzwerk mit einigen Trainingsdaten trainieren, bevor Sie es mit einem bestimmten Problem versorgen. Aber bevor wir näher darauf eingehen, wie ein neuronales Netzwerk ein Problem löst, sollten Sie zuerst etwas über die Funktionsweise von Perceptron-Schichten wissen:

Wie funktionieren Perzeptronschichten?

Ein neuronales Netzwerk besteht aus vielen Perceptron-Schichten; deshalb hat es den Namen „mehrschichtiges Perzeptron“. Diese Schichten werden auch als verdeckte Schichten dichter Schichten bezeichnet. Sie bestehen aus vielen Perzeptron-Neutronen. Sie sind die primäre Einheit, die zusammenarbeitet, um eine Perzeptronschicht zu bilden. Diese Neuronen erhalten Informationen aus dem Satz von Eingaben. Sie kombinieren diese numerischen Eingaben mit einem Bias und einer Gruppe von Gewichtungen, die dann eine einzelne Ausgabe erzeugen.

Für die Berechnung berücksichtigt jedes Neuron Gewichte und Bias. Dann verwendet die Kombinationsfunktion das Gewicht und die Vorspannung, um eine Ausgabe (modifizierte Eingabe) zu liefern. Es funktioniert über die folgende Gleichung:

Kombination = Bias + Gewichtungen * Eingaben

Danach erzeugt die Aktivierungsfunktion die Ausgabe mit der folgenden Gleichung:

Ausgang = Aktivierung (Kombination)

Diese Funktion bestimmt, welche Rolle das neuronale Netzwerk spielt. Sie bilden die Schichten des Netzwerks. Die folgenden sind die vorherrschenden Aktivierungsfunktionen:

Die lineare Funktion

In dieser Funktion ist die Ausgabe nur die Kombination des Neurons:

Aktivierung = Kombination

Die hyperbolische Tangensfunktion

Es ist die beliebteste Aktivierungsfunktion unter den neuronalen Netzen. Es ist eine Sigmoidfunktion und liegt zwischen -1 und +1:

Aktivierung = tanh(Kombination)

Die logistische Funktion

Die logistische Funktion ist der hyperbolischen Tangensfunktion ziemlich ähnlich, da sie ebenfalls eine Art Sigmoidfunktion ist. Es ist jedoch anders, da es zwischen 0 und 1 liegt:

Aktivierung = 1 1 + e -Kombination

Die gleichgerichtete lineare Einheitsfunktion

Genau wie die hyperbolische Tangensfunktion ist auch die gleichgerichtete lineare Einheitsfunktion weit verbreitet. Ein anderer Name für die gleichgerichtete lineare Einheitsfunktion ist ReLU. ReLU ist gleich der Kombination, wenn sie gleich oder größer als Null ist, und es ist negativ, wenn die Kombination kleiner als (negativ) Null ist.

Also, wie funktioniert ein neuronales Netzwerk genau?

Nachdem Sie nun wissen, was sich hinter einem neuronalen Netzwerk verbirgt und wie es funktioniert, können wir uns auf die Funktionsweise eines neuronalen Netzwerks konzentrieren.

So funktioniert das:

  1. Informationen werden in die Eingabeschicht eingespeist, die sie an die verborgene Schicht überträgt
  2. Die Verbindungen zwischen den beiden Schichten weisen jedem Eingang willkürlich Gewichtungen zu
  3. Eine Abweichung, die jeder Eingabe hinzugefügt wird, nachdem die Gewichte einzeln mit ihnen multipliziert wurden
  4. Die gewichtete Summe wird an die Aktivierungsfunktion übergeben
  5. Die Aktivierungsfunktion bestimmt, welche Knoten sie zur Merkmalsextraktion auslösen soll
  6. Das Modell wendet eine Anwendungsfunktion auf die Ausgabeschicht an, um die Ausgabe zu liefern
  7. Gewichtungen werden angepasst, und die Ausgabe wird rückwärts übertragen, um Fehler zu minimieren

Das Modell verwendet eine Kostenfunktion, um die Fehlerrate zu reduzieren. Sie müssen die Gewichte mit verschiedenen Trainingsmodellen ändern.

  1. Das Modell vergleicht die Ausgabe mit dem ursprünglichen Ergebnis
  2. Es wiederholt den Vorgang, um die Genauigkeit zu verbessern

Das Modell passt die Gewichtungen bei jeder Iteration an, um die Genauigkeit der Ausgabe zu verbessern.

Nehmen Sie online am Kurs „Künstliche Intelligenz“ der weltbesten Universitäten teil – Master, Executive Post Graduate Programs und Advanced Certificate Program in ML & AI, um Ihre Karriere zu beschleunigen.

Arten von neuronalen Netzen

1) Wiederkehrendes neuronales Netzwerk (RNN)

In diesem Netzwerk wird die Ausgabe einer Schicht gespeichert und an die Eingabe zurückübertragen. Auf diese Weise erinnern sich die Knoten einer bestimmten Schicht an einige Informationen über die vergangenen Schritte. Die Kombination der Eingabeschicht ist das Produkt aus der Summe von Gewichten und Merkmalen. Der wiederkehrende neuronale Netzwerkprozess beginnt in den verborgenen Schichten.

Hier erinnert sich jeder Knoten an einige der Informationen seines vorausgehenden Schritts. Das Modell behält einige Informationen aus jeder Iteration bei, die es später verwenden kann. Das System lernt selbst, wenn sein Ergebnis falsch ist. Anschließend verwendet es diese Informationen, um die Genauigkeit seiner Vorhersage bei der Rückwärtsausbreitung zu erhöhen. Die beliebteste Anwendung von RNN ist die Text-to-Speech-Technologie.

2) Convolutional Neural Network (CNN)

Dieses Netzwerk besteht aus einer oder mehreren Faltungsschichten. Die in diesem Netzwerk vorhandene Faltungsschicht wendet eine Faltungsfunktion auf die Eingabe an, bevor sie an die nächste Schicht übertragen wird. Dadurch hat das Netzwerk weniger Parameter, aber es wird tiefgründiger. CNNs werden häufig in der Verarbeitung natürlicher Sprache und der Bilderkennung verwendet.

3) Neuronales Netzwerk mit radialer Basisfunktion (RBFNN)

Dieses neuronale Netzwerk verwendet eine radiale Basisfunktion. Diese Funktion berücksichtigt den Abstand eines Punktes vom Mittelpunkt. Diese Netzwerke bestehen aus zwei Schichten. Die verborgene Schicht kombiniert die Merkmale mit der radialen Basisfunktion und überträgt die Ausgabe an die nächste Schicht.

Die nächste Schicht führt dasselbe aus, während sie die Ausgabe der vorherigen Schicht verwendet. Die neuronalen Netze mit radialer Basisfunktion werden in Energiesystemen verwendet.

4) Neuronales Feedforward-Netzwerk (FNN)

Dies ist die reinste Form eines künstlichen neuronalen Netzes. In diesem Netzwerk bewegen sich Daten in eine Richtung, dh von der Eingabeschicht zur Ausgabeschicht. In diesem Netzwerk erhält die Ausgangsschicht die Summe der Produkte der Eingänge und ihrer Gewichte. Es gibt keine Back-Propagation in diesem neuronalen Netzwerk. Diese Netzwerke können viele oder keine verborgenen Schichten haben. Diese sind einfacher zu warten und finden Anwendung in der Gesichtserkennung.

5) Modulares neuronales Netzwerk

Dieses Netzwerk besitzt mehrere Netzwerke, die unabhängig voneinander funktionieren. Sie alle führen bestimmte Aufgaben aus, interagieren jedoch während des Berechnungsprozesses nicht miteinander.

Auf diese Weise kann ein modulares neuronales Netzwerk eine hochkomplexe Aufgabe mit viel höherer Effizienz ausführen. Diese Netzwerke sind im Vergleich zu einfacheren Netzwerken (wie FNN) schwieriger zu warten, liefern aber auch schnellere Ergebnisse für komplexe Aufgaben.

Erfahren Sie mehr über neuronale Netze

Das ist es in unserem neuronalen Netzwerk-Tutorial. Sie müssen gesehen haben, welche vielfältigen Aufgaben diese Netzwerke erfüllen können. Sie werden in fast allen Technologien verwendet, die wir täglich verwenden. Wenn Sie mehr über neuronale Netze erfahren möchten, können Sie in unserem Kurskatalog zu künstlicher Intelligenz und maschinellem Lernen nachsehen.

Sie können unser Executive PG-Programm für maschinelles Lernen und KI einsehen , das praktische Workshops, persönliche Mentoren aus der Industrie, 12 Fallstudien und Aufgaben, IIIT-B-Alumni-Status und mehr bietet.

Wie funktioniert ein neuronales Netz?

Die Eingabeschicht empfängt die Daten und gibt sie an die verborgene Schicht weiter. Durch die Verknüpfungen zwischen den beiden Schichten werden jedem Eingang willkürlich Gewichtungen zugewiesen. Nachdem die Gewichtungen mit ihnen einzeln multipliziert wurden, wird eine Vorspannung auf jede Eingabe angewendet. An die Aktivierungsfunktion wird die gewichtete Summe weitergegeben. Für die Merkmalsextraktion entscheidet die Aktivierungsfunktion, welche Knoten gefeuert werden sollen. Um die Ausgabe zu liefern, verwendet das Modell eine Anwendungsfunktion auf der Ausgabeschicht. Um Fehler zu reduzieren, werden Gewichtungen modifiziert und die Ausgabe wird rückwärts übertragen.

Was ist ein rekurrentes neuronales Netz?

In diesem Netzwerk wird die Ausgabe einer Schicht gespeichert und an die Eingabe zurückgesendet. Infolgedessen behalten die Knoten einer bestimmten Ebene einige Informationen über frühere Aktionen. Die Summe aus Gewichten und Merkmalen bestimmt die Kombination der Eingabeschicht. In den verborgenen Schichten beginnt der rnn-basierte Prozess. Jeder Knoten hier erinnert sich an einen Teil der Informationen aus der vorherigen Stufe. Das Modell speichert einige Daten von jeder Iteration, damit sie später verwendet werden können. Wenn das Ergebnis des Systems falsch ist, lernt es selbst. Anschließend verwendet es dieses Wissen, um die Genauigkeit seiner Back-Propagation-Prognose zu optimieren. Die Text-to-Speech-Technologie ist die häufigste Anwendung von RNN.

Wie funktioniert ein mehrschichtiges Perzeptron?

Der Name „Mehrschicht-Perzeptron“ kommt daher, dass ein neuronales Netz aus mehreren Perzeptron-Schichten aufgebaut ist. Diese Schichten werden auch als dichte Schichten mit verborgenen Schichten bezeichnet. Sie bestehen aus einer großen Anzahl von Perzeptron-Neutronen. Sie sind die Grundbausteine, aus denen eine Perzeptronschicht besteht. Die Informationen in der Sammlung von Eingaben erreichen diese Neuronen. Diese numerischen Eingaben werden mit einem Bias sowie einer Gruppe von Gewichten kombiniert, um eine einzige Ausgabe zu erzeugen.