Neuronale Netze - Grundlagen
eBook - ePub

Neuronale Netze - Grundlagen

Mit Beispielprogrammen in Java

  1. 240 Seiten
  2. German
  3. ePUB (handyfreundlich)
  4. Über iOS und Android verfügbar
eBook - ePub

Neuronale Netze - Grundlagen

Mit Beispielprogrammen in Java

Über dieses Buch

Von den ersten Modellen bis zum Backpropagation-Netz Allgemeinverständliche Erläuterungen mit vielen Praxis- und Anwendungsbeispielen Zahlreiche Programme zum Ausprobieren, Ausführen und Trainieren Neuronaler Netze mit Beispieldaten Für Programmierer: Vollständige Programmierung eines Backpropagation-Netzes zur Passworterkennung (in Java) Dieses Buch ist eine grundlegende Einführung in die Entwicklung und Funktionsweise Neuronaler Netze. Sie lernen verschiedene Modelle kennen sowie alle Elemente, die für die Funktionalität Neuronaler Netze von Bedeutung sind. So werden Sie im Detail verstehen, wie diese arbeiten. Praxisansatz des Buches: Alle vorgestellten Netze werden beispielhaft anschaulich durchgerechnet. So können Sie nachvollziehen, wie ein Neuronales Netz funktioniert und arbeitet. Außerdem liefert der Autor zusätzlich zum Buch selbst erstellte Programme, mit denen Sie am PC experimentieren können, indem Sie Beispieldaten eingeben und die jeweiligen Eigenschaften der unterschiedlichen Netze praktisch ausprobieren sowie diese trainieren und ausführen können. Kaffka beschreibt zunächst die frühesten Modelle Neuronaler Netze sowie die Hebbsche Formel und das von Rosenblatt entwickelte Modell des Perzeptrons. Daraufhin geht er auf die Mustererkennung mit einem Hopfield-Netz ein und erläutert die Grundlagen eines einfachen und eines bidirektionalen Assoziativspeichers. Schließlich behandelt Kaffka das aktuelle Modell des Backpropagation-Netzes. Sie lernen im Detail, wie ein solches Neuronales Netz funktioniert – von der Netztopologie über die Transferfunktion bis zur Lernformel zum Trainieren eines Netzes. Darauf aufbauend stellt der Autor verschiedene Beispiele und Anwendungen für Neuronale Netze vor. Hier diskutiert er zusätzlich, wie diese im Rahmen der Regressionsanalyse eingesetzt werden können. Zudem wird gezeigt, dass Neuronale Netze auch drei- oder mehrdimensionale Funktionen erlernen können. Ein Ausblick zu Expertensystemen im Vergleich zu Neuronalen Netzen rundet die Einführung ab. Zusatznutzen für Programmierer: Programmierer, die selber ein neuronales Netz programmieren wollen, finden ein ausführliches Kapitel, in dem ein Backpropagation-Netz vollständig in Java programmiert wird. Für Programmierer wird der Java-Code aller im Buch verwendeten Programme erläutert. Downloads zum Buch: Alle Programme der im Buch beschriebenen Neuronalen Netze zum Ausprobieren Für Programmierer: Der Quellcode eines vollständigen Backpropagation-Netzes sowie aller im Buch verwendeten Programme Aus dem Inhalt: Historische Ansätze: Hebbsche Formel, Perzeptron, Hopfield-Netz Neuronale Netze mit der Backpropagation-Technologie Gewichtsmatrix, Training und Lernkurve Muster-/Bilderkennung Bidirektionaler Assoziativspeicher Netztopologie mit bis zu 3 Schichten Regressionsanalyse Mehrdimensionale Funktionen Expertensysteme Vollständige Programmierung eines Backpropagation-Netzes zur Passworterkennung

Information

Jahr
2017
ISBN drucken
9783958456075
eBook-ISBN:
9783958456099

Kapitel 1: Neuronale Netze und das Gehirn

