5.5.5 Die

Werbung
5.5.4 Quickprop
Dem Quickprop-Verfahren liegt folgende Heuristik zugrunde:
Man nimmt an, daß ein "Tal" innerhalb der Fehlerfunktion annäherungsweise durch eine nach
oben offene Parabel beschrieben werden kann.
Man verwendet nun Werte F/wi (t  1) , d.h. die Ableitung der Fehlerfunktion nach dem
Gewicht wi zum vorhergehenden Zeitpunkt t  1, die Steigung  F/w i (t) der Fehlerfunktion
in Richtung wi zum aktuellen Zeitpunkt t und die letzte Änderung Δw i des Gewichts, um
daraus den Scheitelpunkt der Parabel, d.h. das erwartete Minimum der Fehlerfunktion, zu
bestimmen und in einem Schritt dorthin zu springen. Da der tatsächliche Verlauf der Fehlerfunktion meist nicht ganz mit der Parabel übereinstimmt, wird man nicht im tatsächlichen
lokalen Minimum der Fehlerfunktion landen, sondern in der Nähe. Da es sich hier aber wie
bei Backpropagation um ein iteratives Verfahren handelt, ist diese Abweichung nicht
schlimm.
F ( wij )
Fehlerfunktion
Scheitel der Parabel
dF / dwi (t  1)  S (t  1)
Minimum der Fehlerfunktion
dF / dwi (t )  S (t )
Δw i (t)
Δw i (t  1)
S  F / wi
wi
Steigung (Ableitung)
der Parabel der lokalen Näherung
der Fehlerfunktion
S (t  1)
S (t )
S(t  1)  0
Δw i (t)
wi t  1
wi
Abb. 5.5/6 Bestimmung des Scheitels der angelegten Parabel anhand
der Steigung an zwei verschiedenen Punkten und ihrem Abstand.
1
Die angenäherte Bestimmung des lokalen Minimums wird dadurch sehr einfach und benötigt
wie Backpropagation nur lokale Informationen eines Neuron
Δ w i (t) 
S(t)
 Δ w i (t  1)
S(t  1)  S(t)
Dabei ist
S(t) 
F
w i (t)
die Steigerung der Fehlerfunktion in Richtung wi zum Zeitpunkt t . Die Herleitung dieser
Formel ergibt sich direkt aus Abb. 5.5/6. Man sieht , wie der Scheitel der Parabel, für den die
Steigung S(t  1)  0 ist, aus den beiden Steigungen S(t  1) und S (t ) und dem Abstand
wi (t  1) berechnet werden kann. Zu bestimmen ist hier lediglich Δwi (t) , für das wegen der
Ähnlichkeit der schraffierten Dreiecke in der Graphik der Ableitung der Parabel die Bedingung gilt
Δw i (t)
S(t)

.
Δw i (t  1) S(t  1)  S(t)
Man beachte, daß der Quotient dieser Gleichung im Prinzip einen veränderlichen MomentumTerm darstellt. Generell lassen sich vier Situationen unterscheiden:
1. Die aktuelle Steigung S( t ) ist kleiner als die vorhergehende Steigung S(t  1) , hat aber
das gleiche Vorzeichen, d.h. S(t)  S(t  1) und sgn (S(t))  sgn (S(t  1)) :
Dann erfolgt die Gewichtsänderung in der gleichen Richtung wie vorher.
2. Die aktuelle Steigung verläuft in der umgekehrten Richtung wie die vorige Steigung
S( t  1) , d.h. ( sgn S(t))  sgn (S(t  1)) :
Dann haben wir ein Minimum übersprungen und sind jetzt auf der anderen Seite des Tales
der Fehlerfunktion. In diesem Fall ergibt der nächste Schritt eine Position zwischen den
beiden vorhergehenden Positionen.
3. Die aktuelle Steigung S( t ) ist gleich der vorhergehenden Steigung, d.h. S( t )  S( t  1) :
Dann würde die Formel einen unendlich großen Schritt liefern bzw. das Simulationsprogramm würde wegen Division durch Null fehlerhaft abbrechen.
4. Die aktuelle Steigung S(t) ist größer als die vorhergehende Steigung mit gleichem Vorzeichen, d.h. S(t)  S(t  1) und sgn (S(t))  sgn (S( t  1)) :
In diesem Fall würde man rückwärts in Richtung eines lokalen Maximums gehen (weil
der Algorithmus dann den Scheitel einer nach unten offenen Parabel sucht).
Zur Lösung des Problems von Situation 3 kann man einen zusätzlichen Parameter  einführen, den sog. Maximalen Wachtumsfaktor. Durch ihn wird über die zusätzliche Bedingung
| Δwi (t) |  μ  | Δw i (t  1 ) |
die Gewichtsänderung auf das max. μ -fache der letzten Änderung beschränkt. Hierbei sollte
 nicht zu groß gewählt werden. Als relativ guter Wert für μ hat sich eine Größenordnung
