Informatik · Klasse 11–13 · aktualisiert
Forward Propagation einfach erklärt und berechnet
Du lernst, wie ein Netz aus Eingaben eine Ausgabe berechnet, rechnest ein Neuron durch und grenzt es von Backpropagation ab.
0 von 10 Aufgaben gelöst
Kurz gesagt
Vorwärtspropagation bedeutet: Die Eingabewerte laufen Schicht für Schicht durch das Netz bis zur Ausgabeschicht. Jedes Neuron bildet eine gewichtete Summe seiner Eingaben und wendet darauf eine Aktivierungsfunktion an. Das Ergebnis ist die Vorhersage des Netzes.
Ein neuronales Netz bekommt Zahlen als Eingabe und gibt eine Vorhersage aus. Der Rechenweg von der Eingabe bis zur Vorhersage heißt Vorwärtspropagation. Wenn du ihn verstehst, kannst du jede Ausgabe eines kleinen Netzes selbst nachrechnen. Außerdem siehst du, warum zum Lernen noch ein zweiter, rückwärts laufender Schritt gebraucht wird.
Deine Lernziele
Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Mela das Ziel für dich ab.
4 Abschnitte
Ein künstliches neuronales Netz besteht in der Regel aus mehreren Schichten von künstlichen Neuronen. Die erste Schicht heißt Eingabeschicht, die letzte Ausgabeschicht. Dazwischen liegen möglicherweise eine oder mehrere versteckte Schichten.
Bei der Vorwärtspropagation (englisch Forward Propagation) werden die Eingabewerte durch das Netz geleitet, um Vorhersagen zu erzeugen. Die Signale wandern von der Eingabeschicht zur Ausgabeschicht. Jedes Neuron in den versteckten Schichten und in der Ausgabeschicht berechnet eine gewichtete Summe seiner Eingangswerte. Diese Summe schickt es durch eine Aktivierungsfunktion. Das Ergebnis ist der Ausgangswert des Neurons.
In einem Multi-Layer-Perzeptron ist jedes Neuron einer Schicht mit jedem Neuron der nächsten Schicht verbunden. In einem reinen feedforward-Netz („feedforward“ ist englisch für „vorwärts“) werden die Neuronenausgaben nur in Verarbeitungsrichtung weitergeleitet. Sie werden nicht zurückgeführt.
Definition
Vorwärtspropagation
Der Prozess, bei dem die Eingabewerte durch das Netz propagiert (weitergegeben) werden, um Vorhersagen zu erzeugen. Jedes Neuron bildet dabei eine gewichtete Summe und wendet eine Aktivierungsfunktion an.
Teste dich
Ein einzelnes künstliches Neuron rechnet in drei Schritten. Schritt 1: Jede Eingabe wird mit ihrem Gewicht multipliziert. Schritt 2: Die Produkte werden aufsummiert. Das Zeichen Σ steht für „alles zusammenzählen“. Du erhältst die gewichtete Summe x₁·w₁ + x₂·w₂ + … . Von ihr ziehst du den Schwellenwert θ ab: v = gewichtete Summe − θ.
Schritt 3: Die Aktivierungsfunktion macht aus v die Ausgabe. Bei der Schwellenwertfunktion gilt: Die Ausgabe ist 1, wenn v ≥ 0 ist, sonst 0. Das Neuron kennt dann nur „an“ oder „aus“.
In einem Netz geschieht das Schicht für Schicht. Die Eingaben eines Neurons können von außen kommen oder aus den Ausgaben anderer Neuronen stammen. Jedes Neuron hat ein Gewicht für jede Verbindung zu den Neuronen der vorherigen Schicht. Die Ausgaben der ersten Schicht sind also die Eingaben der nächsten Schicht. So geht es weiter bis zur Ausgabeschicht.
Beispiel: Ein Neuron, das „und“ rechnet
- 1Eingaben x₁ = 1 und x₂ = 1, Gewichte w₁ = 1,0 und w₂ = 1,0, Schwellenwert θ = 1,5
- 2Gewichtete Summe: 1,0 · 1 + 1,0 · 1 = 2,0
- 3Schwellenwert abziehen: 2,0 − 1,5 = 0,5
- 40,5 ≥ 0, also ist die Ausgabe 1
- 5Bei x₁ = 1 und x₂ = 0 gilt: 1,0 − 1,5 = −0,5, also Ausgabe 0
Merke: Erst multiplizieren und aufsummieren, dann den Schwellenwert abziehen, dann die Aktivierungsfunktion anwenden. Die Ausgaben einer Schicht sind die Eingaben der nächsten.
Teste dich
Das Gewicht gehört zu einer Verbindung. Es bestimmt, wie stark die zugehörige Eingabe in die Rechnung eingeht. Je nach Vorzeichen kann eine Eingabe hemmend oder erregend wirken. Ein Gewicht von 0 markiert eine nicht existente Verbindung. Die Gewichte sind die Parameter des Netzes, sie werden beim Training angepasst.
Der Schwellenwert θ verschiebt die gewichteten Eingaben. Bei der Schwellenwertfunktion wird das Neuron nur aktiviert, wenn der Schwellenwert überschritten ist. Statt θ einzeln anzugeben, nimmt man oft einen Bias: einen konstanten Eingang mit dem Wert 1 und einem eigenen Gewicht w₀ = −θ. Der Bias ist also der Schwellenwert mit umgekehrtem Vorzeichen.
Die Aktivierungsfunktion macht aus der gewichteten Summe die Ausgabe des Neurons. Sie sorgt für Nichtlinearität, denn nicht alle Aufgaben neuronaler Netze lassen sich mit linearen Funktionen lösen. Lineare Funktionen sind für mehrschichtige Netze nicht geeignet: Hintereinandergeschaltet ergeben sie wieder nur eine einzige lineare Funktion. Beispiele sind die Schwellenwertfunktion (0 oder 1), die Sigmoidfunktion (Ausgabe zwischen 0 und 1) und die ReLU-Funktion max(0, v). In den verdeckten Schichten wird meist ReLU verwendet.
Definition
Bias
Ein konstanter Eingang mit dem Wert 1 und einem eigenen Gewicht w₀. Er ersetzt den Schwellenwert: Es gilt w₀ = −θ.
| Baustein | Aufgabe |
|---|---|
| Gewicht | Bestimmt den Einfluss einer Eingabe auf das Neuron |
| Schwellenwert / Bias | Verschiebt die gewichtete Summe |
| Aktivierungsfunktion | Macht aus der Summe die Ausgabe und sorgt für Nichtlinearität |
Teste dich
Die Vorwärtspropagation berechnet aus den Eingaben die Vorhersage des Netzes. Die Backpropagation (Fehlerrückführung) ist dagegen ein verbreitetes Verfahren zum Einlernen künstlicher neuronaler Netze. In der einfachen Form gehört sie zu den überwachten Lernverfahren, es gibt also einen Zielwert.
Beim Training läuft es so ab: Ein Eingabemuster wird vorwärts durch das Netz propagiert. Die Ausgabe wird mit der gewünschten Ausgabe verglichen. Die Differenz wird als Fehler des Netzes erachtet. Dieser Fehler wird dann von der Ausgabeschicht zur Eingabeschicht zurück propagiert. Dabei werden die Gewichte abhängig von ihrem Einfluss auf den Fehler geändert. So lässt sich der Fehler verringern.
Beide Schritte gehören zusammen: Während des Trainings werden die Vorwärtspropagation und der Backpropagation-Algorithmus wiederholt ausgeführt. Die Vorwärtspropagation liefert die Vorhersage, die Backpropagation verbessert die Gewichte.
| Frage | Vorwärtspropagation | Backpropagation |
|---|---|---|
| Richtung | Von der Eingabe- zur Ausgabeschicht | Der Fehler läuft von der Ausgabe- zur Eingabeschicht |
| Ergebnis | Ausgangswerte, also Vorhersagen | Angepasste Gewichte, je nach Einfluss auf den Fehler |
| Einsatz | Erzeugt Vorhersagen, auch im Training | Dient dem Einlernen im Training |
Merke: Vorwärts wird die Vorhersage berechnet, rückwärts wird der Fehler zurückgeführt, um die Gewichte zu verbessern.
Teste dich
Alles auf einen Blick
Forward Propagation
Richtung
Bei der Vorwärtspropagation laufen die Werte von der Eingabeschicht über die versteckten Schichten zur Ausgabeschicht.
Rechnung
Eingaben mal Gewichte, aufsummieren, Schwellenwert abziehen, Aktivierungsfunktion anwenden.
Gewicht und Schwellenwert
Das Gewicht bestimmt den Einfluss einer Eingabe, der Schwellenwert (Bias) verschiebt die Summe.
Aktivierungsfunktion
Sie macht aus der Summe die Ausgabe und sorgt für Nichtlinearität.
Abgrenzung
Die Vorwärtspropagation liefert die Vorhersage, die Backpropagation führt den Fehler zurück und passt die Gewichte an.
Musteraufgabe · Schritt für Schritt
Ein kleines Netz durchrechnen (ausgedachtes Beispiel)
- 1Ausgedachtes Netz: 2 Eingaben, 2 versteckte Neuronen A und B mit ReLU, 1 Ausgabeneuron mit Schwellenwertfunktion
- 2Eingaben: x₁ = 2 und x₂ = 1
- 3Neuron A (Gewichte 0,6 und −0,4, Bias −0,5): 0,6 · 2 + (−0,4) · 1 = 0,8; mit Bias 0,8 − 0,5 = 0,3; ReLU: max(0; 0,3) = 0,3
- 4Neuron B (Gewichte 0,5 und 1,0, Bias −1,0): 0,5 · 2 + 1,0 · 1 = 2,0; mit Bias 2,0 − 1,0 = 1,0; ReLU: max(0; 1,0) = 1,0
- 5Ausgabeneuron: Eingaben 0,3 und 1,0, Gewichte 2,0 und −0,5, Schwellenwert θ = 0,5
- 6Gewichtete Summe: 2,0 · 0,3 + (−0,5) · 1,0 = 0,6 − 0,5 = 0,1; minus θ: 0,1 − 0,5 = −0,4
- 7−0,4 < 0, also ist die Ausgabe des Netzes 0
Fehler finden
Prüfe die Aussagen zu einem Neuron mit Schwellenwert (ausgedachtes Beispiel) In einer Zeile steckt ein Fehler. Tippe sie an.
Fehler in Zeile 5Der Schwellenwert wird abgezogen, nicht addiert. Richtig: 0,5 − 1 = −0,5, das ist kleiner als 0, also ist die Ausgabe 0.
Lückentext
Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.
Jedes Neuron bildet zuerst die gewichtete Summe seiner Eingaben und schickt sie dann durch eine . Ein Bias ist ein konstanter Eingang mit dem Wert und einem eigenen Gewicht. Beim Training wird der Fehler zwischen Ausgabe und Zielwert durch alle Schichten propagiert.
Karteikasten
Erst selbst überlegen, dann umdrehen.
Übung mit Feedback