Neuronale Netze werden allgemein zur ​Klassifikation im Rahmen von verschiedenen Fragestellungen eingesetzt. Beispielsweise möchte eine Bank ihren Kreditbestand hinsichtlich seiner ​Ausfallwahrscheinlichkeit bewerten. Jedem Kredit soll dabei ein Prozentsatz zugewiesen werden, der angibt, mit welchem Betrag der Kredit abgeschrieben werden muss, wie viel der Kredit also – umgekehrt betrachtet – tatsächlich wert ist. Dazu kann ein Neuronales Netz herangezogen werden.
Dem Netz werden zunächst Beispiele vorgesetzt, bei welchen Rahmenparametern sich welcher ​Abschreibungsprozentsatz ergibt. Zum Beispiel, ist der Kreditnehmer arbeitslos oder Beamter? Ist bei dem Kreditnehmer bereits früher ein Kredit ausgefallen oder nicht?
Mit einer Auswahl solcher Beispiele wird das Neuronale Netz trainiert und dabei erlernt es die Kriterien, nach denen abgeschrieben wird. Nach dieser Trainingsphase kann es zur Bewertung von Krediten herangezogen werden. Und dabei ist es gewissermaßen zur ​Generalisierung fähig. Es kann nämlich auch Kredite bewerten, die so in den Beispielen nicht vorkommen, und das mit einer geringen Fehlerquote. Weiterhin können die Angaben zu einem Kredit teilweise falsch oder unvollständig sein, und das Neuronale Netz arbeitet trotzdem relativ gut.
So könnte eine automatische ​Kreditnehmerbewertung von Banken im Internet funktionieren. Sie geben auf der Webseite der von Ihnen ausgewählten Bank Ihre Parameter ein. Das können Ihre Adresse, Ihr Geburtsdatum, Ihre familiäre und Ihre erwerbsmäßige Situation sein. Dann klicken Sie auf den Senden-Button und das Formular wird zum Server der Bank gesendet. Ein Neuronales Netz bewertet nun Ihre Angaben und entscheidet, ob Sie den erbetenen Kredit erhalten oder nicht.
Neuronale Netze können dort eingesetzt werden, wo es um Entscheidungen geht und wo ein Mensch zu langsam oder zu teuer ist. Der Bank genügt es, dass das Neuronale Netz im Mittel eine gute Entscheidung trifft. Denn auch ein Mensch trifft nicht immer eine gute Entscheidung. Es werden trotz positiver Entscheidungen des Neuronalen Netzes Kredite ausfallen. Aber das kalkuliert die Bank ein, denn dies geschieht nur ausnahmsweise. Wenn statt des Neuronalen Netzes eine ganze Abteilung von Mitarbeitern eingesetzt würde, die Kreditfreigaben durchführt, so entständen dort viel höhere ​Personalkosten und daher lohnt sich der Einsatz eines Neuronalen Netzes.
Dies war natürlich nur ein Beispiel; ob Banken tatsächlich so vorgehen, bleibt ihr Geheimnis.

1.1 Was sind Neuronale Netze?

Neuronale Netze sind Computerprogramme. Aber woher kommt ihr Name, wieso »neuronal«? Das hat etwas mit der Historie dieser Programme zu tun. Denn ursprünglich wollte man die Funktion von ​Gehirnzellen nachempfinden. Das Neuronale Netz steht quasi als Modell für Gehirnfunktionen bzw. der Funktionen von ​Nervenzellen.
Die ersten Versuche waren so zufriedenstellend, dass man diesen Forschungszweig aufgriff und immer weiter verfeinerte. Zunächst wurden in den 1940er Jahren verschiedene Ansätze erarbeitet. Die beiden Mathematiker McCulloch und Pitts schlugen 1943 vor, eine Gehirnzelle als ein »logisches Schwellenelement« zu verstehen, das zwei Zustände haben kann. Weiter verfeinert wurde diese Modellvorstellung durch Hebb 1949. Das erste Computerprogramm war das »​Perzeptron« von Rosenblatt, das er 1960 erstellte. Und dann nahm die weitere Entwicklung ihren Lauf. Ich gehe in Kapitel 2 darauf ein.
Neuronale Netze können in einem breiten Umfang eingesetzt werden. Es lassen sich Anwendungen in der Finanzbranche, der Medizin, in der Versicherungsbranche u.v.m. finden. Dabei kann es sich u.a. um diese Themen handeln:
  • Bilderkennung bzw. Mustererkennung, das beinhaltet auch das Erkennen von Sprache oder handgeschriebener Schrift
  • Finanzanalyse
  • Wettervorhersage
  • Diagnose in der Medizin
  • Unterstützung bei Entscheidungen
  • Unterstützung bei Planungsaufgaben
  • Unterstützung bei der Qualitätskontrolle
