Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Perceptrons and the perceptron learning rule

Ähnliche Präsentationen


Präsentation zum Thema: "Perceptrons and the perceptron learning rule"—  Präsentation transkript:

1 Perceptrons and the perceptron learning rule
Artificial Neurons Perceptrons and the perceptron learning rule Sebastian Frühling –

2 Themen: Definition KNN Vorbild aus der Biologie Simple Perceptrons
Training eines Perzeptrons Schwellwerteinheiten Beispiel „ODER-Perzeptron“ Lineare Einheiten Simple Perceptrons sind eine Art der Neuronalen Netze -> deshalb werden wir uns die Definition mal kurz ansehen Wie sieht so ein Simple Perzeptron aus Woher kommt das Perzeptron

3 Definition KNN „[…] a System composed of many simple processing elements operating in parallel whose function is determined by network structure, connecting strengths, and the processing performed at computing elements or nodes “ DARPA Neural Network study, Fairfax, VA: AFCEA International Press 1988 Ein Neuronales Netz ist ein Graph mit Knoten und Kanten, an den ich einen Input anlege und dieser Input zu einem Output führt. Man unterscheidet: - Feed-ForewardNetworks (auch Perzeptrons) - jeder Knoten ist nur mit Knoten aus der nächsten Ebene verbunden, es gibt keine Verbindungen in die vorherige, oder übernächste Ebene es gibt keine Verbindungen innerhalb einer Ebene - ein-Ebenen und Mehrebenen (hier ein 4 Ebenen Netzwerk, 3 versteckte Ebenen) - Rekurente Netzwerke

4 Vorbild aus der Biologie
Biologisches Neuron Künstliches Neuron Das menschliche Gehirn ist auch in weiten Teilen ein FeedForeward Netzwerk 10 – 100 Milliarden Neuronen Im Schnitt ist ein Neuron über die Dentriden mit Synapsen von anderen Neruonen verbunden Bei Ein und Ausgängen ergibt das mind. 100 Bil Verbindungen Max. kann ein Neuron ca Ein- und ebenso viele Ausgangsverbindungen besitzen KNN imitieren die Organisations- und Verarbeitungsprinzipien des menschlichen Gehirns. Menschliches Gehirn ca x langsamer als Computer – man merkt davon aber nix, weil massiv parallel Verarbeitungsschritte mit wenigen Operationen

5 Simple Perceptron ε1 Ziel: ε2 Output = gewünschte Ausgabe ε3 ε4
O = Output Knoten g() = Aktivierungsfunktion wy = Gewicht Input y εk = k-ter Input Keine versteckten Ebenen Ist unter den KNN als einschichtiges „layered FeedForeward Network“ klassifiziert Lineare Einheiten: g(h) = h Nichtlineare Einheiten: z.B. g(h) = sgn(h)

6 Training eines Perceptrons
Hier lernen mit Lehrer im Gegensatz zu lernen ohne Lehrer wird dem Perceptron gesagt welche Lösung man gerne hätte. Beim Lernen ohne Lehrer muß das Perceptron selbstständig klassifizeirungen der Inputs vornehmen… Lineare Separierbarkeit erwähnen!!! Perceptron ist ein spezielles KNN… Lernaparatur… Das Perceptron ist nur für linear Seperierbare Probleme Anwendbar, darunter fallen einfache dinge, wie Logisches OR, AND, aber auf sehr komplexe Dinge wie das erkennen von Gegenständen (hier Buchstaben) – und das Sogar Translationsinvariant. Andere relativ einfache Probleme wie z.B. das logische XOR sind NICHT durch ein einfaches Perceptron lösbar.

7 Schwellwerteinheiten
Simple Perceptrons Schwellwerteinheiten - Threshhold – Units -

