Learning Laws: Self Adaption Equations 1. Definitionen In diesem Kapitel werden 5 klassische Lernregeln vorgestellt. Diese Regeln werden als Gleichungen dargestellt, die in der Transferfunktion des Processing elements verwendet werden können. 1.1. Die Informationsumgebung Ein neuronales Netz arbeitet immer in einer bestimmten globalen Informationsumgebung (sehr häufig als Dichtefunktionen dargestellt) von der dann für jedes Processing element eine lokale Informationsumgebung abgeleitet wird. Ziel ist es nun in einer Lernphase die Processing elements ihrer lokalen Informationsumgebung anzupassen. 1.2. Gewichte Lernen wird meist dadurch erreicht, indem die Gewichte in den einzelnen Processing elements modifiziert werden (Gewichtstraining). Für das Modell des Prozeß der Gewichtsmodifikation nehmen wir vereinfachend folgendes an: Das neuronale Netz hat N Processing elemente Jedes Processing element hat n Gewichte Das Schlüsselkonzept ist die Idee eines Gewichtsvektors für das gesamte Netzwerk. Dabei werden ganz einfach alle Gewichte aller Processing elements miteinander verknüpft. Der Vorteil w als Vektor aller Gewichte zu betrachten liegt darin, daß dann die Menge aller möglichen Gewichtsvektoren, die Menge aller möglichen Konfigurationen der Informationsverarbeitungen für das neuronale Netz bestimmt. Irgendein Vektor dieser Menge an Vektoren liefert dann die gewünschte Informationsverarbeitungsleistung. Für neuronale Netze die Gewichtstraining verwenden, liegt nun die Herausforderung darin, eine Lernregel zu entwickeln die einen Vektor w findet, der dann die gewünschte Netzwerkleistung erbringt. Um eine gewünschte Netzwerkleistung zu erreichen gibt es verschiedenste Zugänge: Beispiele für Lernkategorien Beim Performance Learning werden Funktionen wie der MSE (Beurteilungskriterium für die Güte eines Schätzers), Energieverbrauch, Reingewinn oder Klassifizierungsfehler in der Clusteranalyse maximiert oder minimiert. Bei Lernmethoden die zur Filter Learning Kategorie gehören, wird wiederum danach getrachtet Funktionen wie zum Beispiel den Mittelwert eines Inputsignales über einen bestimmten Zeitraum hinweg zu lernen. Lernregeln die zur Kategorie Coincidence Learning gehören, verändern die Gewichte als Antwort auf bestimmten Ereignisse. Dies geschieht immer dann, wenn zwei Ereignisse innerhalb eines „processing elements“ zusammenstoßen. Ein weiteres Merkmal dieser Lernmethoden ist, daß sie ausschließlich lokalen Charakter besitzen. 1.3. Auf welche Arten können Systeme trainiert werden? Grundsätzlich findet die Anpassung eines neuronalen Netzes immer gemäß einer Trainingsmethode statt. Man kann 3 allgemeine Trainingsarten unterscheiden: Supervised Learning (Überwachtes Lernen) Dem neuronalem Netz werden sowohl Input- als auch korrekte Outputinformationen zur Verfügung gestellt. Gerhard Schindlauer, 8973806 1/4 Werstatt Informatik II, 2000 Learning Laws: Self Adaption Equations Graded Learning (Bewertetes Lernen) Der korrekte Output wird dem Netzwerk nicht präsentiert, sondern muß vom Netzwerk selbst bestimmt werden. Dem Netz wird nur zu bestimmten Zeitpunkten der Trainingsläufe gesagt ob es gut oder schlecht klassifiziert hat. Diese Art von Netzwerk wird sehr oft für die Ausführung von Optimierungsproblemen verwendet. Self organized Learning (Zufälliges Lernen) Hier erfolgt weder eine Eingabe von korrekten Outputwerten, noch Qualitätsangaben. Obwohl diese Methode sinnlos erscheint, findet sie häufig ihre Anwendung. (zB.: Schätzen von Dichtefunktionen, Clustern) 2. Coincidence Learning Die Idee des zufälligen Lernens basiert auf einem 1949 erschienen Artikel des Psychologen Donald Hebb, in welchem er einen plausiblen Mechanismus für das Lernen auf der Ebene der Gehirnzellen veröffentlichte. Er hatte die Vorstellung (die sich später als richtig erwies), daß ein Signal, daß auf ein Neuron trifft durch die Synapse (welche die Verbindung zwischen 2 Neuronen darstellt) verstärkt wird damit das Neuron gleich wieder einen Impuls aussenden kann. Das Neuron ist quasi eine Prozessoreinheit, die die Fähigkeit besitz, elektrische Signale in Abhängigkeit von der Eingabe auszusenden. 2.1. The Linear Associator Dieses Bild zeigt eine neuronale Netzwerkarchitektur, die man Linear Associator nennt. Dem Netzwerk wird n ein Vektor x aus dem R übergeben und das Netzwerk berechnet den Outputvektor y durch die Formel y W x . (oder: lineare Abbildung aus dem in den Rn Rm ) Bevor man aber y berechnen kann muß das neuronale Netz trainiert werden. Die Idee dabei ist, daß das Netzwerk zunächst mit L Input/Outputpaaren x1 , y1 ...xL , yL versorgt wird und auf Basis dessen eine Gewichtsmatrix berechnet wird. Dem Netzwerk wird also gesagt „ist ein Input der Vektor x k , dann ist der Outputvektor y = y k “. Nun muß man eine Regel finden, damit das neuronale Netz den Output y k mit x k assoziiert. Wie wir aus der Formel y W x liegt die Lösung des Problems in der richtigen Wahl von W. 2.2. Hebb´sche Lernregel Nach dem Hebschen Lerngesetz ist wijnew wijold yki xkj oder in Matrixschreibweise Gerhard Schindlauer, 8973806 2/4 Werstatt Informatik II, 2000 Learning Laws: Self Adaption Equations W new W old yk xkT . x k und y k bezeichnen immer ein Vektorpärchen eines Trainingslaufes. Es wird also im k-ten Trainingslauf das Vektorpärchen xk , y k dem Netzwerk übergeben und nach diesem Trainingslauf wird die alte Matrix W um das äußere Produkt von x k und y k erhöht. Zu Beachten gilt es dabei folgendes: 1. Bevor der erste Trainingslauf beginnt sind alle Gewichte = 0 2. Gewichte werden nur in den Trainingsläufen geändert. Da wir die Endmatrix nach L Trainingsläufen als Summe der äußeren Produkte dieser Vektorpärchen der einzelnen Trainingsläufe schreiben können: W y1 x1T y2 x2T ... yL xLT oder W Y * X können wir daraus schließen, daß Wx den korrekten Output liefert, wenn die Vektoren {x1....xL} orthonormal sind. (Beweis über Kroneckerdelta). Sind die Vektoren nicht orthonormal, dann erhält man bei der Konstruktion von y k durch Wxk einen Fehler welchen wir minimieren wollen. T Dazu berechnen wir einfach den MSE des Linear Associators der folgendermaßen definiert ist: 2 1 L F (W ) y k Wx k . L k 1 Für W YX wird dieser Fehler minimal, wobei X die Pseudoinverse Matrix von X darstellt. Hinweis: Nicht jede Matrix hat eine Inverse. Jede Matrix hat eine Pseudoinverse. 3. Performance Learning Lernmethoden die zum Perfomance Learning gehören, trachten danach irgendeine Funktion zu maximieren oder minimieren. Das Ziel ist den MSE einer Kostenfunktion zu minimieren. Für diese Lernkategorie werde ich das Widrow-Hoff Lerngesetz vorstellen. Dieses Lerngesetz stellt eines der mächtigsten Lerngesetze dar, da es immer zum optimalen Gewichtsvektor konvergiert, egal bei welchem Punkt man beginnt. Warum wird später erläutert. Zunächst das ADALINE. 3.1. Das ADALINE (ADAptive LInear Element) Das ADALINE ist ein einfaches processing element dem ein Vektor x = (x0, x1, ...xn)T übergeben wird, dann eine reele Zahl y‘ zurückgibt und das die Widrow-Lermethode verwendet. Auch hier sitzt im processing element ein Gewichtsvektor mit w = (w0, w1, ...wn)T. Der zurückgegebene Wert ist einfach y‘ = wT * x. x0 nennt man Bias Input. Er hat immer den Wert 1! Widrow lernen basiert auf der Idee, daß irgendein unbekannter Prozeß Vektoren x * gemäß einer n Wahrscheinlichkeitsfunktion vom R wählt, diesen Vektor mit dem Bias Input versieht und dem Prozeß übergibt, dessen Output dann y ist. Unser Bestreben ist es nun einen Vektor w derart zu generieren, daß wieder der MSE von y‘ und y minimal wird. Gerhard Schindlauer, 8973806 3/4 Werstatt Informatik II, 2000 Learning Laws: Self Adaption Equations Der Versuch einer geometrischen Veranschaulichung: Der Vektor w definiert eine Hyperebene im n dimensionalen Raum der von den x Vektoren aufgespannt wird. Wenn ein Vektor x* auf der Hyperebene liegt die auf w normal steht, dann ist der Output 0. Alle x Vektoren die „unter“ dieser von w definierten Hyperebene liegen, haben einen positiven Output. Jene die „über“ dieser Ebene liegen wir der Output negativ sein. Der Output des ADALINE hängt linear von der Entfernung von x zur Hyperebene w ab! 3.2. Widrows Learning Law Im Folgenden bezeichnet w* jenen Vektor für den der MSE minimal wird (geometrisch: Die Länge des Vektors w wird minimal). Nach einigen Umformungen des MSE F w E ( y k y k ) ' 2 , erkennt man, daß die Abhängigkeit von F auf w quadratisch ist. Diese quadratische Form beschreibt nun eine parabolische Oberfläche die wie eine normale Parabel auch, einen einzigen Talpunkt hat. Manchmal kann es aber auch sein, daß ein degeneriertes Paraboloid vorliegt. Ein solches Paraboloid hat mehrere Wellentäler, die gottseidank alle auf der selben „Minimumhöhe“, nämlich F(w), liegen. Die Funktion findet auf alle Fälle ihr Minimum an einem dieser Punkte. Die Lösung den MSE zu berechnen könnte einfach darin liegen den Gradienten zu berechnen und 0 zu setzen. (Erinnerung: Der Gradient zeigt immer in die Richtung in die man gehen muß um am schnellsten zum Maximum zu gelangen. Außer in w *, dort ist er 0). Für diese Berechnung ergeben sich aber immense numerische Probleme. Deshalb stellten Widrow und Hoff die Überlegung an, an irgendeiner Stelle von w (w 0) zu beginnen und entlang des Paraboloids abwärts ins Minimum gleiten. Da wir ein Paraboloid haben, gibt es keine lokalen Minima um die wir uns kümmern müssen. Um aber „hinunterrutschen“ zu können mußten sie den Gradienten F schätzen. Dies erreichten sie dadurch indem sie die Grenzwertform von F benutzten: 1N w F w w lim yk yk' N N k 1 2 Nachdem sie nun F geschätzt hatten, gelang es ihnen zu zeigen, daß folgendes Gewichtsaktualisierungsgesetz immer gegen w * konvergiert egal wo man beginnt: wk 1 wk k xk . k y k y k' ist dabei die Differenz von korrektem und gewünschten Outputwert und , eine Konstante die durch probieren gesucht wird. Der Vorgang zu finden, erfordert vom Praktiker viel Wissen und Erfahrung. Ist nämlich zu groß konvergiert der Gewichtsvektor nicht. Ist zu klein konvergiert w zu langsam. Alternative Namen für diese Lernregel: Widrow/Hoff learning law LMS learning law (least mean square) Delta Regel Gerhard Schindlauer, 8973806 4/4 Werstatt Informatik II, 2000