• Deutsch (German)
  • English (USA)

Neuronale Netze

Als erstes stehen die Downloadlinks, um es euch Benutzern nicht unnötig schwer zu machen. Anschließend folgen weitere Informationen zu Versionen, Nutzung, dieser Seite, der Entstehung und dem Inhalt des Scriptes.

Download des Skriptums

Download

Skriptum „Ein kleiner Überblick über Neuronale Netze“. Folgende Versionen stehen zur Auswahl:

Manuskripte sind jeweils Epsilon-Version, PDF

Bei manchen Browsern kann es passieren, dass Downloads nicht geladen werden. In diesem Fall auf den Link rechtsklicken und „speichern unter“ auswählen!

Bitte verlinkt nur auf diese Unterseite hier, nicht auf die Dateien an sich. Erstens macht es Sinn, diese Zusammenfassungsseite zu sehen, bevor man direkt die Datei lädt, und zum zweiten kann sich der Dateiname gerade in der Entwicklungszeit jederzeit ändern!

Gebt Feedback!

Dieses Manuskript hat durch seine Leser schon sehr viel an Nutzen gewonnen, wie auch an den vielen Helfernamen im Vorwort ersichtlich ist. Wenn ihr mir Feedback zum Script gebt, seid sicher, dass ich mich freue, und es auf die eine oder andere Weise in die jeweils nächste Edition mit einfließt. Also: Wenn ihr irgendwelche Beschwerden, Fehlerberichtigungen, Vorschläge oder einfach Lob ;-) habt, her damit – entweder per Mail an mich, oder in den neuen Diskussionsteil am Fuß dieser Seite.

Nutzungsbestimmungen

Von der Epsilon-Edition an ist das Manuskript unter Creative Commons Attribution-No Derivative Works 3.0 Unported License lizensiert, bis auf einige wenige Kleinteile, die liberaleren Lizenzen unterstehen (siehe Vorwort und Verweise im Text selbst). Natürlich berührt die Lizenz nicht den Source Code des Manuskripts, der (zunächst) nicht veröffentlicht wird.

Über diese Seite und die Entstehung der Arbeit

Cover des ScriptumsDiese Seite widmet sich meiner Arbeit „Ein kleiner Überblick über Neuronale Netze“, welche einmal eine erweiterte Seminararbeit von knapp vierzig Seiten war und dann erstaunliche Downloadzahlen erreicht hat.

Inspiriert von der großen Resonanz in Mail und Wort, und in Kenntnis der Tatsache, dass es leider wenig kostenlose deutsche Literatur zu Neuronalen Netzen gibt, habe ich mich entschlossen, dieses kleine Skriptum komplett neu aufzusetzen und zu illustrieren - mit dem Ziel, einen einfachen, anschaulichen, fundierten und trotzdem unterhaltsamen Einstieg in die gängigen Arten Neuronaler Netze zu bieten.

Das ursprüngliche 40-Seiten-Skriptum wurde ganz wesentlich erweitert: Vorhandenen Kapiteln wurden Herleitungen angefügt, Neue Kapitel wurden geschrieben, 17 Korrekturleser (Vorkorrektur) und eine zweite Hauptkorrekturrunde halfen mir, Fehler auszumerzen. Trotzdem ist es wichtig festzustellen, dass das Script im Entstehen begriffen ist und auch noch einige Gliederungsprinzipien umgestellt werden.

Ziel der Arbeit ist, dass jemand, der sich erst einmal in dem Fachgebiet umsehen oder eine Seminararbeit über ein bestimmtes Paradigma Neuronaler Netze schreiben will, sich nicht sofort ein Buch für 50 Euro kaufen muss. Natürlich habe ich auch weiterhin versucht, meinen „Hypertext auf Papier“ mit Randbemerkungen und anderen Features fortzusetzen.

Zitieren dieser Arbeit

Dass es keinen offiziellen Verleger gibt, muss bei einer Referenzierung im wissenschaftlichen Sinne natürlich beachtet werden. Damit International die gleiche Referenz kursiert, schlage ich vor, zunächst folgende Referenz zu verwenden:

David Kriesel, 2007, Ein kleiner Überblick über Neuronale Netze, erhältlich auf http://www.dkriesel.com