8 Schwellwerteinheiten (Threshhold – Units)
Mit: und: SchwellwertFunktion: übersteigt der Schwellwert einen bestimmten wert (Threshhold) dann +1 sonst -1; Beachte: Man kann sgn(h-Theta) auch als sgn(h) auffassen wobei man für h um eine Dimension erhöht, und das Gewicht dieser Dimension gleich |Theta| setzt und das Input-Signal auf -1. Wichtig für später!!! (Ich kann mr mit sgn(h-Theta) eine Dimension sparen ;-) Ausgabe des Pereptrons: -1 bzw. 1 Sum(ai.bi) = a.b a.b = Projektion a auf b G(h) = sign(h) = +1 für h > Thresh -1 sonst

9 Schwellwerteinheiten (Threshhold Units) (2)
Die Projektion des Gewichtsvektors auf den Input-Vektor soll das gleiche Vorzeichen haben, wie die gewünschte Ausgabe Die grenze zwischen +1 und -1 ist also genau die Ebene (Gerade oder Hyperebene wo wε = 0) Die Ebene geht durch den Ursprung, falls kein Schwellwert gegeben Die grenze zwischen +1 und -1 ist also genau die Ebene (Gerade oder Hyperebene wo wξμ = 0) Die Ebene geht durch den Ursprung, falls kein Schwellwert gegeben Die gerade heißt auch „LINEAR SEPERIERBAR“ -> Alle perceptrons können nur linear Seperierbare Probleme lösen

10 Schwellwerteinheiten (Threshhold Units) - OR-Funktion
Ist die OR-Funktion durch ein einfaches Perzeptron darstellbar? Lineare Separierbarkeit 1 x1 x2 x1 || x2 -1 1 0,5 Schönes 2-3 Dimensionales Beispiel… Gut zu Zeichnen Rechnung analytisch… : 0,5

11 Schwellwerteinheiten (Threshhold-Units) - Lösung
2 Möglichkeiten: Lösung ausrechnen und fertig Lösung „lernen“ lassen Lernen = suk. Anpassung der Gewichte

12 Schwellwerteinheiten (Threshhold Units) - Beispiel
ε1 w1 g(h) = sgn(h) ε1 || ε2 ε2 w2 Schwellwert: Θ = 0,5 Initial Gewichte: w1 = 0,5 w2 = 0,7 Wir müssen uns auf einen Schwellwert festlegen: 0.5

13 Ein einfacher Lernalgorithmus
START: Choose any Value for w TEST: Choose an e in F- || F+ If (e in F+) && (w.e – S > 0) goTo TEST If (e in F+) && (w.e - S<= 0) goTo ADD If (e in F-) && (w.e - S < 0) goTo TEST If (e in F-) && (w.e - S>=0) goTo SUB ADD: w := w + e goTo TEST SUB: w := w – e 1 w 1 Unter der Bedingung, dass es eine Lösung gibt (linear Separierbare Probleme) findet das Perzeptron sie (effizient) in einer endlichen Anzahl von Schritten

14 Schwellwerteinheiten (Threshhold-Units) - Beispiel
START: Choose any Value for w TEST: Choose an e in F- || F+ If (e in F+) && (w.e – S > 0) goTo TEST If (e in F+) && (w.e - S <= 0) goTo ADD If (e in F-) && (w.e – S < 0) goTo TEST If (e in F-) && (w.e – S >=0) goTo SUB ADD: w := w + e goTo TEST SUB: w := w – e x1 x2 w1 w2 Σ G(Σ) Δ 0,5 0,7 -1 1 1,5 0,7 -1 1 2,2

15 Schwellwerteinheiten (Threshhold-Units) - Beispiel
TEST: Choose an e in F- || F+ If (e in F+) && (w.e – S > 0) goTo TEST If (e in F+) && (w.e - S <= 0) goTo ADD If (e in F-) && (w.e – S < 0) goTo TEST If (e in F-) && (w.e – S >=0) goTo SUB ADD: w := w + e goTo TEST SUB: w := w – e Die Verschiebung, die normalerweise da wäre, wenn wir das ganze nicht auf 2 Dimensionen vereinfacht vereinfacht hätten…

