Benutzer-Werkzeuge

Webseiten-Werkzeuge


lernen_in_hopfield-netzen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
lernen_in_hopfield-netzen [2024/01/21 14:47] – [Die Gewichtsmatrix] torsten.roehllernen_in_hopfield-netzen [2024/01/21 15:01] (aktuell) – [Wiedererkennen eines gespeicherten Musters] torsten.roehl
Zeile 36: Zeile 36:
   * **Das Gewicht $w_{ij}$  ist  das Produkt aus der i-ten Komponente des Vektors mit der j-ten Komponente der Vektors.**   * **Das Gewicht $w_{ij}$  ist  das Produkt aus der i-ten Komponente des Vektors mit der j-ten Komponente der Vektors.**
  
-Wir berechnen als Übung das Gewicht $w_{23}$  des ersten Musters. Es gilt: $w_{23} = x_2 \cdot x_3  = (-1)  (1) = -1$. \\ \\ Nach diesem Prinzip ergeben sich somit zuerst die beiden Matrizen $W_1$  und $W_2$+Wir berechnen als Übung das Gewicht $w_{23}$  des ersten Musters $V_1$. Es gilt: $w_{23} = x_2 \cdot x_3  = (-1)  (1) = -1$. \\ \\ Nach diesem Prinzip ergeben sich somit zuerst die beiden Matrizen $W_1$  und $W_2$
  
  
Zeile 46: Zeile 46:
  
 \begin{equation} \begin{equation}
-W_2=\begin{pmatrix} w_{11}  w_{12} &  w_{13} &  w_{14}   \\\  w_{21} &  w_{22}  w_{23}  w_{24}\\\ w_{31}  w_{32}  w_{33}  w_{34} \\\ w_{41}  w_{42}  w_{43}  w_{44}  \end{pmatrix}+W_2=\begin{pmatrix} &  -1 &  -1   \\\  &  -1 -1\\\ -1 -1 1\\\ -1 -1  \end{pmatrix}
 \end{equation} \end{equation}
  
Zeile 53: Zeile 53:
  
 \begin{equation} \begin{equation}
-W=\begin{pmatrix} w_{11}  w_{12} &  w_{13}  w_{14}   \\\  w_{21}  w_{22} &  w_{23}  w_{24}\\\ w_{31}  w_{32}  w_{33}  w_{34} \\\ w_{41} &  w_{42}  w_{43}  w_{44}  \end{pmatrix}+W=\begin{pmatrix} &  -2 \\\  &  -2 0\\\ -2 \\\ -2 &   \end{pmatrix}
 \end{equation} \end{equation}
  
Zeile 63: Zeile 63:
  
 =====  Wiedererkennen eines gespeicherten Musters===== =====  Wiedererkennen eines gespeicherten Musters=====
 +
 +
 +Wir wollen nun zeigen, das das Netzwerk diese Muster auch wirklich gelernt hat. Dazu präsentieren wir dem Netzwerk das 1. Muster und berechnen die Ausgabe. Da das Netzwerk als autoassoziativer Speicher arbeiten soll, erwarten wir das die Ausgabe des Netzwerks ebenfalls das erste Muster ist.
 +
 +Um die gesamte Netzwerkausgabe zu berechnen müssen folgende Schritte gemacht werden:
 +
 +  * Für jedes Neuron muss die gewichtete Summe berechnen werden.  Dies ist nichts anderes als die Multiplikation der Gewichtsmatrix mit dem Eingabevektor:   $V_{\text{neu}} = W \cdot v$
 +          * Alternativ kann man auch jede Komponente mit der Formel $net_j$ = Σ $w_{ij} \cdot x_i$ berechnen.  Die Matrixschreibweise impliziert genau dies und ist damit nur eine elegante Form der Notation.
 +  * Für jede Komponente des errechneten Vektors ($V_{\text{neu}}$ )   muss mithilfe der Aktivierungsfunktion der neue Zustand berechnet werden.
 +  * Die letzten beiden Punkte müssen so oft wiederholt werden, bis sich das Netz stabilisiert hat, d.h., bis sich keine Änderung des Ausgabemusters mehr ergibt.
 +          * //In der Praxis sollte man bedenken, dass es vorkommen kann, dass sich das Netz nicht entscheiden kann, und es somit zwischen zwei verschiedenen Mustern oszilliert.
 +//
 +=== Für das Beispiel erhalten wir ===
 +
 +  - $V_{\text{neu}}  = W \cdot v = \{2,-2,2,-2\}$
 +  - für jede dieser Komponenten ergibt die Aktivierungsfunktion nun {1,-1,1,-1}. Dies ist aber der Vektor (das Muster) v1, womit gezeigt wurde,  dass das Netz das Muster wiedererkannt hat.
 +
 +
 +{{:inf:uebung.gif?|}} **Rechnen Sie nach, ob das Netzwerk auch das 2. Muster richtig erkennt.**
  
  
  
lernen_in_hopfield-netzen.1705848457.txt.gz · Zuletzt geändert: 2024/01/21 14:47 von torsten.roehl