next up previous contents
Nächste Seite: GLIEDERUNG DER ARBEIT Aufwärts: DIE KETTENREGEL Vorherige Seite: DIE KETTENREGEL   Inhalt

DAS STANDARDBEISPIEL: `BACK-PROPAGATION'.

Der wohl bekannteste durch einfache Anwendung der Kettenregel abgeleitete Lernalgorithmus ist der einführend bereits erwähnte `back-propagation' Algorithmus (im folgenden stets BP genannt). BP wurde 1974 erstmals von Werbos im Kontext der Sozialpsychologie beschrieben [143], fand jedoch seinerzeit wenig Beachtung und fiel daraufhin bis etwa Mitte der 80er Jahre der Vergessenheit anheim. Das Verfahren wurde verschiedentlich wiederentdeckt [46][66] und erfreut sich seit Rumelharts, Hintons und Williams' Veröffentlichung [85] des Rufs des beliebtesten Lernverfahrens für KNN. Die Herleitung des BP-Algorithmus sei in dieser Einführung aus zwei Gründen vorgeführt: (1) In den Kapiteln 3, 4, 5, und 6, werden uns BP-Netze in der Gestalt von Untermodulen umfangreicherer Netzwerkarchitekturen begegnen. (2) BP liefert ein besonders einfaches illustratives Beispiel dafür, daß man mit der Kettenregel im Kontext maschinellen Lernens etwas Vernünftiges anfangen kann.

Ein BP-Netz ist ein azyklisches Netz. Die Anzahl der Lagen im Netz sei mit $l$ bezeicnet. Alle Knoten im Netz seien beliebig durchnumeriert, die Aktivation des $k$-ten Knotens in Antwort auf einen an der Eingabelage anliegende Eingabevektor $x$ (mit $i$-ter Komponente $x_i$) heiße $\phi_k$, wobei $\phi_i = x_i$, falls $i$ Eingabeknoten ist. In der $r$-ten Lage ($r>1$) berechnet sich $\phi_k$ wie folgt:

\begin{displaymath}
net_k = \sum_{l \in ~Lagen~ < r} w_{kl}\phi_l, ~~
\phi_k = f(net_k),
\end{displaymath} (1.3)

wobei $w_{kl}$ das Gewicht der gerichteten Verbindung vom Knoten $l$ zum Knoten $k$ ist, und $f$ eine reellwertige differenzierbare Aktivierungsfunktion darstellt.

Die Zielfunktion $J$ ist in vielen Fällen eine zu minimierende Fehlerfunktion. Häufig wird der durch ein einzelnes Muster $x$ verursachte Fehler $J$ als Summe der Fehlerquadrate (SFQ)

\begin{displaymath}J = \sum_{i~in~Ausgabelage}(\phi_i - d_i)^2\end{displaymath}

gewählt, wobei $d_i$ die gewünschte Ausgabe des $i$-ten Ausgabeknotens bezeichnet. SFQ-Minimierung eignet sich sowohl zur Funktionsapproximation (fast alle BP-Netze werden gewöhnlich zu diesem Zweck eingesetzt) als auch zur Modellierung des Erwartungswertes nicht-deterministischer, teilweise durch die gegenwärtige Eingabe bedingter Ereignisse. Letztere selten ausgeschöpfte Möglichkeit wird im 6. Kapitel eine entscheidende Rolle spielen. Es sei erwähnt, daß entropiebasierte Zielfunktionen wie z.B. das Kreuzentropiemaß (e.g. [44], [131]) eine informationstheoretisch begründete Alternative zu SFQ darstellen.

Was immer die genaue Form der Zielfunktion $J$ auch sein mag - wir nehmen an, daß sie in differenzierbarer Form von der Ausgabe des BP-Netzes abhängt. Den Bemerkungen aus der Einleitung folgend, interessiert uns nun für alle Gewichte $w_{ij}$ der Gradient

\begin{displaymath}
-\frac{\partial J }
{\partial w_{ij}}
=
\delta_i
\frac{\partial net_i }
{\partial w_{ij}}
=
\delta_i \phi_j
\end{displaymath} (1.4)

mit
\begin{displaymath}
\delta_i =
-\frac{\partial J }
{\partial \phi_i}
\frac{\p...
...ial net_i} =
-\frac{\partial J } {\partial \phi_i} f'(net_i).
\end{displaymath} (1.5)

Ist $i$ ein Ausgabeknoten, so gewinnt man den ersten Faktor der rechten Seite von (1.5) sofort durch partielle Ableitung von $J$ nach $\phi_i$. Ist $i$ kein Ausgabeknoten und befindet $i$ sich in Lage $r$, so berechnet sich dieser Faktor mit der Kettenregel (1.2) zu

\begin{displaymath}
\sum_{k~in ~Lagen~> r} w_{ki} \delta_k .
\end{displaymath}

Zur Durchführung eines Iterationsschrittes des Gradientenabstiegsprozesses wird jedes Gewicht $w_{ij}$ gemäß

\begin{displaymath}
w_{ij} = w_{ij} + \triangle w_{ij} =
w_{ij} - \alpha \delta_i \phi_j
\end{displaymath}

geändert, wobei $\alpha$ eine positive Konstante, die sogenannte Lernrate, bezeichnet. Normalerweise ist mehr als ein Eingabemuster zu berücksichtigen - in diesem Fall hat man $w_{ij}$ einfach proportional zur Summe der entsprechenden Gradienten zu ändern (der Gradient einer Summe ist die Summe der Gradienten). Die sogenannte off-line Version von BP spart sich dabei die Ausführung der Gesamtgewichtsänderung bis nach der Präsentation aller Trainingsmuster auf. Im praktischen Einsatz wird findet allerdings häufig eine sogenannte on-line-Version Verwendung, bei der Gewichtsänderungen sofort nach der Präsentation jedes Trainingsmusters durchgeführt werden. Sowohl on-line als auch off-line Version führen bei gegen Null gehendem $\alpha$ einen exakten Gradientenabstieg in $J$ durch. In Anwendungen (bei Lernraten in der Größenordnung von 0.5) erweist sich die on-line Version jedoch häufig als günstiger (siehe [26] für eine theoretische Begründung dieses Sachverhalts).

Einige der zahlreichen in der Fachliteratur anzutreffenden BP-Anwendungen führten in gewissen Domänen zu `state-of-the-art performance' (siehe Einführung). Wie der Rest dieser Schrift jedoch verdeutlichen wird, gehen die Anwendungsmöglichkeiten der Kettenregel weit über BP in azyklischen Netzen hinaus.


next up previous contents
Nächste Seite: GLIEDERUNG DER ARBEIT Aufwärts: DIE KETTENREGEL Vorherige Seite: DIE KETTENREGEL   Inhalt
Juergen Schmidhuber 2003-02-20


Related links in English: Recurrent networks - Fast weights - Subgoal learning - Reinforcement learning and POMDPs - Unsupervised learning and ICA - Metalearning and learning to learn
Deutsche Heimseite