2
von 1,75 bis 2,25 bewährt. Bei Beginn des Verfahrens oder wenn der vorherige Schritt
| Δw i (t) |  0 ist, muß der Lernprozeß (neu) gestartet werden. Üblicherweise geschieht dies
durch das Standard-Backpropagation
| Δw i (t) |  - η 
F
(t)
 wi
Um die Gewichte nicht zu sehr anwachsen zu lassen, kann Quickprop zusätzlich mit Weight
Decay kombiniert werden.
Das Quickprop-Verfahren ist somit ein iteratives Verfahren zweiter Ordnung zur Bestimmung
des Minimums der Fehlerfunktion eines Feedforward-Netzes, welches sich an das NewtonVerfahren anlehnt. Es wurde 1989 von Scott Fahlman entwickelt. In der Praxis hat es sich als
ein relativ schnelles Verfahren bewährt, wobei wegen der zugrunde liegenden Heuristiken
auch hier Gegenbeispiele existieren. Auch ist der Rechenaufwand für die einzelnen Schritte
viel höher als bei dem Standard-Backpropagation-Verfahren.
3
5.5.5 Die δ - δ und die δ - δ -Regel
Von Jacobs wurden 1988 in Zusammenarbeit mit Sutton folgende naheliegende Vorschläge
zur Verbesserung der Backpropagation-Lernregel gemacht:

Die Lernrate  beeinflußt maßgeblich, wie stark die Gewichte modifiziert werden. Da
aber eine einheitliche Lernrate nicht die, in jeder Dimension unterschiedliche, Krümmungseigenschaft der Fehleroberfläche berücksichtigt, sollte jedes Gewicht eine individuelle Lernrate besitzen.

Jede Lernrate sollte mit der Zeit ihren Wert verändern können, da die Eigenschaften der
Fehleroberfläche in einer Gewichts-Dimension nicht während des ganzen Verfahrens
gleich bleiben.
Dabei sollen die folgenden Heuristiken zur Steuerung der Lernraten benutzt werden:
1. Wenn die Ableitung für ein Gewicht über mehrere aufeinanderfolgende Schritte das
gleiche Vorzeichen hat, wird seine Lernrate erhöht, da die Gewichts-Dimension
dann meist schwach gekrümmt ist.
2. Wechselt die Ableitung für ein Gewicht dagegen in einigen aufeinanderfolgenden
Schritten ihr Vorzeichen, so ist die Fehleroberfläche in der entsprechenden Koordinatenrichtung stark gekrümmt, weshalb die Lernrate verringert wird.
Auch hier lassen sich Situationen konstruieren, bei denen diese Heuristiken nicht zutreffen
und entsprechend dieses Verfahren versagt. Hierzu betrachtet man z.B. eine Oberfläche über
einem zweidimensionalen Raum die ein Tal mit stark gekrümmten Wänden besitzt, das im
45-Winkel zu beiden Koordinatenrichtungen liegt. Von einem Punkt aus, der sich in diesem
Tal (nicht auf dem Grund) befindet, ist dann die Krümmung der Oberfläche in beiden Koordinatenrichtungen stark, so daß nach Jacobs die zugehörigen Lernraten verringert würden.
Besser wäre es dagegen, die Lernraten zu vergrößern, um schneller auf den "Boden" des Tals
zu gelangen.
Wir betrachten zunächst die erste Heuristik, d.h. die Einführung von individuellen Lernraten.

Sei q die Anzahl der Gewichte eines Backpropagation-Netzes (also w  IR q ), dann werden
statt einer Lernrate η derer q (η1 ,, ηq  0) verwendet.
Die neue Lernregel, nach der nun die Gewichte verändert werden, lautet allgemein:
w ineu  w ialt  ηi
F
,
wi
oder - für den Gewichtsvektor des Netzes:
 neu  alt


 alt q

w  w  (η1E1,1 F(w)    ηq E q, qF(w))  w   ηi Ei,i F(w) .
i 1
4
Dabei ist ηi  0 die zu wi gehörende Lernrate und E i,i ist eine q  q Matrix, die nur in der i ten Zeile und Spalte eine 1 trägt und sonst in jeder Komponente Null ist (1  i  q) .
Durch die Verwendung individueller Lernraten wird ein Punkt auf der Fehleroberfläche von
der Lernregel auch bei dieser Modifikation nicht mehr in die Richtung des negativen Gradienten verschoben, so daß kein Gradientabstiegsverfahren durchgeführt wird. Tatsächlich liegt

