Benutzer-Werkzeuge

Webseiten-Werkzeuge


aufgabenbeispiel

Dies ist eine alte Version des Dokuments!


Aufgabenbeispiel Hopfied-Netz

Um das Hopfield-Netz in Aktion erleben zu können, verwenden wir es als autoassoziativen Speicher von Bildern.

Das Netz soll zuerst eine Anzahl von Bildern speichern. Anschließend soll das Netz dann in der Lage sein, ein verrauschtes, also fehlerbehaftetes Bild, zu rekonstruieren.

Dazu betrachten wir Bilder mit lediglich zwei Farben (binäre Bilder). Die Aktivität der Neuronen wird damit farblich codiert. Beispielsweise könnte weiß für Neuron -1 (inaktiv) und schwarz für Neuron 1 (aktiv) stehen.

Voraussetzungen

  1. Legen Sie die Anzahl der Neuronen \[N = Bildhöhe \cdot Bildbreite \] fest. Wir verwenden Quadratische Bilder, d.h. es gilt Bildbreite = Bildhöhe.
    Beispielsweise könnte N = 64 sein.
  2. Geben Sie Bilder vor, die das Netz speichern soll. Denken sie daran, dass die Speicherkapazität ~ 13% der Netzgröße beträgt. Bei 64 Neuronen sollten nicht mehr als 8 Bilder (Muster alias Vektoren) gespeichert werden. Denken sie auch daran, dass sich die Muster möglichst gut unterscheiden lassen sollten.

Algorithmus (um Bilder zu lernen)

Das Hopfield-Netz ermöglicht es, bei gegebenen Lernmustern (Bildern) die Lernmatrix $W$ direkt zu Berechnen.

  1. Berechnen Sie für jedes zu speichernde Bild$_i$ eine (Einzelbild) Matrix $W_i$, wie im Abschnitt „Lernen in Hopfield-Netzen“ beschrieben.
  2. Berechnen Sie die Lernmatrix W, indem sie alle $W_i$ addieren. i entspricht der Anzahl der zu lernenden Bilder.

Damit ist das Lernen abgeschlossen, denn die Matrix $W$ ist jetzt bekannt.

Vergewissern Sie sich, dass für alle Elemente $W_{ij}$ der Matrix $W$ gilt:

  1. $w_{ii} = 0$, d.h. alle Diagonalelemente sind Null. Kein Neuron hat zu sich selbst eine Verbindung.
  2. $w_{ij} = w_{ji}$, d.h. alle Verbindungen sind symmetrisch. Neuron $i$ ist mit Neuron $j$ mit dem gleichen Gewicht verbunden wie Neuron $j$ mit Neuron $i$.

Algorithmus (um Bilder wieder zu erkennen)

aufgabenbeispiel.1705830250.txt.gz · Zuletzt geändert: 2024/01/21 09:44 von torsten.roehl