Dabei soll ein Neuronales Netz nicht den herkömmlichen Computer verdrängen. Wenn es um reine Rechenpower oder die Schnelligkeit der Berechnung geht, werden herkömmliche Programme herangezogen. Ein Neuronales Netz spielt seine Stärken im Bereich von verrauschten Daten, fehlerhaften oder unvollständigen Daten oder vagen und widersprüchlichen Angaben aus. Wenn es beispielsweise keinen eindeutigen Algorithmus für die Lösung eines Problems gibt. Die Neuronale-Netz-Technologie wurde erfolgreich in folgenden Bereichen eingesetzt:
  • Bei der Kreditvergabe
  • Geschriebene Texte erkennen und in ANSI-Buchstaben umwandeln (bei ANSI handelt es sich um ein in Computern verwendetes Alphabet)
  • Texte vorlesen
  • Gesprochene Texte in ANSI-Buchstaben umwandeln
  • Erkennung von Unterschriften
  • Erkennung von gestohlenen Kreditkarten (Chase Manhattan Bank)
  • Klassifikation von Radarsignalen
  • Sprengstoffdetektor am New Yorker Flughafen
  • Autonome Steuerung eines Fahrzeugs
  • In der Robotertechnologie (siehe dazu auch mein Buch »LEGO und Elektronik«, im mitp-Verlag erschienen)
Bei Neuronalen Netzen handelt es sich zusammenfassend um eine moderne Technologie, die imstande ist, die herkömmliche Computertechnologie zu ergänzen und deren Schwächen auszugleichen.

1.2 Das Gehirn als Vorbild

Abb. 1.1: Das Gehirn (Quelle: highwaystarz / fotolia.com)
Zunächst möchte ich mich mit dem ​Gehirn beschäftigen, was ja das Vorbild von Neuronalen Netzen ist. Ich beschreibe, wie das Gehirn organisiert ist und wie Nervenzellen funktionieren. Denn diese biologischen Tatsachen tragen zum Verständnis von Neuronalen Netzen bei.
Man kann sich dem Gehirn und seinen Funktionen auf verschiedene Weise nähern. Die Neurologie ​erforscht die biologische Funktionsweise des Gehirns sowie der ​Nervenzellen. Die Psychologie ​erforscht die psychische Funktionsweise des Gehirns. Und die Künstliche-Intelligenz-Forschung ​widmet sich dem Thema, intelligentes Verhalten durch Computer zu simulieren. In den 1970er und 1980er Jahren arbeiteten diese Disziplinen noch unabhängig voneinander. Es zeigte sich jedoch, dass Synergien entstehen, wenn man interdisziplinär zusammenarbeitet, sodass heute Projekte ins Leben gerufen werden, an denen Forscher aus allen drei Disziplinen zusammenarbeiten. Diese Arbeiten werden oft unter dem Sammelbegriff »​Neuroinformatik« zusammengefasst.
Zu Anfang versuchte man, die genauen ​Gehirnstrukturen auf einem Computer abzubilden. Auf der Basis weiterer Forschungsanstrengungen ergaben sich aber Ansätze, die intelligentes Handeln von Computern zum Gegenstand und nicht unbedingt das Gehirngewebe zum Vorbild haben (siehe Kapitel 5 »Das Backpropagation-Netz«).

1.2.1 Organisation und Physiologie des Gehirns

Das Gehirn ist ein Informationen verarbeitendes Organ. Erst im 19. Jahrhundert wurde dies erkannt. Vorher war man der Meinung, das Gehirn hätte eine ​Drüsenfunktion im Körper. Seine Spezialisierung in verschiedene Bereiche wurde daraufhin untersucht. Oftmals auf der Basis von Verletzungen des Gehirns, die sich eine Person zugezogen hatte.
Das Gehirn besteht aus etwa 80 Milliarden Nervenzellen. Es gliedert sich in einen Hirnstamm, ein Kleinhirn, ein Zwischenhirn und in das Großhirn. Jeder Teil des Gehirns übernimmt spezielle Aufgaben.
Der Hirnstamm ​verarbeitet eingehende Sinneseindrücke und ausgehende motorische Reaktionen. Weiterhin werden hier Reflexe und automatische Körperfunktionen wie beispielsweise die Atmung gesteuert. Er ist von allen Gehirnteilen der entwicklungsgeschichtlich älteste Teil.
Das Kleinhirn ​ist für das Gleichgewicht und die Bewegungskoordination zuständig. Es ist am unbewussten Lernen beteiligt. Bei Vögeln wird hier das Flugvermögen und bei Räubern deren Jagdverhalten verarbeitet.
Das Zwischenhirn ​vermittelt sensorische und motorische Signale in Richtung Großhirn. Es werden körperliche und psychische Lebensvorgänge gesteuert. Selbst wird es hormonell oder auch über das Nervensystem gesteuert und steuert selber auch über das Hormonsystem. Es ist beispielsweise für die Schlafsteuerung, das Schmerzempfinden sowie für die Temperatursteuerung zuständig.
Das Großhirn ​verarbeitet visuelle Informationen, weiterhin werden Audioinformationen wahrgenommen. Es erfolgt auch die Bewegungskontrolle oder die Tastwahrnehmung. Das Großhirn ist für das Gedächtnis und die höheren Gehirnfunktionen zuständig.
Aufgebaut werden sämtliche Gehirnteile von Nervenzellen (auch Neuronen genannt).