nun eine Art Koordinatenabstiegsverfahren vor. Dabei wird nicht mehr F(w) direkt mini

miert, sondern für jede Komponente wi von w wird nach dem min w i (F(w)) gesucht.
Im Unterschied zu "normalen" Koordinatenabstiegsverfahren aus der Numerik, bei denen alle

Gewichte nacheinander verändert werden, wurden hier alle Komponenten von w parallel
modifiziert.
Es läßt sich zeigen:
Satz 5.5/1

Sei G : D  IR q  IR differenzierbar für w  interior (D) .

 
Für ein v  IR q gelte G(w)v  0 .
Dann gibt es ein β  0 , so daß



. G(w  α v)  G(w), für alle α  (0, β)
()
Beweis:

Wegen der Differenzierbarkeit von G in w ist



 
G(w  α v)  G(w)
lim
 G(w)v  0 .
α 0
α

Da w  interior (D) , gibt es   0 , so daß


w  α v  D, für alle α  (0, β) .
 
Aufgrund von () kann  dabei so klein gewählt werden, daß aus G ( w)v  0



 

G(w  α v)  G(w)
 G(w)v  G(w) v
α
für alle α  (0, β) folgt.




G(w  α v)  G(w)
 0 für alle α  (0, β)
α
 Behauptung .
5
Mit Hilfe dieses Satzes läßt sich zeigen:
Korollar 5.5/1:
Das oben beschriebene, parallele Koordinatenabstiegsverfahren besitzt die Eigenschaft
der globalen Konvergenz, wenn die Lernraten eine gewisse Schranke nicht überschreiten.
Beweis:
F ist das MSE-Fehlermaß. Es ist bekannt, daß F : IR q  IR differenzierbar in jedem

beliebigen Vektor w IRq ist.


Sei w  IR q beliebig mit F(w)  0 .
T
 
F
 F 
,, η'q
 IR q ,
Sei v   η'1
 w

wq 
1

Dann ist
mit η'1 ,, η'q  0 .
T
q
 F 
   F
 F  
F
 F 
  0 .
 F(w)v  
,,
η'1
,, η'q
  η'i 
 w
  w


w

w

w
i

1
1
q
1
q
i





2
Damit sind die Voraussetzungen für Satz 5.5/1 erfüllt und es gilt:
Es gibt   0 mit



F(w  α v)  F(w) α  (0,β) .


Bemerkung: Ist  F(w)  0, dann ist v  0 und es gilt :



F(w  α v)  F(w) α  IR .
Insgesamt folgt die Behauptung, denn die η'i müssen nur so gewählt sein, daß für ein
α0  (0,β) gilt : ηi  η'i α0 für i  1,, q .


α 0 v ist dann der Vektor, den das Koordinatenabstiegsverfahren von w subtrahiert.
Die δ  δ  Regel
Die Modifizierung der Gewichte erfolgt, wie oben beschrieben, nach der Regel:
w ineu  w ialt  ηi
F
w i
bzw. anders geschrieben durch
w i (t  1)  w i (t)  ηi (t  1) 
 F(t)
w i (t)
6
Dabei ist wi (t) der Wert des Gewichtes wi im Schritt t und ηi (t  1) der Wert der zu wi
gehörenden Lernrate im Schritt t  1 .
Die Herleitung der Lernregel für die Lernratenmodifikation geschieht analog zur Herleitung
der verallgemeinerten δ  Regel:
Die Regel sollen einen Gradientenabstieg auf einer Fehleroberfläche über dem "Lernratenraum" durchführen (die Fehlerfunktion, die durch Lernratenänderungen minimiert werden
soll, ist also  F) . Für eine Lernrate ηi ergibt sich trotzdem die folgende Modifizierungsregel, die wieder die Fehlerfunktion F benutzt:
ηi (t  1)  ηi (t)  Δηi (t)
Δη I (t)  γ
 F(t)  F(t  1)
