Neuronale Netzwerke: Interaktive Übungen

In den interaktiven Übungen unten werden Sie die Funktionsweise von neuronalen Netzen. Zunächst sehen Sie, wie sich Parameter und Hyperparameter die Prognosen des Netzwerks beeinflussen. Dann wenden Sie das Gelernte an, um nicht lineare Daten zu verarbeiten.

Übung 1

Mit dem folgenden Widget wird ein neuronales Netzwerk mit der folgenden Konfiguration eingerichtet:

  • Eingabeebene mit drei Neuronen mit den Werten 0.00, 0.00 und 0.00
  • Ausgeblendete Ebene mit 4 Neuronen
  • Ausgabeebene mit 1 Neuron
  • ReLU-Aktivierungsfunktion angewendet auf alle versteckten Schichtknoten und der Ausgabeknoten,

Überprüfen Sie die Ersteinrichtung des Netzwerks. Hinweis: Klicken Sie nicht auf das Symbol ▶️ oder >|) und führen Sie dann die Aufgaben unter dem Widget aus.

Aufgabe 1

Die Werte für die drei Eingabemerkmale für das neuronale Netzwerkmodell sind alle 0.00 Klicken Sie auf die einzelnen Knoten im Netzwerk, um alle initialisierten Werte. Beantworten Sie diese Frage, bevor Sie auf die Wiedergabetaste ▶️ klicken:

Welche Art von Ausgabewert was wir glauben: positiv, negativ oder 0?
Positiver Ausgabewert
Negativer Ausgabewert
Ausgabewert 0

Klicken Sie nun über dem Netzwerk auf die Schaltfläche „Wiedergabe“ (▶️) und sehen Sie sich alle ausgeblendeten Ebenen an. und Ausgabeknotenwerte eingefügt. War Ihre Antwort oben richtig?

Hier finden Sie eine Erläuterung.

Der genaue Ausgabewert, den Sie erhalten, variiert je nach Gewichtung und Bias-Parameter zufällig initialisiert. Da jedoch jedes Neuron in der Eingabeebene den Wert 0 hat, werden die Gewichtungen zur Berechnung der werden alle Knotenwerte der ausgeblendeten Schicht auf null gesetzt. Zum Beispiel könnte die erste Berechnung für die Knoten der versteckten Schicht:

y = ReLU(w11* 0,00 + w21* 0,00 + w31* 0,00 + b)

y = ReLU(b)

Der Wert jedes Knotens mit ausgeblendeter Schicht entspricht dem ReLU-Wert des Verzerrung (b), die 0 ist, wenn b negativ ist, und b selbst, wenn b 0 oder positiv zu bewerten.

Der Wert des Ausgabeknotens wird dann so berechnet:

y = ReLU(w11* x11 + w21* x21 + w31* x31 + w41* x41 + b)

Aufgabe 2

Beantworten Sie die folgende Frage, bevor Sie das neuronale Netzwerk ändern:

Wenn Sie eine weitere ausgeblendete Ebene hinzufügen nach der ersten verborgenen Schicht an das neuronale Netzwerk an und geben dieser neuen Ebene 3-Knoten. Eingabe- und Gewichtungs-/Verzerrungsparameter identisch. Berechnungen betroffen sein?
Alle Knoten im Netzwerk, mit Ausnahme der Eingabeknoten,
Nur die Knoten im erste ausgeblendete Ebene
Nur der Ausgabeknoten

Ändern Sie nun das neuronale Netzwerk, um eine neue versteckte Ebene mit drei Knoten hinzuzufügen:

  1. Klicken Sie auf die Schaltfläche + links neben dem Text 1 ausgeblendete Ebene, um eine neue Ebene hinzuzufügen. vor der Ausgabeebene eingeblendet werden.
  2. Klicken Sie zweimal auf die Schaltfläche + über der neuen ausgeblendeten Ebene, um zwei weitere Knoten hinzuzufügen. hinzugefügt haben.

War Ihre Antwort oben richtig?

Hier finden Sie eine Erläuterung.

Nur der Ausgabeknoten ändert sich. Da Inferenz dieses neuronale Netzwerk ist „feed-forward“ (der Berechnungsfortschritt von Anfang bis Ende), die Hinzufügung einer neuen Ebene im Netzwerk nur auf Knoten nach dem neuen und nicht die Vorgänger.

Aufgabe 3

Klicken Sie auf den zweiten Knoten (von oben) in der ersten ausgeblendeten Schicht des Netzwerks. Diagramm. Beantworten Sie die Fragen, bevor Sie Änderungen an der Netzwerkkonfiguration vornehmen. folgende Frage:

