Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#10

Re: Neuronale Netze - Erklärung für 'nen 13-Jährigen gesucht

  Alt 19. Sep 2007, 16:14
Ganz einfach

Du als Kind möchtest spielen gehen. Deine Eltern möchten das du lernst das entweder

- du nicht spielen darfst
- oder du spielen darfst

im 1. Falle versuchtst du spielen zu gehen und bekommst einen Schlag ins Gesicht, das schmerzt, oder du hälst dich an die Ausgangssperre und bekommst Schokolade, das belohnt.

im 2. Fall versuchst du spielen zu gehen und bekommst ein Stückchen Schokolade, das belohnt, oder du gehst nicht spielen und wirst von deinen Eltern rausgeprügelt, das schmerzt.

So ähnlich werden auch neuronale Netze trainiert. Man legt dem Netz verschiedene Input-Möglichkeiten vor und zu jeder dieser Inputs gleichermaßen den gewünschten Output den wir als Lehrer von ihm erwarten. Das Netzwerk wird nun während des Trainings seine Units langsam so anpassen das die richtigen Outputs erzeugt werden wenn bestimmte Inputs anliegen.

In beiden Fälle passt sich das Netzwerk/Kind also den Gegebenheiten adaptiv an.

Das wird meistens durch Backpropagation erledigt, also quasi das Rückwärts-Korregieren ausgehend von den Outputs über die hidden Units zur Inputschicht. Es ist ein geführtes Lernen, also mit einem Trainer der bestimmt was man wie erlernen soll.
Entscheidend dabei ist das der Lehrer bei kausal zusammenhängenden zu erlernden Sachverhalten diese logische Kausalität nicht mißachtet, sprich sich widersprechende Dinge trainiren möchte, sprich einmal Hü und einmal Hot verlangt zu erlernen.

Das passiert auf im Grunde einfache Weise. Es sieht einen Input und berechnet vorwärts den Output auf Grund der aktuellen Units. Dann wird festgestellt wie weit sich der berechnete Output des Netzes sich vom vorgegebenen Outout des Trainers unterscheidet, man beechnet also einen Fehlerwert. Mit hilfe dieses Fehlerwertes werden nun rückwärts alle Units angepasst. Also ein stark falscher Output, hoher Fehlerwert, führt da zu ds bei der Backpropagation die davorliegenden Units stärker in die Gegenrichtung angepasst werden, bzw. genauergesagt werden die Gewichtungen der Verbindungen zwischen den Units angepasst. Quasi die Nervenstränge wie in unserem Hirn (mal so geagt, auch wenn dieser Vergleich unzulässig ist).

Es gibt aber auch Netzwerke die ganz anders arbeiten, zb. Kohonen & SOM. Diese abstrahieren aus einer Menge von Inputdaten eine Matrix aus Gemeinsamkeiten die sich in allen Inputdaten finden lassen und das ist dann der Output.

Gruß Hagen
  Mit Zitat antworten Zitat