16 Schwellwerteinheiten (Threshhold-Units) - Beispiel
TEST: Choose an e in F- || F+ If (e in F+) && (w.e – S > 0) goTo TEST If (e in F+) && (w.e - S <= 0) goTo ADD If (e in F-) && (w.e – S < 0) goTo TEST If (e in F-) && (w.e – S >=0) goTo SUB ADD: w := w + e goTo TEST SUB: w := w – e w Das Gewicht wird bei jeder Gewichtsänderung näher an das jeweilige Pattern gebracht

17 Beweis über Konvergenz
Zu zeigen: Falls eine Lösung existiert, so findet sie der Lernalgorithmus in endlicher Zeit Ziel: finde obere Schranke für n (n Anzahl updates) Vorbedingungen: W* ist der Optimal-Gewichtsvektor der Länge 1 W ist unser zufällig gewählter Gewichtsvektor Alle Pattern-Vektoren sind normiert Es gilt: w* 1 Wir nehmen an, es gibt einen optimalVektor w*. Und wir versuchen zu zeigen, dass man den Winkel zwischen wopt und w beliebig klein machen kann. (-> eine Lösung finden…). δ

18 Beweis über Konvergenz
Betrachte Zähler und Nenner getrennt: Zähler: Nach n-maliger Anwendung:

19 Beweis über Konvergenz (2)
Nenner: Nach n-maliger Anwendung:

20 Beweis über Konvergenz (3)
Mit Damit ist gezeigt, daß eine obere Schranke für die Updates des Gewichtsvektors mit endlicher Anzahl von Schritten gefunden wird.

21 Diskriminante D Es gibt eine Möglichkeit die Lösbarkeit von Problemen zu prognostizieren: D < 0  nicht mit einfachen Perzeptron lösbar D > 0  lösbar max(D)  optimales Perzeptron AND Problem: D= 1/sqrt(17) XOR Problem: D= -1/sqrt(3) Einfach gesagt schränkt das den Bereich ein, wo der Lösungsvektor liegen darf (Kegel auf… ents. Cos)

22 Simple Perceptrons Lineare Einheiten - linear Units -

23 Linear Units g ist eine lineare, kontinuierliche und differenzierbare Funktion Ansonsten bleibt alles gleich ;-) Der Vorteil dieser Netze ist, dass eine Kostenfunktion E[w] bestimmt werden kann, die die SystemPerformanz bestimmt. Der Fehler kann somit über Optimierungsfunktionen (wie absteigender Gradient) minimiert werden.

24 Linear Units - Explizite Lösung
Errechnen der exakten Werte; keine sukzessive Verbesserung Nur bei linear unabhängigen !!! Q ist Matrix nxn mit dem Produkt über alle Inputs… Nur anwendbar falls e1 und e2 linear unabhängig ;-(

25 Linear Units - Lernen mit absteigenden Gradienten
Definiere eine Kostenfunktion Im Minimum der Kostenfunktion ist die Ausgabe = gewünschte Ausgabe  suche nach Min E ist normalerweise Positiv und wird null, wenn eine befriedignede Lsg gefunden ist

26 Linear Units – Lernen mit absteigenden Gradienten (2)
Ein kleiner Schritt in Richtung des Minimums: Wenn man das für jede Eingabe extra macht:

27 Zusammenfassung Simple Perceptrons können viele, sehr komplexe Probleme effizient lösen. D.h. aber NICHT, dass sie deshalb auch alle einfachen Probleme lösen können. Wenn es eine Lösung gibt (das Problem ist linear Separierbar), dann findet der Lernalgorithmus des Perceptrons sie mit endlicher Anzahl von Schritten.

28 Simple Perceptrons Danke …


Herunterladen ppt "Perceptrons and the perceptron learning rule"

Ähnliche Präsentationen


Google-Anzeigen