Neuronales Netzwerkmodell: Kurze Einführung, Glossar & Backpropagation

Veröffentlicht: 2020-05-22

Wenn Sie ein Software-Enthusiast sind, der versucht, die Funktionsweise neuronaler Netze zu verstehen, sind Sie hier genau richtig.

In diesem Leitfaden helfen wir Anfängern, die Bedeutung neuronaler Netze zu verstehen, eine Einführung in ein neuronales Netzmodell zu erhalten und ihr Wissen auf neue Bereiche des Fachgebiets zu erweitern.

Inhaltsverzeichnis

Was ist ein neuronales Netzwerk?

Bevor wir uns mit der Computerterminologie befassen, lassen Sie uns die Existenz neuronaler Netze in unserem täglichen Leben verstehen.

Der Begriff „Neuron“ kommt von „Neuron“, was die Bezeichnung für eine einzelne Nervenzelle ist. Das ist richtig – ein neuronales Netzwerk bedeutet im Wesentlichen ein Netzwerk von Neuronen, die einfache und Aktionen in unserem täglichen Leben ausführen.

Mustererkennung, Objekterkennung und Intelligenz sind ein wichtiger Aspekt der Probleme, mit denen wir täglich konfrontiert sind. Während sie mit so viel Leichtigkeit ausgeführt werden, dass wir es nicht einmal bemerken, ist die Wahrheit, dass diese Reaktionen schwer zu automatisieren sind.

Beispiel:

  • Kinder merken, wie ein Apfel aussieht
  • Ein Tier, das seine Mutter oder seinen Besitzer erkennt
  • Wahrnehmen, ob etwas heiß oder kalt ist

Unsere neuronalen Netze führen diese komplizierten Berechnungen durch.

Menschen sind nun in der Lage, ein Computersystem zu bauen, das ähnlich wie unser Nervensystem funktionieren kann. Diese werden als künstliche neuronale Netze (KNNs) bezeichnet.

Während wir die ANNs ursprünglich zur Ausführung einfacher Funktionen verwendeten, hat uns die Zunahme der Rechenleistung nun ermöglicht, eine ziemlich leistungsfähige neuronale Netzwerkarchitektur aufzubauen, um immer kompliziertere Probleme zu lösen.

Lassen Sie uns im nächsten Abschnitt mehr über ANN erfahren.

Lesen Sie: TensorFlow-Objekterkennungs-Tutorial für Anfänger

Was ist ein künstliches neuronales Netzwerkmodell?

Ein mehrschichtiges, vollständig verbundenes neuronales Netzwerk, das eine Eingabeschicht, verborgene Schichten und eine Ausgabeschicht enthält, wird als künstliches neuronales Netzwerk oder ANN bezeichnet.

Das Bild unten zeigt ein ANN.

Quelle

Wenn Sie genau hinsehen, werden Sie feststellen, dass jeder Knoten in einer Ebene mit jedem Knoten in der Ebene daneben verbunden ist.

Wenn Sie die Anzahl der verborgenen Schichten erhöhen, wird das Netzwerk tiefer.

Sehen wir uns an, wie ein einzelner Knoten in der Ausgabe- oder verborgenen Schicht aussieht.

Quelle

Wie Sie sehen können, erhält der Knoten viele Eingaben. Er summiert alle Gewichte und gibt sie über eine nichtlineare Aktivierungsfunktion als Ausgang weiter.

Diese Ausgabe des Knotens wird zur Eingabe des Knotens in der nächsten Schicht.

Eine wichtige Sache, die hier zu beachten ist, ist, dass sich das Signal immer von links nach rechts bewegt. Sobald alle Knoten dem Verfahren gefolgt sind, wird die endgültige Ausgabe ausgegeben.

So sieht die Gleichung eines Knotens aus.

Quelle

In der obigen Gleichung ist b die Vorspannung. Er ist der Eingang zu allen Knoten und trägt immer den Wert 1.

Bias hilft, das Ergebnis der Aktivierungsfunktion nach links oder rechts zu verschieben.

Glossar des künstlichen neuronalen Netzwerkmodells

Schauen wir uns die grundlegenden Begriffe an, die Sie kennen sollten, wenn es um ein künstliches neuronales Netzwerkmodell geht.

Eingänge

Die Daten, die zuerst von der Quelle in das neuronale Netz eingespeist werden, werden als Eingabe bezeichnet. Sein Ziel ist es, dem Netzwerk Daten zu geben, um eine Entscheidung oder Vorhersage über die darin eingespeisten Informationen zu treffen. Das neuronale Netzwerkmodell akzeptiert normalerweise reale Wertesätze von Eingaben und sollte in ein Neuron in der Eingabeschicht eingespeist werden.

Trainingsset

Die Eingaben, für die Sie bereits die richtigen Ausgaben kennen, werden Trainingssätze genannt. Diese werden verwendet, um dem neuronalen Netzwerk zu helfen, trainiert zu werden und das Ergebnis für den gegebenen Eingabesatz zu speichern.

Ausgänge

Jedes neuronale Netz generiert eine Ausgabe als Vorhersage oder Entscheidung über die ihm zugeführten Daten. Diese Ausgabe erfolgt in Form von gesetzten Realwerten oder booleschen Entscheidungen. Nur eines der Neuronen in der Ausgabeschicht erzeugt den Ausgabewert.

Neuron

Ein Neuron, auch Perzeptron genannt, ist die Grundeinheit eines neuronalen Netzes. Es akzeptiert einen Eingabewert und generiert darauf basierend eine Ausgabe.