Diese betrifft die Deutsche Version. Auf der Englischen Version dieser Seite steht die entsprechende englische Referenz. Bitte referenziert immer unter angabe der URL, da sie bis jetzt das einzige wirkliche Identifikationsmittel des Manuskripts ist. Den Editionsnamen habe ich aus beiden Referenzen absichtlich weggelassen, da er sich hin und wieder ändert und Google Scholar und Citeseer damit Probleme haben. Hier noch ein BibTeX Entry:

@Book{ Kriesel2007NeuralNetworks, 
       author = { David Kriesel }, 
       title =  { Ein kleiner Überblick über Neuronale Netze },
       year =   { 2007 }, 
       note =   { erhältlich auf http://www.dkriesel.com } 
     }

Auch hier gibt es wieder die englische Version auf der englischen Übersetzung dieser Seite.

Versions- und Updateinformationen

Neues in der Epsilon-Version

In der Epsilonversion wurde das Manuskript auf eine komplett neue technische Basis gestellt. Aber auch im Text hat sich viel getan.

  • Neues Kapitel: Biologische Neuronale Netze
  • Neues Layout und Design, das den Regeln der Typographie folgt und so für mehr Lesbarkeit sorgt. Abstände und Satzspiegel relayoutet.
  • Neue Seitenheader und -footer mit Sektions- und Kapitelnamen
  • Neue, modernere Schriftarten. Unterschied sieht man kaum, sie haben aber einen lesbareren Typenspiegel.
  • „Sprechende Überschriften“ über das ganze Manuskript hinweg fassen den Inhalt des zugehörigen Abschnittes in einem Satz zusammen.
  • Anklickbare Links und elektronisches PDF-Inhaltsverzeichnis über das ganze Manuskript hinweg.
  • Viele kleine Verbesserungen, die mir von Lesern vorgeschlagen wurden, danke an dieser Stelle noch einmal hierfür! In diesem Zuge natürlich eine Erweiterung der Liste der helfenden Leser im Vorwort :-)
  • Es existiert jetzt nur noch ein Inhaltsverzeichnis mittlerer Länge, statt einem langen und einem kurzen
  • Verschiedene Umsortierungen. Teile vom Perceptronkapitel (5) sind ins Lernkapitel (4) gewandert, die Reihenfolge einiger Kapitel wurde geändert. Part IV „Weitere Betrachtung von Lernvorgängen“ wurde gestrichen, die zugehörigen Kapitel anders einsortiert. Die Regional and Online Learnable Fields wurden in den Exkurs über Clustering verschoben.
  • Neue CC-Lizenz, siehe oben
  • Tolles neues Cover ;-)

Ein ganz großer Dank geht wieder an Beate Kuhl, die wieder unentgeltlich die Übersetzung vorgenommen hat!

Neues in der Delta-Version

  • Viele Anmerkungen von Lesern befolgt, die viele winzige Inkonsistenzen und Fehlerchen berichtigt haben.
  • Layout verbessert, Kleinigkeiten an Abbildungen geändert.
  • Kleinere Änderungen an der Gesamtgliederung
  • Übersetzung ins Englische fertiggestellt (Herzlichen Dank hierfür an Beate Kuhl!!)

Neues in der Gamma-Version

  • Hauptkorrektur. Jede Menge Rechtschreibfehler und Satzbaufehler bereinigt.
  • Übersetzung ins Englische: Im Moment bei ca. 50%, dauert etwas länger als gedacht. Aber in Arbeit :-)
  • In der Gamma2-Version sind ein paar Formulierungen überarbeitet / erweitert, die beim Übersetzen aufgefallen sind.

Neues in der Beta-Version

  • Vorkorrektur. Viele kleine Sachfehlerchen bereinigt (z.B. fehlende Indizes) und Abschnitte erweitert. Ein gutes Beispiel hierfür ist die Backpropagationherleitung.
  • Neues Kapitel über ART-Netze.
  • Gliederung überarbeitet: ART-Netze und Reinforcement Learning haben nun einen eigenen Part.
  • Literaturstellen eingearbeitet.
  • Rechtschreibfehler und Ausdrucksschwächen und restliche Kapitel kommen in der nächsten Version hinzu.

