Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2007  »  07  »  Magisches Netz  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

© photocase.com

Neuronale Netze mit der Libfann

Magisches Netz

von Andreas Romeyke
Erschienen im Linux-Magazin 2007/07

3, 4, 8, 11 - nur wer den dahintersteckenden Algorithmus errät, weiß die nächste Zahl. Doch neuronale Netze setzen Reihen auch fort, ohne den Rechenweg zu kennen - näherungsweise, quasi aus dem Bauch heraus. Sie gleichen damit dem menschlichen Gehirn, dessen Architektur ihr Vorbild ist.

Für viele scheinbar triviale Probleme lässt sich nur schwer ein mathematischer Lösungsweg finden. Wer eine Reiseroute durch vorgegebene Städte oder das Layout einer elektronischen Schaltung optimieren will, muss sich mit dem Durchprobieren und Bewerten von Alternativen behelfen. Da die Zahl der möglichen Lösungen für eine Route durch vorgegebene Punkte der Fakultät ihrer Anzahl entspricht, scheitert eine exakte Lösung trotz optimierter Algorithmen leicht am Aufwand.

Wesentlich schneller geht es mit Augenmaß. Wenn ein Mensch nach Gefühl eine Route in die Landkarte zeichnet, findet er eine gute Lösung (wenn auch nicht unbedingt die beste), auch ohne über Optimierungsalgorithmen nachzudenken oder auch nur die Länge der Teilstrecken zu summieren.

Neuronale Netze sind eine Möglichkeit, Digitalerchnern solche intuitiven Lösungen beizubringen. Künstliche neuronale Netze spielen ihre Vorteile gegenüber den Verfahren, die auf Formeln und Logik basieren, immer dann aus, wenn sich der systematische Zusammenhang zwischen Eingabe- und Ausgabewerten nur unzureichend mathematisch erfassen lässt.

Intuition gefragt

Eine typische Anwendung für neuronale Netze ist die Gesichtserkennung, bei der der Rechner aus farbigen Bildpunkten trotz Rauschen oder Verzerrungen Gesichter erkennen soll. Weitere Anwendungen sind die Texterkennung oder Vorhersagen in mathematisch schwer zu fassenden Systemen, etwa der Sonnenfleckenaktivität oder Börsentrends. Neuronale Netze haben den Ruf, das Bauchgefühl eines routinierten Börsianers besser nachzuahmen als rechnerische Verfahren. Das gilt auch für die Vorhersage von Sonnenflecken, die in 22-jährigen, aber nicht vollständig regelmäßigen Zyklen auf der Sonnenoberfläche zu sehen sind. Neuronetzte sagen ihre Häufigkeit besser vorher als Berechnungen, die die Komplexität der Gasdynamik nicht vollständig erfassen können.

Dieser Artikel trainiert ein neuronales Netz für die Vorhersage der Sonnenfleckenaktivität aus den Daten der letzten 30 Jahre. Für die Implementierung des Netzes nutzt er die leistungsfähige Libfann [1]. Von praktischem Wert ist eine solche Vorhersage, weil Sonnenfleckenaktivitäten Störungen bei Funk- und Satellitenübertragungen auslösen können.

Natürliches Vorbild

Künstliche neuronale Netze (Artificial Neural Networks, kurz ANNs) simulieren die Struktur des Gehirns von Menschen und Tieren. Wie ihr natürliches Vorbild bestehen sie aus künstlichen Nervenknoten (Neuronen), die sich in ihrem Zustand über eine Vielzahl von Verbindungen gegenseitig beeinflussen. Aus der unterschiedlichen Gewichtung der Neuronenverbindungen, die den Nervenfasern im Gehirn entsprechen, ergibt sich für ein Muster an den Eingangsneuronen eines Netzes ein bestimmter Ausgangswert.

Durch ein Training, das sich in der Stärke der Neuronenverbindungen niederschlägt, lernen es neuronale Netze, Eingangsmuster mit Ausgabewerten zu assoziieren. Dabei genügt es, dem Netz einen Ausschnitt aus der Ergebnismenge zu präsentieren. Ohne dass ein konkreter Rechenweg bekannt ist, findet das künstliche Gehirn nach einer Trainingsphase dann auch Lösungen, die nicht Teil des Trainings waren.

Abbildung 1 zeigt eine Nervenzelle. Sie besteht aus dem Zellkern und vielen verästelten Ausläufern. Die so genannten Dendriten empfangen Signale von anderen Nervenzellen und leiten die elektrischen Impulse an den Zellkörper weiter. Übersteigt deren Summe einen bestimmten Schwellenwert, wird das Neuron aktiv und sendet über das Axon einen elektrischen Impuls an die mit ihm verbunden Zellen.


Abbildung 1: In der vielfältigen Verästelung der Nervenzellen sehen Neuro-Wissenschaftler die Basis für die Leistungsfähigkeit des Gehirns in Disziplinen wie Mustererkennung oder der Vorhersage schwer zu errechnender Systemzustände.

Ein künstliches Neuron simuliert die wichtigsten Eigenschaften einer Nervenzelle. Es summiert alle Potenziale seiner Dendriten, wendet auf diese Summe eine festgelegte Aktivierungsfunktion an und leitet das Ergebnis an alle verknüpften Zellen weiter (Abbildung 2). Jede Verbindung zu anderen Neuronen hat ein bestimmtes Gewicht und dämpft oder verstärkt das Signal auf dem Weg.


Abbildung 2: Künstliche Neuronen summieren die Reizpotenziale aller Verknüpfungen und leiten sie über gewichtete Verbindungen weiter. Die Anpassung der Verknüpfungsfaktoren verändert das Verhalten des Netzes.

Die Aktivierungsfunktion, die entscheidet, ab welchem Potenzial das Neuron aktiv wird, besteht im einfachsten Fall aus einer Schwellenwertfunktion, die eine Eins liefert, wenn die Summe aller Eingänge über einem bestimmten Wert liegt. Es ist üblich, die Aktivierungsschwelle als Neuron, das so genannte On-Neuron, darzustellen. Wie den Verknüpfungen zwischen den Neuronen lässt sich ihr eine Gewichtung zuweisen.

Sie können diesen Artikel als PDF für 99 Cent kaufen. Klicken Sie dazu einfach auf eine der beiden Bezahloptionen Paypal oder ClickandBuy.


Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Ausgedehnte Quellenstudien GNU Compiler Collection 4.3
Tierische Kurssprünge Börsenkurs-Alerting im Eigenbau
Erweiterungsbau Mit NSE den Netzwerkscanner Nmap erweitern
Auto-Fahrschule Künstliche Intelligenz programmieren mit dem Rennspiel Torcs
Mathemaschinen Symbolische Mathematik mit Axiom, Maple und Mathematica
Erfrischend neu Der kommende C++-Standard C++0x
Whitepaper
The Role of Open Source in Data Integration

Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.

Download PDF (Registrierung erforderlich)
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele (Folge 2)

Der zweite Teil des Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele White Papers beleuchtet anhand weiterer ausgewählter Case Studies die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Kommentare (0)