Neuronale Netzwerke: Knoten und verborgene Ebenen

Ein neuronales Netzwerk aufbauen das Nichtlinearitäten lernt, mit der folgenden bekannten Modellstruktur beginnen: lineares Modell der Form $y = b + w_1x_1 + w_2x_2 + w_3x_3$.

Diese Gleichung lässt sich wie unten dargestellt visualisieren, wobei $x_1$, $x_2$ und $x_3$ sind unsere drei Eingabeknoten (in Blau) und $y'$ ist unser Ausgabeknoten (in grün).

Übung 1

Im obigen Modell sind die Werte weight und bias-Werte sind zufällig initialisiert. Führen Sie die folgenden Aufgaben durch, um sich mit dem und erkunden das lineare Modell. Sie können das Drop-down-Menü Aktivierungsfunktion vorerst ignorieren. besprechen wir das weiter unten im Modul.

  1. Klicken Sie über dem Netzwerk auf die Schaltfläche „Wiedergabe“ (▶️), um den Wert den Ausgabeknoten für die Eingabewerte $x_1 = 1.00$, $x_2 = 2.00$ und $x_3 = 3,00$.

  2. Klicken Sie auf den zweiten Knoten im Eingabeschicht und erhöhen Sie den Wert von 2,00 bis 2,50. Beachten Sie, dass sich der Wert des Ausgabeknotens ändert. Ausgabe auswählen Knoten (in grün) und sehen Sie sich den Bereich Berechnungen an, um zu sehen, wie sich die Ausgabe -Wert berechnet.

  3. Klicken Sie auf den Ausgabeknoten (in grün), um die Gewichtung ($w_1$, $w_2$, $w_3$) anzuzeigen. Bias ($b$)-Parameterwerte. Verringern Sie den Gewichtungswert für $w_3$ (Beachten Sie wieder, dass der Wert des Ausgabeknotens und die Berechnungen geändert wurden). Erhöhen Sie dann den Wert für die Verzerrung. Sehen Sie sich an, wie diese Änderungen die Modellausgabe beeinflusst haben.

Ebenen zum Netzwerk hinzufügen

Wenn Sie die Werte für Gewichtung und Verzerrung des Netzwerks in Übung 1: Durch die Änderung wurde die mathematische Gesamtberechnung Beziehung zwischen Eingabe und Ausgabe. Unser Modell ist immer noch ein lineares Modell.

Aber was ist, wenn wir dem Netzwerk eine weitere Schicht hinzufügen, und die Ausgabeebene? In der Terminologie von neuronalen Netzwerken sind zusätzliche Schichten zwischen werden die Eingabe- und die Ausgabeschicht verborgene Ebenen und die Knoten in diesen Schichten werden als Neuronen

Der Wert jedes Neurons in der verborgenen Schicht wird auf dieselbe Weise berechnet wie die Ausgabe eines linearen Modells: Nehmen Sie die Summe des Produkts jeder Eingabe. (die Neuronen in der vorherigen Netzwerkschicht) und einen eindeutigen Gewichtungsparameter, plus die Voreingenommenheit. Die Neuronen der nächsten Schicht (hier die Ausgabeschicht) werden mit den Neuronenwerten der verborgenen Schicht als Eingaben berechnet.

Dank dieser neuen verborgenen Ebene kann unser Modell die Eingabedaten mit einer anderen Gruppe von Parametern. Kann das Modell damit nicht lineare Beziehungen lernen?

Übung 2

Wir haben dem Modell eine versteckte Schicht mit vier Neuronen hinzugefügt.

Klicken Sie über dem Netzwerk auf die Schaltfläche „Wiedergabe“ (▶️), um den Wert die vier Knoten mit versteckter Schicht und den Ausgabeknoten für die Eingabewerte $x_1 = 1,00$, $x_2 = 2,00$ und $x_3 = 3,00$.

Sehen Sie sich dann das Modell an und verwenden Sie es, um die folgenden Fragen zu beantworten.

Wie viele parameters (Gewichtungen und Verzerrungen) Netzwerkmodell haben?
4
Unser ursprüngliches Modell in Übung 1 hatte vier Parameter: w11, w21, w31 und b. Da dieses Modell eine versteckte Ebene gibt es weitere Parameter.
12
Beachten Sie, dass die Gesamtzahl der Parameter sowohl die Parameter zur Berechnung der Knotenwerte in der verborgenen Schicht Eingabewerte und die Parameter, die zur Berechnung des Ausgabewerts verwendet werden aus den Knotenwerten im verborgenen Layer entfernen.
16
Beachten Sie, dass die Gesamtzahl der Parameter sowohl die Gewichtung und die Verzerrungsparameter.
21
Zur Berechnung der vier Knotenwerte in die verborgene Schicht – 3 Gewichtungen (eine für jeden Eingabewert) und ein , das sich aus 16 Parametern zusammensetzt. Dann werden 5 Parameter verwendet, , um den Ausgabewert zu berechnen: 4 Gewichtungen (eine für jeden Knoten im versteckte Schicht) und eine Verzerrung. Insgesamt hat dieses neuronale Netzwerk 21 Parameter.

Versuchen Sie, die Modellparameter zu ändern, und beobachten Sie die Auswirkungen auf die Hidden-Layer-Knotenwerte und den Ausgabewert (Sie können sich die Berechnungsbereich unten, um zu sehen, wie diese Werte berechnet).

Kann dieses Modell Nichtlinearitäten lernen?

Ja
Klicken Sie auf jeden Knoten im verborgenen Layer und im Ausgabeknoten. und sehen Sie sich die Berechnungen unten an. Was fällt Ihnen auf all diese Berechnungen anstellen?
Nein

Wenn Sie auf jeden Knoten in der ausgeblendeten Ebene klicken, Berechnungen unten sehen, sind sie alle linear (umfasst Multiplikation und Addition).

Wenn Sie auf den Ausgabeknoten klicken und die Berechnung überprüfen, sehen Sie, dass diese Berechnung ebenfalls linear ist. Linear mit linearen Berechnungen durchgeführte Berechnungen linear, d. h., das Modell kann Nichtlinearitäten nicht lernen.