zum Directory-modus

Komponenten

Lernen in Neuronalen Netzen

Wie bereits erwähnt, wird unter Lernen in neuronalen Netzen zumeist die Modifikation der Verbindungsgewichte verstanden, um eine bessere Übereinstimmung zwischen erwünschter und tatsächlicher Ausgabe des neuronalen Netzes zu erhalten. Dies setzt allerdings voraus, dass man angeben kann, was eine erwünschte Ausgabe des Netzes darstellt.

Allgemein unterscheidet man drei Arten des Lernens in neuronalen Netzen:

  1. Überwachtes Lernen (supervised learning)
  2. Bestärkendes Lernen (reinforcement learning)
  3. Unüberwachtes Lernen (unsupervised learning)

Beim überwachten Lernen (supervised learning) gibt ein externer Lehrer zu jedem Eingabemuster der Trainingsmenge das korrekte bzw. beste Ausgabemuster dazu an. Dies bedeutet, dass dem neuronalen Netz immer gleichzeitig ein vollständig spezifiziertes Eingabemuster und das korrekte bzw. optimale, vollständig spezifizierte Ausgabemuster für diese Eingabe vorliegen. Aufgabe des Lernverfahrens ist es, die Gewichte des Netzes so zu ändern, dass das Netz nach wiederholter Präsentation der Paare von Eingabe- und Ausgabemustern diese Assoziation selbständig vornehmen kann und dies auch für unbekannte, ähnliche Eingabemuster tun kann (Generalisierung). Diese Art des Lernens ist üblicherweise die schnellste Methode, ein Netz für eine Aufgabe zu trainieren. Nachteilig bei diesem Ansatz ist, dass er biologisch nicht plausibel ist, da hier die erwünschten Aktivierungen aller Ausgabeneuronen vorgegeben werden müssen.

Beim bestärkenden Lernen (reinforcement learning) gibt der Lehrer zu jedem Eingabemuster der Trainingsmenge nur an, ob es richtig oder falsch klassifiziert wurde, jedoch nicht die korrekte (beste) Ausgabe. Das Netzwerk muss die korrekte Ausgabe selbst finden. Diese Art des Lernens ist deutlich langsamer als überwachtes Lernen, dafür aber biologisch plausibler.

Beim unüberwachten Lernen (unsupervised learning, self-organized learning) gibt es überhaupt keinen externen Lehrer. Lernen geschieht durch Selbstorganisation, dem Netz werden nur Eingabemuster präsentiert. Durch das Lernverfahren versucht das Netz, ähnliche Eingabemuster in ähnliche Kategorien zu klassifizieren, bzw. sie durch die Aktivierung der gleichen oder räumlich benachbarter Neuronen als ähnlich zu identifizieren. Das bekannteste Beispiel unüberwachten Lernens sind die selbstorganisierenden Karten von Kohonen (self-organizing feature maps, Kohonen feature maps). Diese Art des Lernens, bei der die statistischen Eigenschaften der Eingabemustermenge extrahiert werden, ist biologisch am plausibelsten, ist aber in dieser Form nicht für alle Fragestellungen geeignet, bei denen die anderen Verfahren anwendbar sind.

Überwachtes Lernen

Exemplarisch ist ein sehr einfaches feedforward-Netz dargestellt, welches eine Ziffer in eine der Klassen 0 bis 9 einteilt. Die Ziffer wird in einer 5x7 Pixel Eingabematrix in das Netz eingegeben (je ein Eingabeneuron pro Pixel).

Abb.1
Prinzip überwachter Lernverfahren am Beispiel eines feedforward-Netzes

Ein typisches überwachtes Lernverfahren, wie etwa Backpropagation oder seine Derivate, führt für alle Paare von Eingabemuster und erwünschter Ausgabe folgende fünf Schritte durch:

  1. Präsentation des Eingabemusters durch entsprechende Aktivierung der Eingabeneuronen (input units),
  2. Vorwärtspropagierung der angelegten Eingabe durch das Netz; dies erzeugt ein Ausgabemuster für die aktuelle Eingabe,
  3. Vergleich der Ausgabe mit der erwünschten Ausgabe (teaching input) liefert einen Fehlervektor (Differenz, Delta),
  4. Rückwärtspropagierung der Fehler von der Ausgabeschicht zur Eingabe liefert Änderungen der Verbindungsgewichte, die dazu dienen, den Fehlervektor zu verringern
  5. Änderung der Gewichte aller Neuronen des Netzes um die vorher berechneten Werte.

Mit Variationen im Detail, speziell in den Formeln zur Berechnung der Gewichtsänderungen, ist dieses Schema aber prinzipiell die Grundlage fast aller überwachten Lernverfahren für nichtrekurrente Netze.

Probleme und Fragen überwachter Lernverfahren

