Loading AI tools
mathematisches Modell aus der Neuroinformatik motiviert durch die Nervenzellen der Säugetiere Aus Wikipedia, der freien Enzyklopädie
Ein künstliches Neuron bildet die Basis für das Modell der künstlichen neuronalen Netze, ein Modell aus der Neuroinformatik, das durch biologische neuronale Netze motiviert ist. Als konnektionistisches Modell bilden sie in einem Netzwerk aus künstlichen Neuronen ein künstliches neuronales Netz und können so beliebig komplexe Funktionen approximieren, Aufgaben erlernen und Probleme lösen, bei denen eine explizite Modellierung schwierig bis nicht durchzuführen ist. Beispiele sind die Gesichts- und Spracherkennung.
Als Modell aus dem biologischen Vorbild der Nervenzelle entstanden, kann es mehrere Eingaben verarbeiten und entsprechend über seine Aktivierung reagieren. Dazu werden die Eingaben gewichtet an eine Ausgabefunktion übergeben, welche die Neuronenaktivierung berechnet. Ihr Verhalten wird ihnen im Allgemeinen durch Einlernen unter Verwendung eines Lernverfahrens gegeben.
Die Anfänge der künstlichen Neuronen gehen auf Warren McCulloch und Walter Pitts im Jahr 1943 zurück. Sie zeigten an einem vereinfachten Modell eines Neuronalen Netzes, der McCulloch-Pitts-Zelle, dass diese logische und arithmetische Funktionen berechnen kann.
Die Hebbsche Lernregel wurde im Jahr 1949 von Donald Hebb beschrieben. Aufbauend auf der medizinischen Forschung von Santiago Ramón y Cajal, der bereits 1911 die Existenz von Synapsen nachgewiesen hatte, werden nach dieser Regel wiederholt aktive Verbindungen zwischen Nervenzellen gestärkt. Die Verallgemeinerung dieser Regel wird auch in den heutigen Lernverfahren noch verwendet.
Eine wichtige Arbeit kam im Jahre 1958 mit dem Konvergenztheorem über das Perzeptron heraus. Dort zeigte Frank Rosenblatt, dass es mit dem angegebenen Lernverfahren alle Lösungen einlernen kann, die mit diesem Modell repräsentierbar sind.
Jedoch zeigten die Kritiker Marvin Minsky und Seymour Papert 1969, dass ein einstufiges Perzeptron eine XOR-Verknüpfung nicht repräsentieren kann, weil die XOR-Funktion nicht linear separierbar (linear trennbar) ist, erst spätere Modelle konnten diesen Missstand beheben. Die so gezeigte Grenze in der Modellierung führte zunächst zu einem abnehmenden Interesse an der Erforschung der künstlichen neuronalen Netze sowie zu einer Streichung von Forschungsgeldern.
Ein Interesse an künstlichen Neuronalen Netzen kam erst wieder auf, als John Hopfield die Hopfield-Netze 1985 bekannt machte und zeigte, dass sie in der Lage sind Optimierungsprobleme zu lösen, wie das Problem des Handlungsreisenden.[1] Ebenfalls führte die Arbeit zum Backpropagation-Verfahren von David E. Rumelhart, Geoffrey E. Hinton und Ronald J. Williams ab 1986 zu einer Wiederbelebung der Erforschung dieser Netze.
Heute werden solche Netze in vielen Forschungsbereichen verwendet.
Motiviert sind künstliche Neuronen durch die Nervenzellen der Säugetiere, die auf die Aufnahme und Verarbeitung von Signalen spezialisiert sind. Über Synapsen werden Signale elektrisch oder chemisch an andere Nervenzellen oder Effektorzellen (etwa zur Muskelkontraktion) weitergeleitet.
Eine Nervenzelle besteht aus dem Zellkörper, Axon und den Dendriten. Dendriten sind kurze Zellfortsätze, die stark verzweigt für die Aufnahme von Signalen anderer Nervenzellen oder Sinneszellen sorgen. Das Axon funktioniert als Signalausgang der Zelle und kann eine Länge von bis zu 1 m erreichen. Der Übergang der Signale erfolgt an den Synapsen, welche erregend oder hemmend wirken können.
Die Dendriten der Nervenzelle leiten die eingehenden elektrischen Erregungen an den Zellkörper weiter. Erreicht die Erregung einen gewissen Grenzwert und übersteigt ihn, entlädt sich die Spannung und pflanzt sich über das Axon fort (Alles-oder-nichts-Gesetz).
Die Verschaltung dieser Nervenzellen bildet die Grundlage für die geistige Leistung des Gehirns. Das Zentralnervensystem des Menschen besteht nach Schätzungen aus 1010 bis 1012 Nervenzellen, die durchschnittlich 10.000 Verbindungen besitzen – das menschliche Gehirn kann also mehr als 1014 Verbindungen besitzen.[2][3] Das Aktionspotential im Axon kann sich mit einer Geschwindigkeit von bis zu 100 m/s fortpflanzen.
Im Vergleich zu Logikgattern zeigt sich auch die Effizienz von Neuronen. Während Gatter im Nanosekunden-Bereich (10−9) schalten, unter einem Energieverbrauch von 10−6 Joule (Daten von 1991), reagieren Nervenzellen im Millisekunden-Bereich (10−3) und verbrauchen lediglich eine Energie von 10−16 Joule. Trotz der augenscheinlich geringeren Werte in der Verarbeitung durch Nervenzellen können rechnergestützte Systeme nicht an die Fähigkeiten biologischer Systeme heranreichen.
Die Leistung neuronaler Netze wird ebenfalls durch die 100-Schritt-Regel demonstriert: Die visuelle Erkennung beim Menschen findet in maximal 100 sequentiellen Verarbeitungsschritten statt – die meist sequentiell arbeitenden Rechner erbringen keine vergleichbare Leistung.
Die Vorteile und Eigenschaften von Nervenzellen motivieren das Modell der künstlichen Neuronen. Viele Modelle und Algorithmen zu künstlichen neuronalen Netzen entbehren dennoch einer direkt plausiblen, biologischen Motivierung. Dort findet sich diese nur im Grundgedanken der abstrakten Modellierung der Nervenzelle.
Mit der Biologie als Vorbild wird nun durch eine passende Modellbildung eine für die Informationstechnik verwendbare Lösung gefunden. Durch eine grobe Verallgemeinerung wird das System vereinfacht – unter Erhaltung der wesentlichen Eigenschaften.
Die Synapsen der Nervenzelle werden hierbei durch die Addition gewichteter Eingaben abgebildet, die Aktivierung des Zellkerns durch eine Aktivierungsfunktion mit Schwellenwert. Die Verwendung eines Addierers und Schwellenwerts findet sich so schon in der McCulloch-Pitts-Zelle von 1943.
Ein künstliches Neuron mit dem Index und den n Eingängen, indiziert mit , kann durch vier Basiselemente beschrieben werden:
Durch einen Verbindungsgraphen werden folgende Elemente festgelegt:
Das künstliche Neuron als Modell wird in der Literatur meist auf dem folgenden Weg eingeführt:
Zuerst wird die Aktivierung (in der Abbildung oben als „Netzeingabe“ oder „net“ bezeichnet) des künstlichen Neurons durch
definiert. Da die Mathematik den Index (0..9) und die Anzahl (10) im Allgemeinen nicht unterscheidet, wird als mathematische Vereinfachung normalerweise eine synthetische Eingabe eingeführt und man schreibt
Dabei ist
Als Aktivierungsfunktion können verschiedene Funktionstypen verwendet werden, abhängig von der verwendeten Netztopologie. Eine solche Funktion kann nicht-linear, zum Beispiel sigmoid, stückweise linear oder eine Sprungfunktion sein. Im Allgemeinen sind Aktivierungsfunktionen monoton steigend. Die letzte Aktivierungsfunktion bei der Ausgabeschicht des Neuronalen Netzes hat eine gewisse Nähe zur inversen Kopplungsfunktion in verallgemeinerten linearen Modellen und dient ähnlichen Zwecken.
Lineare Aktivierungsfunktionen unterliegen einer starken Beschränkung, da eine Komposition linearer Funktionen durch arithmetische Umformungen durch eine einzige lineare Funktion dargestellt werden kann. Für mehrschichtige Verbindungsnetzwerke sind sie deswegen nicht geeignet und finden so nur in einfachen Modellen Anwendung.
Beispiele für grundlegende Aktivierungsfunktionen sind:
Die Schwellenwertfunktion (engl. hard limit), wie sie im Folgenden definiert ist, nimmt nur die Werte oder an. Den Wert 1 für die Eingabe , sonst . Bei subtraktiver Verwendung eines Schwellenwerts wird die Funktion nur aktiviert, wenn die zusätzliche Eingabe den Schwellenwert übersteigt. Ein Neuron mit einer solchen Funktion wird auch McCulloch-Pitts-Zelle genannt. Sie spiegelt die Alles-oder-nichts-Eigenschaft des Modells wider.
Ein Neuron mit dieser Aktivierungsfunktion wird auch so dargestellt:
Die hier verwendete stückweise lineare Funktion (engl. piecewise linear) bildet ein begrenztes Intervall linear ab, die äußeren Intervalle werden auf einen konstanten Wert abgebildet:
Ein Neuron mit der stückweise linearen Funktion als Aktivierungsfunktion wird auch folgendermaßen dargestellt:
Sigmoide Funktionen als Aktivierungsfunktion sind sehr häufig verwendete Abbildungen. Sie besitzen, wie hier definiert, ein variables Steigungsmaß , das die Krümmung des Funktionsgraphen beeinflusst. Eine spezielle Eigenschaft ist ihre Differenzierbarkeit, die für einige Verfahren wie den Backpropagation-Algorithmus benötigt werden:
Die Werte der obigen Funktionen liegen im Intervall . Für das Intervall lassen sich diese Funktionen entsprechend definieren.
Ein Neuron mit der Sigmoidfunktion wird auch so dargestellt:
Rectifier als Aktivierungsfunktion wird besonders in Deep-Learning-Modellen erfolgreich eingesetzt. Sie ist als Positivteil ihres Arguments definiert.
Mit künstlichen Neuronen lassen sich boolesche Funktionen darstellen. So können die drei Funktionen Konjunktion (and), Disjunktion (or) und Negation (not) unter Verwendung einer Schwellenwertfunktion wie folgt repräsentiert werden:
Für die Konjunktion zum Beispiel ist ersichtlich, dass nur für die booleschen Eingaben und die Aktivierung
ergibt, sonst .
Anders als im vorherigen Beispiel, bei dem die passenden Gewichtungen gewählt wurden, können Neuronen die zu repräsentierende Funktion erlernen. Die Gewichtungen und der Schwellenwert werden anfangs mit zufälligen Werten belegt und anschließend unter Verwendung eines „Versuch-und-Irrtum“-Lernalgorithmus angepasst.
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Um die logische Konjunktion zu erlernen, kann die Perzeptron-Kriteriumsfunktion angewendet werden. Sie addiert die Werte fehlerhaft erkannter Eingaben auf die Gewichtung hinzu, um die Erkennung zu verbessern, bis möglichst alle Eingaben richtig klassifiziert werden. Die Aktivierungsfunktion ist hier analog zum vorherigen Beispiel die Schwellenwertfunktion .
Für das Lernverfahren wird die Lernrate, welche die Geschwindigkeit des Einlernens festlegt, mit gewählt. Somit entfällt eine explizite Erwähnung.
Statt den Schwellenwert als solchen anzugeben, wird ein on-Neuron (Bias), also ein konstanter Eingang hinzugefügt. Der Schwellenwert wird durch die Gewichtung angegeben.
Um das Neuron auf die beiden möglichen Ausgaben und der Konjunktion zu trainieren, werden die Eingaben für die zugehörige Ausgabe mit multipliziert. Die Ausgabe ist durch diesen Schritt nur dann , wenn die betreffende Eingabe fehlerhaft klassifiziert wurde. Dieses Vorgehen vereinfacht die Betrachtung beim Einlernen und die spätere Gewichtungsanpassung. Danach sieht die Lerntabelle folgendermaßen aus:
Eingaben | ||
---|---|---|
−1 | 0 | 0 |
−1 | 0 | −1 |
−1 | −1 | 0 |
1 | 1 | 1 |
Der Eingang hat bei den Eingängen den Wert , bei denen das Neuron am Ende ausgeben soll.
Für die Ausgangssituation werden die Gewichtungen zufällig gewählt:
Gewicht | Anfänglicher Wert | Bedeutung |
---|---|---|
() | 0,1 | Darstellung des Schwellenwerts |
0,6 | Gewichtung der ersten Eingabe | |
−0,3 | Gewichtung der zweiten Eingabe |
Zum Testen der Gewichtungen werden diese in ein Neuron mit drei Eingängen und dem Schwellenwert eingesetzt. Für die gewählten Gewichte sieht die Ausgabe wie folgt aus:
Eingaben | Ausgabe | |||
---|---|---|---|---|
−1 | 0 | 0 | 0 | |
−1 | 0 | −1 | 1 | |
−1 | −1 | 0 | 0 | |
1 | 1 | 1 | 1 |
Die erste und dritte Eingabe werden falsch berechnet und das Neuron gibt aus. Nun findet die Perzeptron-Kriteriumsfunktion ihre Anwendung:
Durch die Addition mit den falsch erkannten Eingaben werden die zugehörigen Gewichte durch
Dabei ist
|
|
Die Überprüfung nach der Gewichtungsänderung zeigt, dass statt der ersten und dritten Eingabe nun die vierte Eingabe falsch klassifiziert wird. Die Ausführung eines weiteren Schrittes des Lernverfahrens verbessert die Erkennungsfunktion des Neurons:
|
|
Nun sieht man, dass das Neuron die vorgegebene Funktion erlernt hat und alle vier Eingaben richtig berechnet.
Unter Verwendung der Eingabe und und die Wahl von folgt nun die Aktivierung:
Für die anderen drei Eingaben, die für das Einlernen mit multipliziert wurden, ergibt sich nun der Wert . So folgt aus der Eingabe und die Aktivierung:
Ohne bestimmte Gewichtungen vorzugeben, hat das Neuron gelernt, anhand der Vorgaben die Konjunktion wie im ersten Beispiel darzustellen.
Ein künstliches Neuron ist in der Lage, auch ohne ein gesamtes Netzwerk, maschinell zu lernen. Die statistischen Fachausdrücke sind lineare Regression und Klassifizierung. Damit können lineare Funktionen erlernt und linear trennbare Klassen unterschieden werden. Mithilfe des sogenannten Kerneltricks können aber auch nichtlineare Modelle erlernt werden. Demnach kann ein einzelnes Neuron ähnliche Ergebnisse, auch wenn nicht ganz optimal, wie SVMs erzielen.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.