Forschungsgruppe Neuronale Netzwerke

Shared by: benbenzhou
Categories
Tags
-
Stats
views:
0
posted:
12/8/2012
language:
Unknown
pages:
25
Document Sample
scope of work template
							                   Backpropagation
        Netze ohne Rückkopplung, überwachtes
        Lernen, Gradientenabstieg, Delta-Regel

               Datenstrom (Propagation)

           Input       hidden       hidden       Output
           Layer       Layer         Layer       Layer

Daten
Input
                                                            Fehler
                                                          Berechnung




                     Fehlerstrom (Backpropagation)
                     feedforward Netze
• Netze ohne Rückkopplungen können stets in die
  Form eines Schichtennetzwerkes gebracht werden,
  wobei aber durchaus Verbindungen eine oder
  mehrere Schichten überspringen dürfen.
• a->b (es gibt einen                    0
  Weg von a nach b
  ist reflexiv und anti-
  symmetrisch, also                    1
  können die Schichten
  z.B. nach dem längsten
  Weg aufgebaut werden.            2

                                                      3

Fulda 2009       SoftComputing / Projection Persuit       2
              strenge Schichten-Netze
• Wenn in einem Schichtennetz keine Verbindungen
  existieren, die eine oder mehrere Schichten
  überspringen , spricht man von einem strengen
  Schichtennetz.
• In diesem Fall ist jede                    0
  Schicht durch die Länge
  des Weges zu ihren
  Neuronen gekenn-                         1
  zeichnet.
• Die input-Schicht hat                    2
  Weglänge 0.
• Die Output-Schicht hat                     3
  maximale Weglänge.

Fulda 2009      SoftComputing / Projection Persuit   3
                        einfache Schicht
• Die beiden Neuronen der 2. Schicht beeinflussen
  einander nicht, deshalb können sie voneinander
  getrennt betrachtet werden.




• Bei mehrschichtigen Netzen geht die
  Unabhängigkeit verloren, d.h. sie können nicht so
  getrennt werden.

Fulda 2009       SoftComputing / Projection Persuit   4
                                          - Regel

• wi := a•xi•e
         (Synapsenveränderung)
   –   Schwellwert :   d
   –   Netz-Output :   u = (x1w1+x2w2+x3w3+...+xnwn-d)
   –   erwarteter Output: :    t                     (target)
   –   gemachter Fehler :      e = t-u               (error)
                              x1    x2     x3     x4         ...   ...   xn
   – Lernkonstante : a
                                    w1 w2 w3 w4                          wn




                                                            u d

 Fulda 2009            SoftComputing / Projection Persuit                5
                  - Regel (vektoriell)
• Aktivität der Input-Schicht:
             x = (x1,x2,x3,...,xn,1)
• Gewichtsvektor (einschl. Schwellwert):
             w = (w1,w2,w3,...,wn,-d)
• Aktivität des Ausgabeneurons:
             y = (x•w)
• Fehler des Ausgabeneurons:
             e = t-y
• Gewichtsänderung:
             w := a•e•x

Fulda 2009     SoftComputing / Projection Persuit   6
                                -Regel als Ableitung
     • Perceptron:                                • Fehlergradient:
                                                  • F = (u-t)2 = ((w.x)-t)2
x1           x2         x3     ...        xn
                                                  • F/ wi       = (u-t)2/ wi
     w1
            w2     w3                                      = ((w.x)-t)2/ wi
                                 wn
                                                           = 2.(u-t). '(w.x).xi
                  u                               •    Die Delta-Regel kann also
                                                      interpretiert werden als der
                  u = (w.x)                          Gradientenabstieg mit dem
     • -Regel:                                       (variablen) Lernfaktor
                                                       g = 2. '(w.x)
     • wi = g.(u-t).xi


     Fulda 2009                SoftComputing / Projection Persuit                    7
                       2-layer- Perceptron
• 2-Layer Perceptron                           x1             x2        ...          xm
Input-Vektor    x
Gewichtsmatrix V                    v11       v12                                     vnm


Aktivitätsvektor   y                y1               y2            y3         ...         yn
Gewichtsvektor     w                                w2    w3
                                         w1                                     wn

Output             u                                      u
• y = (V.x)
  u = (w.y)                                        Propagierung


Fulda 2009         SoftComputing / Projection Persuit                                     8
                       2-Layer-Fehler-Gradient
• F = (u-t)2 = (θ(w.y)-t)2
• ∂F/ ∂wi        = ∂(θ(w.y)-t)2/ ∂ wi = ∂(u-t)2/ ∂ wi
                 = 2.(u-t). θ'(w.y). ∂(w.y)/ ∂wi
                 = 2.(u-t). θ'(w.y)yi
•   .   ∂F/ ∂vij   = ∂F/ ∂ yi . ∂yi / ∂ vij
                   = ∂F/ ∂yi . ∂θ(vi. x) / ∂vij (Fehler von Neuron i)
                   = ∂F/ ∂yi . θ'(vi. x).xj
                   = ∂F/ ∂u . ∂u/ ∂yi . θ'(vi. x).xj
                   = ∂F/ ∂u . ∂θ(w.y)/ ∂yi . θ'(vi. x).xj
                   = ∂F/ ∂u . θ'(w.y).wi. θ'(vi. x).xj
                   = 2.(u-t) . θ'(w.y).wi. θ'(vi. x).xj



Fulda 2009               SoftComputing / Projection Persuit             9
                    Multi-Layer-Perceptron
                            (MLP)
• Wie bei 2 Layern können wir auch bei mehr Layern den
  Gradienten schichtweise zurückberechnen, dazu interpretieren
  wir den Output-Fehler von Neuron j als
  ej = ∂F/ ∂xj
  d.h. für ein Output-Neuron j : ej = 2(uj -tj)
• Wir betrachten nun zwei aufeinanderfolgende Layer



                          ...              i




                                    wi k
                                k              ...


Fulda 2009           SoftComputing / Projection Persuit          10
                                MLP Fehlergradient
• Die Aktivität von Neuron j sei aj und sein Output xj = 3(aj)
• wik bezeichnet die Verbindung von Neuron i zu Neuron k
• für ein verborgenes Neuron i gilt dann die Rekursion:
•    ei      = ∂F/ ∂xi
             = ∑k ∂F/ ∂xk. ∂xk/ ∂xi (alle Neuronen k aus der nächsten Schicht)
             = ∑k ek. ∂θ(∑jwjk.xj) / ∂xi
•    ei      = ∑k wik.ek. θ'(ak) .
•    ∂F/ ∂wik         = ∂F/xk. ∂xk / ∂wik
                      = ek. ∂ θ(∑jwjk.xj) / ∂wik
•    ∆wik= η.ek. θ'(ak).xi .




Fulda 2009                    SoftComputing / Projection Persuit                 11
                                   Backpropagation
                                     Algorithmus
• fj bezeichne den "echten" Fehler ej.θ'(aj) von Neuron j ,
• Rekursionsanfang:
   für ein Output-Neuron j sei fj = 2(tj -uj). θ'(aj).
• für ein verborgenes Neuron gilt dann die Rekursion:
     fj      = ei. θ'(aj) = ∑k wik.ek. θ'(ak). θ'(aj)
   fj = θ'(aj). ∑k wik.fk
  (Rückpropagierung des Fehlers) .
• Gewichtsanpassung
     ∆wik = ek. θ'(ak).xi
     ∆wik = η.fk.xi .
• wi,neu := wi,alt + η.fk.xi


Fulda 2009                   SoftComputing / Projection Persuit   12
                         Outputfunktionen
• Beliebt sind beim Backpropagating Funktionen θ ,
  bei denen sich θ'(x) durch θ(x) ausdrücken läßt, weil
  dann die Aktivität des Neurons zugunsten seines
  Outputs bei der Fehlerberechnung eliminiert werden
  kann.
• Sigmoidfunktion
  y=1/(1+e-sx) hat die Ableitung
  y'=s.(y-y2)=s.y.(1-y)
• Gaußkurve
  y=e-sx2 hat die Ableitung y'= -2. s. x.y
  (in diesem Fall gelingt die Darstellung nicht allein mit
  y= θ(x), sondern es muß auch x hinzugenommen
  werden .


Fulda 2009         SoftComputing / Projection Persuit    13
                          Probleme des BP
• Oszillation in
  engen Schluchten
                                              E
• Stagnation auf
  flachen Plateaus                                       E


• lokale Minima
                                                             E

• Flat Spots ( 3'(aj)  0 )
  kaum Veränderung im
  Training
                                                                 3



Fulda 2009          SoftComputing / Projection Persuit               14
                            Varianten des BP
• Statt des quadratischen Fehlers F=∑k (tk-uk )2 kann auch jede
  andere Fehlerfunktion gewählt werden, bis auf den
  Rekursionsanfang bleibt die Fehler-Rekursion wie vorher.

• Das BP-Verfahren kann durch einen Momentum-Term
   ∆wik = ηek xi + γ∆altwik noch stabiler gestaltet werden.

• Weight Decay: ∆wik = ηek xi - γwik
  dabei wird das γ so eingerichtet, daß in der Summe keine
  Gewichtsvergrößerung eintritt.

• Die Lernkonstanten werden für jede Schicht festgelegt .

• Die Lernkonstanten werden für jedes Neuron festgelegt .

• Die Lernkonstanten werden im Laufe des Trainings dynamisch
  angepaßt.


Fulda 2009            SoftComputing / Projection Persuit          15
                     Manhattan Training
• In dieser Trainingsvariante richtet sich die
  Gewichtsveränderung nicht nach dem Fehler,
  sondern nur nach dessen Vorzeichen.
• Die übliche Regel zur Gewichtsveränderung wird
  ersetzt durch       ∆wi k = η.sgn(ek).xi .
• Dies bedeutet, daß die Fehlerfunktion nicht mehr der
  quadratische Fehler sondern nur noch der lineare
  Fehlerbetrag ist.
• Dieses Verfahren beseitigt die Probleme zu kleiner
  und zu großer Gradienten bei flachen Plateaus bzw.
  steilen Tälern. Allerdings kommt dann der richtigen
  Wahl von η eine tragende Bedeutung zu.


Fulda 2009        SoftComputing / Projection Persuit   16
                              Trägheitsterm
• Das BP-Verfahren kann durch einen Momentum-
  Term
    "wik = aek xi + baltwik ) = l((1-b)ek xi + baltwik )
  noch stabiler gestaltet werden.
• Der Effekt dieses Verfahrens ist, daß bei der
  Gewichtsänderung starke Richtungsänderungen
  erschwert werden (Trägheit) und damit das Verfahren
  verstetigt wird.
• Mit dieser Methode können die Probleme flacher
  Plateaus und steiler Täler gemindert und sogar das
  Entkommen aus nicht zu steilen lokalen Minima
  ermöglicht werden.



Fulda 2009         SoftComputing / Projection Persuit   17
                    Flat Spot Elimination
• Um zu vermeiden, daß der BP-Algorithmus aus flat
  spots (z.B. für sigmoid-Funktion '=(1-) bei sehr
  hoher / niedriger Neuronenaktivität) nicht mehr
  entkommt, kann man ' durch '+e , e>0 ersetzen.
• Damit ist der Gradient auch an flat-spots nicht ganz 0
  und ein Trainingseffekt tritt auch an dieser Stelle ein.
• Für kleine Netze ist ein guter Effekt mit e = 0.1 erzielt
  worden, ob diese Methode aber auf sehr großen und
  vielschichtigen Netzen noch positive Wirkung zeigt ist
  noch nicht untersucht worden.



Fulda 2009         SoftComputing / Projection Persuit    18
                              Weight Decay
• Ähnlich wie extreme Neuronenaktivitäten sind auch
  extreme Gewichtswerte in Neuronalen Netzwerken
  problematisch, weil sie tendenziell die gesamte
  Netzumgebung dominieren (Großmutter-Neuronen).
• Der Vorschlag, die Gewichtsänderung auf Kosten
  des Gesamtgewichts durchzuführen
         wik = aek xi - gwik
  führt zu einer Bestrafung zu hoher Gewichte, weil
  dies der abgewandelten Fehlerfunktion entspricht:
         Eneu = E + g/2 w2
• g wird in der Regel konstant zwischen 0.005 und
  0.03 gewählt, bisweilen aber auch (aufwendig und nicht mehr
  lokal !) so, daß die Summe aller Änderungen 0 ergibt:
  g=aSekxi/Swik.
Fulda 2009          SoftComputing / Projection Persuit      19
                                      SuperSAB
• Manche Mängel (kleine Änderungen in oberen Schichten) von
  BP können dadurch behoben werden, daß man den einzelnen
  Verbindungen eigene Schrittweiten aij gibt.
     – aij jeweils konstant aber mit Distanz vom Output wachsend
     – aij schrumpft oder wächst jeweils um den Faktor k-, k+ (0<k-
       <1< k+) je nachdem, ob der Fehlergradient das Vorzeichen
       wechselt oder nicht.
       Typische Werte sind 0.5 und 1.05, insbesondere k-. k+<1.
     – aij schrumpft oder wächst jeweils um den Faktor k-, k+ (0<k-
       <1< k+) je nachdem, ob der Fehlergradient absolut wächst bzw.
       das Vorzeichen wechselt oder nicht.
     – Delta-Bar-Delta-Regel
       aij schrumpft oder wächst je nachdem, ob der Fehlergradient
       das Vorzeichen wechselt oder nicht, dabei schrumpft aij
       exponentiell aber wächst nur linear.



Fulda 2009             SoftComputing / Projection Persuit         20
                                     höhere Verfahren

•   Second-Order:
    Verwendung höherer Verfahren mit Hilfe der zweiten Ableitung (Jakobi-Matrix)
    führt zu beschleunigter Konvergenz aber höherer Anfälligkeit für lokale Minima.


•   Quickprop:
    ist ein Beispiel für ein Verfahren 2. Ordnung.
    Gesucht: Tiefpunkt der an der Fehlerfläche angelegten Parabel mit Steigung
    S= ek θ'(ak) xi (Vorsicht bei Salt=S!)
     wik = (S/(Salt-S)). Δ altwik .


•   y=c(x-a)2+b , y'=2c(x-a)
    s-s = 2c(x-x) , x-x = Δaltwik                                               s
    s=2c(x-a), x-a= Δwik                                                    s

                                                                    (a,b)

Fulda 2009                     SoftComputing / Projection Persuit                   21
                             Quickprop-Formeln
• S= ek θ'(ak) xi           // aktuelle Steigung
   m>0                    // Schranke für die Gewichtsänderung
• Δwik = G + P              // Gradienten- und Parabel-Term
• G = αek xi + βwik falls Δaltwik=0 oder sgn(Salt)=sgn(S)
    = 0                 sonst.
• P= 0                               falls Δaltwik=0
    = (S/(Salt-S)). Δaltwik          falls |S/(Salt-S)| <= m
    = m. Δaltwik                     sonst
•   Der letzte Fall tritt insbesondere dann ein, wenn Salt=S ist, also die
    Berechnung S/(Salt-S) auf einen Divisionsfehler führt. Dies muß also
    vorher abgefangen werden.




Fulda 2009                SoftComputing / Projection Persuit                 22
                  Selbstorganisiertes BP
• In dieser Variante werden Outputs der redundanten
  Form (1,0..0), (0,1,0..0) ... (0..0,1) angestrebt.
• Zu den Trainingsdaten gibt es keine Soll-Outputs,
  sondern für jeden Input wird als Soll-Output derjenige
  angenommen, der dem Ist-Output am nächsten
  kommt, dies läuft auf die Bestimmung des Maximums
  im Ist-Output hinaus.
• Zu diesem Output wird dann der übliche Fehler
  berechnet und das übliche Backpropagating in Gang
  gesetzt.
• Dieser Zugang hat den Vorteil, daß eine Eingabe, die
  keinen zu einem (0,..1,..0) ähnlichen Output liefert
  sofort als nicht bestimmbar erkannt wird.

Fulda 2009        SoftComputing / Projection Persuit   23
                     Netze mit Zuständen
 Zeitrepräsentation in NN
       durch Zustände
                                  Jordan / Elman-Netze
• Zeitabhängigkeiten sind
  modellierbar durch                                                                     Inputs
  weitere Neuronen
                                                         Kontext
  (Zustände, Kontext) die
  den bisherigen                                    x1              x2             ...            xm
  Netzzustand speichern.
• Die Speicherung in                     v11       v12                                             vnm
  Zuständen erfolgt durch
  nichttrainierbare                      y1               y2             y3              ...
  Rückwärtsverbindunge                                                                                 yn
  n                                           w1
                                                         w2        w3
                                                                                           wn
• kein Einschwingen in
  sta-bilen Zustand                                            u1             u2
  erforderlich
                                     festes Gewicht
Fulda 2009          SoftComputing / Projection Persuit                                            24
                                                   Zustandsbestimmung
        • Kurzzeitgedächtnis                                           • Langzeitgedächtnis


        Inputs                                                                  Inputs
                                                   Kontext                                                                 Kontext
y1              y2               y3          ...              yn        y1              y2               y3          ...              yn
              v                                                                     v
            v11 12                                                                v11 12
                                                             vnm                                                                      vnm
                                                                                   Kontext
            Kontext
           x1               x2             ...           xm                        x1               x2             ...           xm
                 w12                                                                     w12
          w11          w21                                                        w11          w21
                                                   wm2                                                                     wm2

                       u1             u2                                                       u1             u2

     festes Gewicht                                                          festes Gewicht

      Fulda 2009                                   SoftComputing / Projection Persuit                                            25

						
Related docs
Other docs by benbenzhou
Green Tea Colostrum
Views: 22  |  Downloads: 0
Engr Intro to Engineering
Views: 1  |  Downloads: 0
A BASIC OIL Jojoba Oil
Views: 269  |  Downloads: 0
Palaro_B_030810
Views: 36  |  Downloads: 0
MIT ALOE VERA
Views: 6  |  Downloads: 0