,
w i (t) w i (t  1)
wobei γ  0 die Schrittweite des Gradientenabstiegs im "Lernratenraum" ist.
Stimmen nun die Vorzeichen zweier (zeitlich) aufeinanderfolgender Ableitungen eines Gewichtes überein, wird dessen zugehörige Lernrate vergrößert (ηi (t )  0) , sonst verkleinert
(ηi (t )  0) .
Die Lernraten-Modifizierungsregel der δ  δ  Lernregel implementiert also zunächst die anfangs beschiebenen Heuristiken
Eine genauere Überlegung zeigt jedoch, daß diese Implementation der Vorschläge wieder
neue Probleme aufwirft:
1. Auf flachen Gebieten der Fehleroberfläche von F sind beide Ableitungen gleichen Vorzeichens und betragsmäßig klein.
Ist ihr Betrag sogar  1 , so ist ihr Produkt noch kleiner. Dadurch wird das Verfahren auf
flachen Gebieten immer langsamer. Abhilfe schafft dann nur noch ein Vergrößern von γ ,
was zu Problemen führt, wenn das Krümmungsverhalten der Fehleroberfläche sich plötzlich ändert.
2. Ein weiteres Problem tritt bei starken Krümmungen auf: Die Ableitungen haben dort möglicherweise betragsmäßig große Werte und unterschiedliche Vorzeichen, so daß
Δηi (t)  0 ist. Dann kann sogar ηi (t  1)  0 sein und wi (t  1) wird in eine falsche
Richtung verschoben. Dies geschieht noch schneller, falls γ groß ist.
Für eine zufriedenstellende Lernraten-Modifikationsregel ist es also nicht ausreichend, die
heuristischen Ideen zur Steuerung der Lernraten zu implementieren. Dies darf nicht auf eine
so kurzsichtige Art und Weise erfolgen, daß die Steuerung aus anderen Gründen versagt.
Daher wird nun ein neuer Ansatz verfolgt, bei dem die Steuerung mit Hilfe einiger zusätzlicher Parameter "überwacht" wird.
7

Die δ  δ  Regel
Auch bei dieser Lernregel sind Regeln zur Modifizierung von Gewichten und Lernraten erforderlich, wobei ebenfalls mit individuellen, variablen Lernraten gearbeitet wird.
Die Gewichtsveränderung erfolgt nach derselben Regel wie bei der δ  δ  Regel. Die Lernraten werden folgendermaßen modifiziert:
ηi (t  1)  ηi (t)  Δηi (t) ,
hierbei ist
κ
, falls


Δη i (t)   φ η i (t) , falls

0
sonst

wobei
δi (t) 

δ i (t  1) δ i (t)  0

δ i (t  1) δ i (t)  0
 F(t)
 w i (t)
und
t


δi (t)  (1  θ)δi (t)  θδi (t  1)  (1  θ) θ jδi (t  j)
j 0
wi (t ) ist ein Gewicht des Netzes im Schritt t ,i (t ) die zugehörige Lernrate und κ, φ, θ sind
Konstanten mit φ, θ  0, 1 und κ  0 .

Die obige Formel zeigt, daß δ i ein exponentiell gewichteter Durchschnitt der momentanen
und aller früheren Ableitungen für wi ist.

Je "älter" eine frühere Ableitung ist, desto geringer ist ihr Einfluß auf δi (t ) ; da θ  0, 1 .

Die δ  δ  Regel realisiert die Heuristiken wie folgt:

Die δ  δ  Regel realisiert die Verbesserungsvorschläge wie folgt:
Stimmt das Vorzeichen der momentanen (Schritt t ) Ableitung mit dem des exponentiellen
Durchschnitts bis zum Schritt (t  1) überein (  die Fehleroberfläche ist flach), wird die

Lernrate um eine Konstante κ vergrößert, da in diesem Fall δi (t  1)δi (t)  0 ist.

Ist δi (t  1)δi (t)  0 , sind die Vorzeichen unterschiedlich (  die Fehleroberfläche ist stark
gekrümmt) und die Lernrate wird um den  -ten Anteil verringert.
Die Modifikation der Lernraten erfolgt assymetrisch:

Die δ  δ  Regel vergrößert Lernraten linear, womit verhindert wird, daß sie zu schnell zu
groß werden können.
8
Die Lernregel verringert die ηi jedoch exponentiell; dadurch ist gewährleistet, daß immer
ηi  0 gilt und daß die Lernraten schnell verringert werden können. Somit sind bei dieser
Lernregel die Schwächen der δ  δ  Regel nicht vorhanden und tatsächlich liefert sie in der
Praxis sehr zufriedenstellende Ergebnisse.
Der Grad der Verbesserung der Leistungsfähigkeit des Netzes hängt nun wesentlich von der
Setzung für κ ab:

Wird es auf einen zu kleinen Wert gesetzt, können die Lernraten nur langsam wachsen.
Damit liegt wieder das inzwischen bekannte Problem auf flachen Gebieten vor.

Ist κ dagegen zu groß, wird das gesamte Verfahren zu ungenau, da die Lernraten zu
schnell zu groß werden.

Die δ  δ  Regel läßt sich durch zwei weitere Modifikationen noch verbessern:

1. Die δ  δ  Regel kann mit der Momentum-Variante kombiniert werden
2. Die Einführung eines variablen κ im Zusammenhang mit einer geeigneten Steue
rung kann die Leistung der δ  δ  Regel steigern.
Beide Modifikationen lassen sich mit Hilfe von Fuzzy-Controllern realisieren.
9
Herunterladen