Was sind Neuronale Netze und was steht im Script?

Neuronale Netze sind ein von der Natur inspirierter Mechanismus, der es Computern ermöglicht, ähnlich wie ein Gehirn zu lernen - der Computer kann so, wenn er die Lösung für ein Problem kennt, korrekte Lösungen für ähnliche Probleme finden und vieles mehr.

Das Script gliedert sich in verschiedene Teile, welche sich wiederum in Kapitel gliedern. Hier eine kurze Inhaltsangabe dieser Abschnitte:

Teil I: Von der Biologie zur Formalisierung - Motivation, Philosophie, Geschichte und Realisierung Neuronaler Modelle

Einleitung, Motivation und Geschichte

Wie kann man dem Computer etwas beibringen? Entweder, in dem man ein starres Progamm schreibt - oder, indem man ihm das Lernen ermöglicht. Lebende Wesen haben keinen Programmierer, der ihnen ein Programm für ihre Fähigkeiten schreibt, welches nur ausgeführt werden muss. Sie lernen - ohne Vorkenntnisse durch Eindrücke von außen - selber und kommen damit zu besseren Problemlösungen als jeder Computer. Kann man solches Verhalten auch bei Maschinen wie Computern erreichen? Können wir solche Kognition von der Biologie adaptieren? Geschichte, Entwicklung, Niedergang und Wiederauferstehung eines großen Ansatzes, Probleme zu lösen.

Biologische Neuronale Netze

Wie lösen Biologische Systeme Probleme? Wie funktioniert ein System von Neuronen? Wie kann man dessen Funktionalität erfassen? Wozu sind verschieden große Mengen von Neuronen imstande? Ein kleiner Überblick über die große Komplexität einfacher Bausteine Neuronaler Informationsverarbeitung - und deren Vereinfacherung, um sie technisch adaptieren zu können. Achtung: Dieses Kapitel ist in der Betaversion des Scriptes nicht enthalten.

Bausteine technischer Neuronaler Netze

Formale Definitionen und umgangssprachliche Erklärungen der Bestandteile, die die technischen Adaptionen der biologischen Neuronalen Netze ausmachen. Erste Beschreibungen, wie man diese Bestandteile zu einem Neuronalen Netz zusammensetzen kann.

Gedanken zum Training Neuronaler Netze

Ansätze und Gedanken, auf welche Arten Maschinen etwas beizubringen ist. Korrigiert man Neuronale Netze? Bestärkt man sie nur? Lässt man sie gar ganz alleine ohne Hilfe lernen? Gedanken darüber, was wir während des Lernvorganges überhaupt verändern möchten, wie wir es verändern, über Fehlermessung und wann wir mit den Lernen fertig sind.

Teil II: Überwacht lernende Netzparadigmen

Das Perceptron

Der Klassiker unter den Neuronalen Netzen. Wenn von einem Neuronalen Netz gesprochen wird, ist meistens ein Perceptron oder eine Variation davon gemeint. Perceptrons sind mehrschichtige Netze ohne Rückkopplung, mit festen Eingabe- und Ausgabeschichten. Beschreibung des Perceptrons, seiner Grenzen und seiner Erweiterungen, welche die Grenzen umgehen sollen. Herleitung von Verfahren, es lernen zu lassen, und Diskussion über deren Probleme.

Radiale Basisfunktionen

RBF-Netze nähern Funktionen an, indem sie Gaußglocken strecken, stauchen und anschließend räumlich versetzt aufsummieren. Beschreibung ihrer Funktion und ihres Lernvorganges, Gegenüberstellung mit Multilayerperceptrons.

Rückgekoppelte Multilayerperceptrons

Gedanken über Netze, welche eigene interne Zustände besitzen. Ansätze des Lernens mit derartigen Netzen, Skizzierung ihrer Dynamik.

Hopfieldnetze

In einen magnetischen Feld übt jedes Teilchen Kraft auf jedes andere Teilchen aus, so dass sich die Teilchen insgesamt so ausrichten, wie es am energetisch günstigsten für sie ist. Wir kopieren diesen Mechanismus der Natur, um verrauschte Eingaben zu ihren richtigen Vorbildern zu korrigieren.

Learning Vector Quantisation