1.2.2 Die biologische Nervenzelle

Die Nervenzellen sind im Gehirn in unterschiedlicher Art und Weise netzartig verbunden. Die elektrische ​​Aktivierung einer Nervenzelle führt dazu, dass sie dieses Signal an andere Nervenzellen weiterleitet. Dies kann sich in kurzen Zeitabständen (etwa 100-mal pro Sekunde) wiederholen. Damit ist die ​Signalverarbeitungsfrequenz einer Nervenzelle viel geringer als die eines Computers.
Der ​Prozessor eines Computers ist z.B. bei einem PC mit etwa 1.500 MHz getaktet. Das sind 1,5 Mrd. Verarbeitungen in der Sekunde. Die große Verarbeitungsleistung unseres Gehirns rührt von seiner parallelen Verarbeitung her. Der Prozessor eines Computers verarbeitet die Informationen sequenziell. Er eilt durch den Hauptspeicher, den man sich als langes Band von Speicherzellen vorstellen kann, und verarbeitet jeden Befehl und jedes Datum nacheinander. Und auch wenn mehrere Prozessoren gleichzeitig eingesetzt werden, arbeitet jeder Prozessor selbst immer noch sequenziell.
Im Gehirn laufen in jeder Sekunde verschiedene Sinneseindrücke ein. Wir sehen, schmecken und fühlen gleichzeitig. Dann werden auch die Reaktionen auf die Sinneseindrücke und die anderen Steuerungen gleichzeitig durchgeführt. Wir können unsere Beine und Arme gleichzeitig bewegen und hören dabei auch nicht auf zu atmen. Dabei wird – im Gegensatz zum Computer – die Trennung zwischen Daten und Algorithmus aufgehoben. Im Netzwerk des Gehirns sind beide Dinge gleichzeitig vorhanden.
Eine Nervenzelle besteht aus den ​Dendriten, dem ​Zellkörper und dem ​Axon. Diese können zu den EDV-Begriffen Eingabe, Verarbeitung und Ausgabe als äquivalent angesehen werden. Die Dendriten sammeln die Informationen in Form von elektrischen Signalen und führen diese dem Zellkörper zu. Dieser »sammelt« diese Signale, bis sie einen Schwellenwert übersteigen, und feuert seinerseits einen elektrischen Impuls entlang seines Axons.
Die Nervenzellen werden untereinander verschaltet, indem die Dendriten der nachfolgenden Zellen mit dem Axon der Vorgängerzelle in Verbindung stehen. Diese Verbindungen werden ​Synapsen genannt.
In Abbildung 1.2 werden die verschiedenen Teile einer Nervenzelle schematisch gekennzeichnet. Der Zellkörper ist als Oval dargestellt. Rechts verlässt ihn ein langes Axon. Oben, unten und links verlassen ihn netzwerkartig Dendriten, die jeweils an ihrem Ende eine Synapse besitzen. Diese Synapsen befinden sich in Kontakt mit einem oder mehreren Axonen anderer Nervenzellen. Zwischen Axon und Synapse besteht dabei ein Spalt, der nur wenige Ångström breit ist. Die Reizweiterleitung erfolgt, indem er durch chemische Botenstoffe, wie etwa das Dopamin (diese Substanzen werden auch Neurotransmitter genannt), überwunden wird.
Abb. 1.2: Schematischer Aufbau einer Nervenzelle
Der Dendrit einer Nervenzelle leitet ein elektrisches Signal weiter, das den Zellkörper erreicht. Wenn ein gewisser Schwellenwert durch mehrere Signale überwunden wird, feuert die Zelle ein elektrisches Signal entlang ihres Axons und reizt damit die an ihrem Axon angeschlossenen Synapsen und damit die anderen Nervenzellen, die mit ihm so in Verbindung stehen.
Neben einer signalverstärkenden Wirkung kann eine Synapse auch eine hemmende Wirkung haben. Diese Wirkungen können sich mit der Zeit verändern, sodass aus einer hemmenden Synapse eine verstärkende – und umgekehrt – werden kann.
Man geht heute davon aus, dass die Informationsverarbeitung des gesamten Gehirns durch die Aktivierung aller Nervenzellen dargestellt wird, die sich gegenseitig verstärken oder hemmen. Das ​Gedächtnis wird durch die Gesamtheit des Synapsen-Netzwerks gebildet.
Dabei kann man einen langsamen und einen schnellen Bereich der Informationsverarbeitung des Gehirns unterscheiden. Dem schnellen Bereich der Informationsverarbeitung gehört etwa das Kurzzeitgedächtnis an. Er kann als das jeweilige aktuelle Aktivitätsmuster sämtlicher Nervenzellen aufgefasst werden. Das Netzwerk, also die Verbindungen der Nervenzellen untereinander, kann dem langsamen Bereich (Langzeitgedächtnis) zugeordnet werden. Die Verbindungen dieses Netzwerks ändern sich mit der Zeit, indem neue Verknüpfungen...

Inhaltsverzeichnis

  1. Impressum
  2. Prolog
  3. Einleitung
  4. Kapitel 1: Neuronale Netze und das Gehirn
  5. Kapitel 2: Die Simulation des Gehirns
  6. Kapitel 3: Mustererkennung durch ein Hopfield-Netz
  7. Kapitel 4: Der bidirektionale Assoziativspeicher
  8. Kapitel 5: Das Backpropagation-Netz
  9. Kapitel 6: Vorstellung eines Programms zum Ausführen Neuronaler Netze
  10. Kapitel 7: Beispiele für Neuronale Netze
  11. Kapitel 8: Regressionsanalyse mit einem Neuronalen Netz
  12. Kapitel 9: Expertensysteme
  13. Kapitel 10: Ein Backpropagation-Netz programmieren
  14. Kapitel 11: Ausblick
  15. Anhang A: Anhang
  16. Anhang B: Dokumentierter Quelltext der Programme

375,005 Studierende vertrauen auf uns

Zugang zu über 1,5 Millionen Titeln zu einem fairen monatlichen Preis.

Mit unseren Lerntools kannst du noch effizienter lernen.

Häufig gestellte Fragen

Ja, du kannst dein Abo jederzeit über den Tab Abo in deinen Kontoeinstellungen auf der Perlego-Website kündigen. Dein Abo bleibt bis zum Ende deines aktuellen Abrechnungszeitraums aktiv. Erfahre, wie du dein Abo kündigen kannst
Nein, Bücher können nicht als externe Dateien, z. B. PDFs, zur Verwendung außerhalb von Perlego heruntergeladen werden. Du kannst jedoch Bücher in der Perlego-App herunterladen, um sie offline auf deinem Smartphone oder Tablet zu lesen. Erfahre, wie du Bücher herunterladen kannst, um sie offline zu lesen
Perlego bietet zwei Pläne an: Essential und Complete
  • Essential ist ideal für Lernende und Fachkräfte, die es genießen, eine Vielzahl von Themen zu erkunden. Greife auf die Essential Library mit über 800.000 vertrauenswürdigen Titeln und Bestsellern in den Bereichen Wirtschaft, persönliche Weiterentwicklung und Geisteswissenschaften zu. Enthält unbegrenzte Lesezeit und Standard-Vorlesestimme.
  • Complete: Perfekt für fortgeschrittene Lernende und Forschende, die vollen, uneingeschränkten Zugriff benötigen. Entsperre über 1,5 Millionen Bücher zu Hunderten von Themen, einschließlich akademischen und spezialisierten Titeln. Der Complete-Plan enthält außerdem fortschrittliche Funktionen wie Premium Vorlesen und Forschungsassistent.
Beide Pläne sind mit monatlicher, halbjährlicher oder jährlicher Abrechnungskadenz verfügbar.
Wir sind ein Online-Lehrbuch-Abonnement-Service, bei dem du für weniger als den Preis eines einzelnen Buchs pro Monat Zugriff auf eine gesamte Online-Bibliothek erhältst. Bei über 1,5 Millionen Büchern zu mehr als 990 Themen bist du bestens versorgt! Erfahre mehr über unsere Mission
Achte auf das Symbol zum Vorlesen bei deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Erfahre mehr über die Funktion „Vorlesen“
Ja! Du kannst die Perlego-App sowohl auf iOS- als auch auf Android-Geräten nutzen, damit du jederzeit und überall lesen kannst – sogar offline. Perfekt für den Weg zur Arbeit oder wenn du unterwegs bist.
Bitte beachte, dass wir Geräte, auf denen die Betriebssysteme iOS 13 und Android 7 oder noch ältere Versionen ausgeführt werden, nicht unterstützen können. Mehr über die Verwendung der App erfahren
Ja, du kannst auf Neuronale Netze - Grundlagen von Thomas Kaffka im PDF- und/oder ePUB-Format sowie auf andere beliebte Bücher in Computer Science & Computer Science General zugreifen. In unserem Katalog stehen über 1,5 Millionen Bücher zur Verfügung.