Hopfield-Netz

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.
Kein einziger Einzelnachweis. Es sollte z.B. die Arbeit von Hopfield verlinkt werden. --Martin Thoma 13:42, 6. Dez. 2015 (CET)
Hopfield-Netz mit vier "Neuronen"

Als Hopfield-Netz bezeichnet man eine besondere Form eines künstlichen neuronalen Netzes. Sie ist nach dem amerikanischen Wissenschaftler John Hopfield benannt, der das Modell 1982 bekannt machte.

Struktur[Bearbeiten | Quelltext bearbeiten]

Hopfield-Netze gehören zur Klasse der Feedback-Netze (Netze mit Rückkopplung). Bei einem Hopfield-Netz existiert nur eine Schicht, die gleichzeitig als Ein- und Ausgabeschicht fungiert. Jedes der binären McCulloch-Pitts Neuronen ist mit jedem, ausgenommen sich selbst, verbunden. Die Neuronen können die Werte -1 und 1 annehmen, welche den Zuständen „feuert nicht“ und „feuert“ entsprechen.

In Hopfield-Netzwerken sind die synaptischen Gewichte symmetrisch, d. h. es gilt für alle i und j. Dies ist zwar biologisch nicht sinnvoll, erlaubt aber das Aufstellen einer Energiefunktion und die Analyse der Netzwerke mit Methoden der statistischen Mechanik.

Da die Vektoren für die Ein- und Ausgabe gleich lang sind, spricht man auch von einem Autoassoziationsnetz.

Arbeitsweise[Bearbeiten | Quelltext bearbeiten]

Bei der Implementierung eines Hopfieldnetzwerkes stellt sich die Frage, ob die Gewichte der Neuronen synchron oder asynchron geändert werden sollen.

  • synchrone Änderung bedeutet, dass in einem Iterationsschritt alle Neuronen gleichzeitig aktualisiert werden.
  • asynchrone Änderung bedeutet, dass ein Neuron zufällig gewählt und berechnet und der Wert bei der nächsten Berechnung sofort mit berücksichtigt wird.

Asynchrones Ändern des Hopfieldnetzes ist am verbreitetsten.

Musterwiederherstellung mit Hopfieldnetzen[Bearbeiten | Quelltext bearbeiten]

Hopfield-Netze können als Autoassoziativspeicher benutzt werden, um verrauschte oder auch nur teilweise vorhandene Muster zu rekonstruieren. Dies geschieht in drei Phasen:

Trainingsphase[Bearbeiten | Quelltext bearbeiten]

Hier werden dem Netz eine Zahl L von vorgegeben Mustern eingespeichert. Dies geschieht durch Einstellen der synaptischen Gewichte. Gesucht ist also eine geeignete Gewichtsmatrix der Größe N×N, welche symmetrisch ist. Sie kann zum Beispiel in einem Schritt mit folgender Regel berechnet werden, die auch als verallgemeinerte Hebbsche Lernregel bezeichnet wird:

wobei

die Anzahl der zu assoziierenden Muster,
die Anzahl der Dimensionen eines Musters und
die (unüberwachte) Lernaufgabe bezeichnen

Man möchte im Allgemeinen möglichst viele verschiedene Muster in ein Hopfield einspeisen. Jedoch ist die Speicherkapazität nach dem Verhältnis begrenzt.

Eingeben eines Testmusters[Bearbeiten | Quelltext bearbeiten]

Nun gibt man ein Testmuster, zum Beispiel ein verrauschtes oder unvollständiges Bild in das Netz hinein. Hierzu setzt man einfach die Neuronen in den Zustand, der dem Testmuster entspricht.

Rechenphase[Bearbeiten | Quelltext bearbeiten]

Die Neuronen werden asynchron mit folgender Regel aktualisiert:

wobei der Zustand des zu aktualisierenden Neurons und ein Schwellenwert ist.

Das Ergebnis könnte in diesem Fall ein je nach Anzahl der Iterationsschritte mehr oder weniger gut entrauschtes Bild sein. Bis zu einem Verhältnis (Verhältnis einzuspeichernder Muster zu Neuronen des Hopfield-Netzes) garantiert die Hebbsche Regel, dass das System sich nicht mehr ändert, wenn es in einem Zustand angelangt ist, der einem der gespeicherten Muster entspricht. Es lässt sich außerdem zeigen, dass das System immer in einem stabilen Endzustand ankommt.

Folgende drei Endzustände sind denkbar:

  • Das Muster wurde korrekt erkannt.
  • Das invertierte Muster wurde erkannt.
  • Es kann kein Muster erkannt werden, das Netzwerk gelangt in einen stabilen unechten Zustand, der keinem der Muster entspricht.

Beziehung zur statistischen Mechanik[Bearbeiten | Quelltext bearbeiten]

Für das Hopfield-Modell existiert eine Energiefunktion der Form

,

deren Wert, wie sich beweisen lässt, bei jeder Aktualisierung gemäß obiger Regel abnimmt. Nur bei den stabilen Mustern (und den unechten Zuständen) bleibt auch die Energie gleich, diese stellen also lokale Minima der Energielandschaft dar.

Es gibt einen Zusammenhang zwischen dem Hopfield-Modell und dem Ising-Modell, für dessen Energie gilt:

.

Insbesondere zu Spingläsern, bei denen die zufällig verteilt sind, besteht große Ähnlichkeit. So konnte mit Methoden der theoretischen Physik gezeigt werden, dass Hopfieldnetze nur bis zu einem Verhältnis als assoziatives Gedächtnis verwendbar sind.

Weblinks[Bearbeiten | Quelltext bearbeiten]