Überwachte Lernverfahren haben mit folgenden Problemen zu kämpfen bzw. folgende offene Fragen zu lösen:

  1. Woher kommt die Lerneingabe (teaching input) in biologischen Systemen, etwa beim Menschen, und in welcher Form ist sie verfügbar?
  2. Wie modifiziert man die Gewichte, so dass das Lernen möglichst rasch bzw. sicher funktioniert? Es gibt sehr viele verschiedene Lernverfahren für überwachtes Lernen in der Literatur. Worin unterscheiden sie sich, was ist ihnen gemeinsam?
  3. Welches sind objektive Maße für die Güte von Lernverfahren? Gibt es derartige Kriterien überhaupt?
  4. Welche dieser Lernverfahren sind die besten nach obigen Maßen (falls es allgemein akzeptierte Maße gibt)?
  5. Ist garantiert, dass ein verwendetes Lernverfahren terminiert ist, d.h. dass es nach endlicher Zeit einen optimalen Zustand des Netzes erreicht?
  6. Wie lange dauert das Training eines gegebenen Netzes bei gegebener Zahl von Trainingsmustern? Ist die Zeit zum Training des Netzes praktisch akzeptabel?
  7. Welche Art der internen Repräsentation bildet sich durch das Lernen?
  8. Wie weiß man, ob die gelernten Konzepte mit denen übereinstimmen, die man als Mensch intuitiv annimmt?
  9. Wie verhindert man, dass das Lernen neuer Muster die gelernten alten Assoziationen zerstört? Dies ist das sogenannte Stabilitätsplastizitätsdilemma.

Für diese Fragen kann man zumeist keine allgemeinen Antworten geben, sie müssen für jede Klasse von Netzwerktopologie und jedes überwachte Lernverfahren (jedes Netzwerk-Modell) aufs Neue geklärt werden.

Bestärkendes Lernen (reinforcement learning)

Beim bestärkenden Lernen wird nicht die erwünschte Ausgabe angegeben, sondern nur, ob die Ausgabe richtig oder falsch ist, eventuell noch der Grad der Richtigkeit. Jedoch sind keine Zielwerte für die einzelnen Ausgabeneuronen vorhanden. Das Lernverfahren muss selbst die richtige Ausgabe dieser Neuronen finden. Diese Art Lernverfahren sind neurobiologisch bzw. evolutionär plausibler, weil man einfache Rückkopplungsmechanismen der Umwelt (Bestrafung bei falschen Entscheidungen, Belohnung bei richtigen) bei niederen und höheren Lebewesen beobachten kann. Dagegen haben diese Lernverfahren das Problem, dass sie für Aufgaben, bei denen man die erwünschte Ausgabe kennt, viel länger zum Lernen brauchen als überwachte Lernverfahren, weil sie weniger Information zur korrekten Modifikation der Gewichte zur Verfügung haben.

Unüberwachtes Lernen (unsupervised learning)

Bei unüberwachten Lernverfahren besteht die Trainingsmenge nur aus Eingabemustern, es existieren keine erwünschten Ausgaben oder Angaben, ob das Netz die Trainingsmuster richtig oder falsch klassifiziert hat. Stattdessen versucht der Lernalgorithmus selbständig, Gruppen (cluster) ähnlicher Eingabevektoren zu identifizieren und diese auf Gruppen ähnlicher oder benachbarter Neuronen abzubilden. Bei der derzeit bekanntesten Klasse unüberwachter Lernverfahren, den selbstorganisierenden Karten von Kohonen (s. Bibliographie), werden durch das Lernverfahren die Gewichtsvektoren des Neurons, das zum Eingabevektor am ähnlichsten ist, und seiner Nachbarneuronen dem jeweils anliegenden Eingabevektor noch ähnlicher gemacht. Im trainierten Zustand der selbstorganisierenden Karte werden damit ähnliche Eingabevektoren auf topologisch benachbarte Neuronen abgebildet.

Diese Klasse von Lernverfahren ist biologisch am plausibelsten, man hat derartige topologieerhaltende Karten auch bereits im visuellen Kortex von Säugetieren nachgewiesen. Auch von anderen Teilen des Gehirns weiß oder vermutet man, dass sie eine topologieerhaltende Abbildung realisieren, die durch unüberwachte Lernverfahren aus einer genetisch vorgegebenen, aber nicht vollständig spezifizierten Grundtopologie von Nervenzellen gebildet werden kann.

Mathematisch gesehen extrahiert der Trainingsprozess die statistischen Eigenschaften der Trainingsmenge. Es ist daher meist das Ziel unüberwachter Lernverfahren, eine Abbildung der Eingabemuster auf die Neuronen zu realisieren, die der Wahrscheinlichkeitsdichtefunktion der Verteilung der Eingabemuster entspricht.

Dadurch, dass unüberwachte Lernverfahren ähnliche Vektoren in ähnliche Klassen gruppieren, kann man die mit ihnen trainierten neuronalen Netze auch wieder für Fragestellungen, wie zum Beispiel Klassifikationsprobleme, einsetzen, für die man eigentlich überwachte Lernverfahren verwendet. Man braucht dazu nur eine Menge von Referenzvektoren, deren Abbildung auf die Neuronen man kennt, und kann dann auch unbekannte Trainingsmuster nach ihrer Nähe zum nächsten Referenzvektor klassifizieren.

Bibliographie

Literatur

Kohonen, T. (1984): Self-Organization an Associative Memory. Springer-Verlag
Seite 7 von 7>