Learning Vector Quantisation ist ein Lernverfahren mit dem Ziel, in vordefinierte Klassen unterteilte Trainingsmengen von Vektoren durch wenige Repräsentanten-Vektoren möglichst gut wiederzugeben. Ist dies geschafft, so ist eine einfache Zuordnung bis dato unbekannter Vektoren in eine dieser Klassen möglich.

Teil III: Unüberwacht lernende Netzparadigmen

Self Organizing Feature Maps

Ein Paradigma unüberwacht lernender Neuronaler Netze, welches einen Eingaberaum durch seine feste Topologie kartographiert und so selbstständig nach Ähnlichkeiten sucht. Funktion, Lernverfahren, Variationen und Neuronales Gas.

Adaptive Resonance Theory

Kurze Beschreibung eines Ansatzes Neuronaler Netze, der ermöglichen soll, zur Laufzeit Information hinzuzulernen.

TEIL IV: Exkurse, Anhänge und Register

Clusteranalyse und Regional and Online Learnable Fields

Das Grimmsche Wörterbuch beschreibt das heute ausgestorbene deutsche Wort „`Kluster“' mit „`was dicht und dick zusammensitzet“'. In der statistischen Clusteranalyse wird die Gruppenbildung innerhalb von Punktwolken untersucht. Vorstellung einiger Verfahren, Vergleich ihrer Vor- und Nachteile. Betrachtung eines lernenden Clusteringverfahrens auf Basis Neuronaler Netze. Ein Regional and Online Learnable Field modelliert aus einer Punktwolke mit womöglich sehr vielen Punkten eine vergleichsweise kleine Menge von für die Punktwolke repräsentativen Neuronen.

Neuronale Netze zur Vorhersage

Betrachtung einer Anwendung Neuronaler Netze: Ein Blick in die Zukunft von Zeitreihen.

Reinforcement Learning

Was, wenn keine Trainingsbeispiele existieren, man aber trotzdem beurteilen kann, wie gut man gelernt hat, ein Problem zu lösen? Betrachten wir ein Lernparadigma, welches zwischen überwachtem und unüberwachtem Lernen anzusiedeln ist.

Linkbacks

      ||AP>> Neuronal , 2009/10/23 21:38 (Pingback)
[...] Ein kleiner Überblick über Neuronale Netze (D. Kriesel) [...]
 

Diskussion

Carl Hanna, 2009/12/03 01:22

Mir ist ein kleiner Rechtschreibfehler aufgefallen. Auf Seite 8 unten rechts muss es heißen „Dass sich dieses System […]“ statt „Das“ mit einem s.

:)

David Kriesel, 2009/12/03 09:17

Danke :-) Wird verbessert!

SLP, 2010/04/02 14:22

Hallo

Ich beschäftige mich gerade mit KNN, und bin auf ihr „Script“ gestossen. Es lässt sich „angenehm“ lesen. Mir ist folgendes aufgefallen:

(Script Seite 94) „Insofern zeigt uns die Erfahrung, dass zwei versteckte Neuronenschichten bzw. zwei trainierbare Gewichtsschichten für die Realisierung eines Problems sehr nütz- nützlich sein können…“

Richtig ist doch: 2 hidden layer == 4 Schichten Perceptron (inkl. Ein- und Ausgabe) »> 3 trainierbare Gewichtsschichten) oder?

Mif freundlichen Grüßen und Dank für das „Werk“

David Kriesel, 2010/04/02 15:35

vielen Dank für Ihre Anmerkung zu meinem Script - Sie haben natürlich völlig Recht, ein Perceptron mit zwei versteckten Neuronenschichten besitzt drei trainierbare Gewichtsschichten. In der nächsten Version des Scriptes wird der Fehler behoben sein.

SLP, 2010/04/10 22:29

Ich wollte mich eben in deinem Forum (Board) anmelden. Leider sind zurzeit keine Registrierungen möglich. Schade!

David Kriesel, 2010/04/11 18:44

Das hat mit Spammern zu tun, wenn du einen Account möchtest, schreib mir gerne eine Mail mit deinem gewünschten Usernamen :-)

Viele Grüße, D

Geben Sie Ihren Kommentar ein
NZHIZ
 
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki