Künstliche Intelligenz und neuronale Netze sind Teil eines der interessantesten Themengebiete der modernen Informatik. Jene sind allerdings recht komplex und vor allem im Detail nicht sehr leicht verständlich. In dieser Facharbeit werden künstliche neuronale Netze von Grund auf modelliert und in Python implementiert. Mit diesem Bottom-Up-Ansatz soll das Konzept und die konkrete Funktionsweise jener Strukturen verständlich werden.
Hierbei wird das Konzept eines künstlichen neuronalen Netzwerks erklärt. Zuerst werden die mathematischen Grundlagen erarbeitet und optimiert. Danach werden Feedforward-Netzwerke in Python selbstständig Schritt für Schritt implementiert und mithilfe des Backpropagation-Algorithmus auf 60000 Abbildungen handschriftlich gezeichneter Ziffern trainiert. Es werden hierbei verschiedene Netzwerkstrukturen analysiert. Mit der Bibliothek TensorFlow werden ebenfalls ähnliche Netze erstellt und mit der eigenen Implementierung verglichen.
Diverse Probleme wie Overfitting und Underfitting werden erläutert und diskutiert.Mithilfe eines Programmes wird die Klassifizierung eigener Zeichnungen ermöglicht und demonstriert. Es wird festgestellt, dass es für jedes Problem eine optimale Netzstruktur geben muss, und dass ein komplexeres Netz nicht zwingend mit einer höheren Genauigkeit verbunden sein muss. Die eigene Implementierung unterscheidet sich von der modernen Bibliothek hauptsächlich im Kriterium Geschwindigkeit (Zeitkosten).
Inhaltsverzeichnis
- Motivation und Schwerpunkt
- Motivation
- Schwerpunkt und Ergebnis
- Theoretischer Teil
- Was ist ein neuronales Netz?
- Neuronen
- Künstliche neuronale Netze
- Künstliche Neuronen
- Neuronenschichten
- Feedforward
- Backpropagation
- Vorstellung der Bibliothek TensorFlow
- Anwendungsbeispiel Handschrifterkennung
- Erwartungen
- Praktischer Teil
- Implementierung
- Grundlegende Klassenstrukturen
- Feedforward-Algorithmus
- Backpropagation-Algorithmus
- Analyse
- Verschiedene Netzstrukturen
- Verarbeitung selbstständig erstellter Daten (/Zeichnungen)
- Ergebnisse
- Rechnereigenschaften
- Genauigkeitsverlauf
- Vergleich mit TensorFlow
- Diskussion
- Differenzen zwischen den Strukturen
- Differenzen zwischen eigenem Netz und TensorFlow-Netz
Zielsetzung und Themenschwerpunkte
Diese Facharbeit befasst sich mit der Implementierung und dem Vergleich eigener neuronaler Netze zur Handschrifterkennung. Ziel ist es, ein Feedforward-Netzwerk in Python zu erstellen und mit dem Backpropagation-Algorithmus zu trainieren, um die Fähigkeit zu entwickeln, handschriftlich gezeichnete Ziffern zu erkennen. Die Arbeit analysiert die Auswirkungen verschiedener Netzwerkstrukturen und Lernraten auf die Genauigkeit des Modells und vergleicht die Ergebnisse mit der modernen Bibliothek TensorFlow.
- Konzept und Funktionsweise neuronaler Netze
- Implementierung eines Feedforward-Netzwerks mit Backpropagation
- Trainieren des Netzwerks mit Datensätzen von handschriftlichen Ziffern
- Analyse von verschiedenen Netzwerkstrukturen und Lernraten
- Vergleich der Ergebnisse mit der Bibliothek TensorFlow
Zusammenfassung der Kapitel
Die Arbeit beginnt mit einer Motivation und einer Beschreibung des Schwerpunkts. Im theoretischen Teil werden die grundlegenden Konzepte neuronaler Netze erläutert, einschließlich der Funktionsweise von Neuronen, künstlichen Neuronen, Neuronenschichten und der Backpropagation. Darüber hinaus wird die Bibliothek TensorFlow vorgestellt und die Anwendung von neuronalen Netzen im Bereich der Handschrifterkennung beleuchtet. Der praktische Teil befasst sich mit der Implementierung des eigenen neuronalen Netzes, einschließlich der Beschreibung der Klassenstrukturen, des Feedforward- und Backpropagation-Algorithmus. Die Analyse untersucht verschiedene Netzstrukturen und ihre Auswirkungen auf die Genauigkeit. Die Ergebnisse zeigen den Verlauf der Genauigkeit des Modells und vergleichen die Ergebnisse mit TensorFlow. Abschließend werden die Unterschiede zwischen den verschiedenen Strukturen und zwischen der eigenen Implementierung und TensorFlow diskutiert.
Schlüsselwörter
Neuronale Netze, Feedforward-Netzwerk, Backpropagation, Handschrifterkennung, TensorFlow, Netzstruktur, Lernrate, Genauigkeit, Implementierung, Analyse, Vergleich.
- Quote paper
- Anonym (Author), 2019, Modellierung, Implementierung und Strukturvergleich eigener neuronaler Netze zur Handschrifterkennung und Vergleich mit modernen Bibliotheken, Munich, GRIN Verlag, https://www.grin.com/document/900934