Wie bereits erwähnt, erhält jedes Neuron einen Teil der Eingabe und leitet ihn durch die nichtlineare Aktivierungsfunktion an den Knoten in der nächsten Schicht weiter. Diese Aktivierungsfunktionen können TanH, Sigmoid oder ReLu sein. Das nichtlineare Merkmal dieser Funktionen hilft, das Netzwerk zu trainieren.

Gewichtsraum

Jedes Neuron hat ein numerisches Gewicht. Wenn es Eingaben an eine andere Note liefert, wird sein Gewicht mit den anderen summiert, um eine Ausgabe zu erzeugen. Durch kleine Änderungen an diesen Gewichten werden neuronale Netze trainiert. Die Feinabstimmung der Gewichtungen hilft bei der Bestimmung der richtigen Gewichtungen und Verzerrungen, die das beste Ergebnis erzielen würden. Hier kommt Backpropagation ins Spiel.

Was ist Backpropagation in einem neuronalen Netzwerkmodell?

Eine der Möglichkeiten, die kleinen Änderungen, die an den Gewichtungen vorgenommen werden müssen, um den Verlust des gesamten Netzwerks zu minimieren, erfolgreich herauszufinden, ist Backpropagation.

  • Zunächst sollen die Aktivierungen in Aufwärts- oder Feedforward-Richtung propagiert werden.
  • Nun müssen die Ableitungen der Kostenfunktion in Abwärts- oder Rückwärtsrichtung propagiert werden.

Auf diese Weise können Sie die partielle Kostenableitung für jedes Gewicht bestimmen. Sie können dann die Kosten berechnen, die durch die Anpassungen reduziert würden.

Fazit

Viele Softwareingenieure empfehlen das neuronale Netzwerkmodell nicht, da sie es für ziemlich ineffizient halten, da mehrere Iterationen erforderlich sind, um die kostengünstigste Lösung zu finden.

Zahlreiche neue Algorithmen, wie Hintons Capsule Networks, Capsule Neural Network, erfordern jedoch viel weniger Anpassungen, um ein präzises Modell zu erreichen. Und so hat die neuronale Vernetzung in Zukunft sicherlich einen großen Spielraum.

Wenn Sie mehr über maschinelles Lernen erfahren möchten, sehen Sie sich das PG-Diplom in maschinellem Lernen und KI von IIIT-B & upGrad an, das für Berufstätige konzipiert ist und mehr als 450 Stunden strenge Schulungen, mehr als 30 Fallstudien und Aufgaben bietet, IIIT- B-Alumni-Status, mehr als 5 praktische, praktische Abschlussprojekte und Jobunterstützung bei Top-Unternehmen.

Warum muss man für künstliche Intelligenz Mathe studieren?

Im Gegensatz zu dem, was viele von uns denken, ist künstliche Intelligenz stark von Mathematik abhängig. Das gesamte Konzept, Maschinen beizubringen, ähnlich wie Menschen zu denken und zu handeln, basiert auf Konzepten, die zu verschiedenen Zweigen der Mathematik gehören, wie Wahrscheinlichkeit und Statistik, um nur einige zu nennen. Data Science kommt auch mit seinen Grundlagen in Bezug auf verschiedene mathematische Konzepte, von Analysis, linearer Algebra und Spieltheorie bis hin zu fortgeschrittenen Regressionen, Klassifikationen, Statistiken, Wahrscheinlichkeiten, Gradientenabstieg und mehr. Starke mathematische Grundlagen sind unerlässlich, um ein effektives Verständnis von KI-Konzepten zu entwickeln, die Ihnen helfen, eine erfolgreiche Karriere in diesem Bereich aufzubauen.

Ist das neuronale Netzwerk ein Algorithmus im maschinellen Lernen?

Künstliche neuronale Netze oder einfach neuronale Netze können als eine Reihe von Algorithmen für maschinelles Lernen definiert werden, die dem menschlichen Gehirn ähneln und für eine erweiterte Mustererkennung entwickelt wurden. Neuronale Netze sind darauf ausgelegt, numerische Muster innerhalb von Vektoren zu identifizieren, in die alle gesammelten Daten übersetzt werden. Durch die Erkennung von Mustern in unstrukturierten oder ungenauen Daten helfen neuronale Netze bei der Klassifizierung und Bildung von Clustern für eine verbesserte Datenspeicherung und -verwaltung. Sensorische Daten, die in neuronale Netze eingespeist werden, werden über eine maschinelle Wahrnehmung interpretiert, die die Eingabedaten kennzeichnet oder gruppiert.

Warum wird Backpropagation in neuronalen Netzen benötigt?

Im Bereich der künstlichen neuronalen Netze bezieht sich das Backpropagation-Verfahren eigentlich auf die Rückwärtsausbreitung von Fehlern. Dies ist eine standardisierte Technik, die zum Trainieren künstlicher neuronaler Netze verwendet wird und Iterationen durchläuft. Backpropagation wird verwendet, um die Gewichtungen eines künstlichen neuronalen Netzwerks zu optimieren, Fehler zu minimieren und das System genauer und zuverlässiger zu machen. Diese Methode funktioniert schnell und lässt sich auch einfach programmieren. Es ist eine flexible Technik; Vorkenntnisse über das neuronale Netz sind nicht erforderlich. Es beinhaltet keine zusätzlichen Parameter, sondern stimmt nur die in das System eingespeisten Zahlen ab.