Wenn Sie den Wert des Felds Gewichtung w12 (unter dem ersten Eingabeknoten, x1), welche anderen Knoten Berechnungen könnten durch einige Eingaben beeinflusst werden. Werte?
Keine
Der zweite Knoten im die erste ausgeblendete Ebene, alle Knoten in der zweiten ausgeblendeten Ebene Ausgabeknotens.
Alle Knoten im die erste ausgeblendete Schicht, die zweite ausgeblendete Schicht und die Ausgabeebene.

Klicken Sie nun in das Textfeld für die Gewichtung w12, das unterhalb der ersten Eingabeknotens, x1), ändern Sie seinen Wert in 5.00 und drücken Sie die Eingabetaste. Sehen Sie sich die Änderungen an der Grafik an.

War Ihre Antwort richtig? Seien Sie vorsichtig bei der Überprüfung Ihrer Antwort: Wenn ein Knoten ändert sich der Wert nicht, bedeutet das, dass sich die zugrunde liegende Berechnung nicht geändert hat?

Hier finden Sie eine Erläuterung.

Der einzige Knoten, der in der ersten ausgeblendeten Ebene betroffen ist, ist der zweite Knoten (der die Sie angeklickt haben). Die Wertberechnungen für die anderen Knoten im ersten versteckte Layer nicht den Parameter w12 enthalten, sie sind also nicht betroffen sind. Alle Knoten in der zweiten ausgeblendeten Ebene sind betroffen, Berechnungen vom Wert des zweiten Knotens im ersten ausgeblendete Ebene. Ebenso ist der Ausgabeknotenwert betroffen, Berechnungen von den Werten der Knoten in der zweiten verborgenen Schicht.

Hättest du gedacht, dass die Antwort „keine“ lautet? denn keiner der Knotenwerte im Netzwerk geändert, als Sie den Wert für die Gewichtung geändert haben? Beachten Sie, dass eine zugrunde liegende Die Berechnung für einen Knoten kann sich ändern, ohne den Wert des Knotens zu ändern (z.B. ReLU(0) und ReLU(–5) erzeugen beide eine Ausgabe von 0. Treffen Sie keine Annahmen darüber, wie das Netzwerk allein durch sich die Knotenwerte ansehen. sollten Sie sich auch die Berechnungen ansehen.

Übung 2

In den Übungsvarianten im Modul Kategoriale Daten haben Sie manuell Featureverknüpfungen für nicht lineare Daten erstellt. Können Sie ein neuronales Netzwerk aufbauen, das automatisch wie nicht lineare Daten während des Trainings angepasst werden.

Aufgabe:Konfigurieren Sie ein neuronales Netzwerk, das die orangefarbenen Punkte von den den blauen Punkten im Diagramm unten, sodass auf beiden Seiten ein Verlust von weniger als 0,2 die Trainings- und Testdaten.

Instructions:

Im interaktiven Widget unten:

  1. Die Hyperparameter des neuronalen Netzwerks durch Experimentieren mit einigen der folgenden Konfigurationseinstellungen: <ph type="x-smartling-placeholder">
      </ph>
    • Sie können ausgeblendete Ebenen hinzufügen oder entfernen, indem Sie auf die Schaltflächen + und - links neben der Überschrift AUSGEBLENDETE SCHICHTEN im Netzwerkdiagramm.
    • Sie können Neuronen einer ausgeblendeten Ebene hinzufügen oder daraus entfernen, indem Sie auf die Schaltflächen + und - klicken. über einer Spalte mit ausgeblendeter Ebene.
    • Ändern Sie die Lernrate, indem Sie einen neuen Wert aus der Lernrate auswählen über dem Diagramm.
    • Ändern Sie die Aktivierungsfunktion, indem Sie einen neuen Wert aus der Aktivierung über dem Diagramm.
  2. Klicken Sie über dem Diagramm auf die Schaltfläche „Play“ (▶️), um das neuronale Netzwerk zu trainieren mit den angegebenen Parametern.
  3. Visualisierung des Modells beobachten, das zu den Daten als Training passt sowie den Fortschritt Testverlust und Werte für Trainingsverlust in Bereich Output (Ausgabe)
  4. Wenn das Modell bei den Test- und Trainingsdaten keinen Verlust unter 0,2 erzielt, klicken Sie auf „Zurücksetzen“ und wiederholen Sie die Schritte 1 bis 3 mit einer anderen Konfiguration. Einstellungen. Wiederholen Sie diesen Vorgang, bis Sie die gewünschten Ergebnisse erzielen.

Klicken Sie hier, um unsere Lösung aufzurufen.

So konnten wir sowohl den Test- als auch den Trainingsverlust unter 0,2 erzielen:

  • Eine versteckte Ebene mit drei Neuronen wird hinzugefügt.
  • Eine Lernrate von 0,01 wird ausgewählt.
  • Aktivierungsfunktion von ReLU auswählen.