Die vorliegende Bachelorarbeit untersucht, inwieweit sich ein Lernalgorithmus auf Grundlage eines KNN zur Erkennung von handschriftlichen Ziffern anhand seiner physikalischen Eigenschaften entwickeln lässt. Es werden hierzu das Trägheitsmoment der Ziffer betrachtet, mit der Zielsetzung, eine hohe Übereinstimmung der Testergebnisse zu erzielen.
Hierbei sei angemerkt, dass es sich um einen hochexperimentellen Ansatz handelt, bei dem im Voraus unklar ist, wie das Ergebnis des Algorithmus ausfallen wird. Ziel dieser Arbeit ist es, zu untersuchen, ob durch den Einsatz von KNN in der Highperformancemöglichkeit zur Erkennung von Handschrift möglich ist.
Diese Arbeit untersucht im Allgemeinen die physikalischen Eigenschaften von Körpern hinsichtlich ihres Trägheitsmoments. Es wird gezielt der praktische Nutzen der physikalischen Eigenschaften von Körpern hinsichtlich ihrer Messbarkeit verwendet.
Der erste Teil dieser Arbeit widmet sich dem historischen Rückblick des Forschungsbereiches der KI und einer terminologischen Klärung von Begriffen, die in dieser Thematik von gewichtiger Bedeutung sind. Hierzu werden nachfolgend die Grundlagen in den Bereichen KI und NN erarbeitet. Im Anschluss werden Grundlagen der Physik im Hinblick auf den Massenschwerpunkt und das Trägheitsmoment, die bei diesem Modell zum Tragen kommen, tangiert.
Der wertschöpfende Teil der Arbeit findet sich im sechsten. Kapitel wieder. Es werden zunächst die Grundzüge der verwendeten Programmiersprache Python beleuchtet. Im Anschluss daran erfolgt eine detaillierte Wiedergabe des Algorithmus und eine Erklärung über besondere Codefragmente. Erläuterungen einzelner Codefragmente und Programmteile geben Aufschluss über Aufbau und Arbeitsweise des Algorithmus. Dabei sollen sämtliche Einzelheiten des Algorithmus aufgezeigt und verständlich transportiert werden. Abschließend werden die erarbeiteten Ergebnisse präsentiert, die Präzision des Algorithmus aufgezeigt und ein Fazit über universelle Anwendbarkeit in Abhängigkeit der Präzision der Ergebnisse und der Korrektheit des Algorithmus gezogen
Inhaltsverzeichnis
Abbildungsverzeichnis
Formelverzeichnis
Abkürzungsverzeichnis
1 Einleitung
1.1 Gliederung der Arbeit
2 Historische Entwicklung der KI
2.1 Das Leibniz‘sche Konzept
2.2 Turing-Test
2.3 McCulloch-Pitts-Neuron
2.4 Dartmouth-Konferenz
2.5 IBM’s Deep Blue gewinnt gegen Schachweltmeister 1996
2.6 IBM’s Watson gewinnt Jeopardy 2009
2.7 Apple (Siri) 2011
3 Grundlagen und Konzepte
3.1 Definition der Intelligenz
3.2 Definition der künstlichen Intelligenz
3.2.1 Schwache KI
3.2.2 Starke KI
3.3 Neuronen
3.4 Neuronale Netze
3.5 Künstliche Neuronale Netze
3.5.1 Gewichtsdynamik
3.5.2 Schwellwertfunktion
3.5.3 lineare Aktivierungsfunktion
3.5.4 Sigmoide Aktivierungsfunktion
3.6 Lernregeln
3.6.1 Hebb-Regel
3.6.2 Delta-Regel
3.6.3 Backpropagation
3.7 Machine Learning
3.7.1 Lernmethoden des ML
3.7.2 Überwachtes Lernen (engl. Supervised Learning)
3.7.3 Unüberwachtes Lernen (engl. Unsupervised learning)
3.8 Deep Learning
3.9 Big Data
4 Grundkonzept der physikalisch Inspirierten Ziffernerkennung
4.1 Überlegung und Motivation: Physikalisch inspirierte Ziffernerkennung
5 Physikalische Grundlagen des Algorithmus
5.1 Massenschwerpunkt
5.2 Trägheitsmoment
6 Umsetzung der Erarbeitung des Algorithmus
6.1 Programmierumfeld Python
6.1.1 Aufrufen der Programmbibliotheken in Python
6.2 Erarbeitung des Algorithmus
6.2.1 Crop function
6.2.2 Binarisieren
6.2.3 Threshold
6.3 Errechnung der physikalischen Eigenschaften
6.3.1 Ermittlung der Trägheitsmatrix
6.3.2 Darstellung des Trägheitstensors im 3-dimesionalen Raum
6.3.3 Anlernen des KI Klassifikators nach j
6.3.4 Aufstellen des K-nearest-neighbour Modells
6.4 Line Detection
6.4.1 Line Detection
7 Ergebnis
7.1 Darstellung mithilfe des ScatterPlot
7.2 Performance–Messung des Algorithmus
7.2.1 Performance-Messung bei 3 Ziffern mit 11 Samples
7.2.2 Performance-Messung bei 10 Ziffern mit 15 Samples
7.2.3 Performance-Messung bei 10 Ziffern bei 30 Samples
8 Zusammenfassung und Ausblick
9 Anhang
9.1 Algorithmus der physikalisch inspirierten Ziffernerkennung
9.2 Für den Algorithmus verwendete Samples
10 Literaturverzeichnis
Abbildungsverzeichnis
Abbildung 2.1 – Meilensteine in der Historie der KI (Ertel, 2013)
Abbildung 3.1 – Berechenbarkeitsmodelle (Rojas, 1996)
Abbildung 3.2 - Aufbau eines Neuronalen Netzes (Gentsch, 2019)
Abbildung 3.3 - Schematische Darstellung eines künstlichen Neurons (Tawil, 1999)
Abbildung 3.4 - Aktivierung eines künstlichen Neurons (Sibi, et al., 31.01.2013)
Abbildung 3.5 – Schwellwertfunktion (Tawil, 1999)
Abbildung 3.6 - lineare Aktivierungsfunktion (Tawil, 1999)
Abbildung 3.7 - sigmoide Aktivierungsfunktion (Tawil, 1999)
Abbildung 3.8 - Backpropagation Netz (Tawil, 1999)
Abbildung 3.9 - tiefes Neuronales Netz (Döbel, et al., 29.03.2018)
Abbildung 4.1 - Schematische Darstellung der wertschöpferischen Arbeit
Abbildung 4.2 - Darstellung eines CNN (Döbel, et al., 29.03.2018)
Abbildung 6.1 - Farbaufnahme
Abbildung 6.2 - Histogramm der Farbaufnahme
Abbildung 6.3 - Histogramm der binarisierten Threshold Grafik bei Schwellwert 160
Abbildung 6.4 - binarisierte Threshold-Routine bei Schwellwert 160
Abbildung 6.5 - binarisierte Threshold-Routine bei Schwellwert 80
Abbildung 6.6 - Histogramm der binarisierten Threshold Grafik bei Schwellwert 80
Abbildung 6.7 - Line Detection Grafik
Abbildung 6.8 - Ergebnis Line Detection
Abbildung 7.1 – Scatterplot der Ziffer 0 bei 21 Samples (1)
Abbildung 7.2 - Scatterplot der Ziffer 0 bei 21 Samples (2)
Abbildung 7.3 - 21 Samples der Ziffer 0
Abbildung 7.4 - ScatterPlot der Ziffern [1;2;3] bei 11 Samples
Abbildung 7.5 - Classification Report (1)
Abbildung 7.6 – Scatterplot bei Ziffern [0; ; 10] bei 15 Samples (1)
Abbildung 7.7 - Scatterplot bei Ziffern [0; ; 10] bei 15 Samples (2)
Abbildung 7.8 - Classification Report (2)
Abbildung 7.9 - Scatterplot aller Ziffern [0;...;10] bei 30 Samples (1)
Abbildung 7.10 - Scatterplot aller Ziffern [0;...;10] bei 30 Samples (2)
Abbildung 7.11 - Classification Report bei 30 Samples
Abbildung 9.1 - 30 Samples der Ziffer 0
Abbildung 9.2 - 30 Samples der Ziffer 1
Abbildung 9.3 - 30 Samples der Ziffer 2
Abbildung 9.4 - 30 Samples der Ziffer 3
Abbildung 9.5 - 30 Samples der Ziffer 4
Abbildung 9.6 - 30 Samples der Ziffer 5
Abbildung 9.7 - 30 Samples der Ziffer 6
Abbildung 9.8 - 30 Samples der Ziffer 7
Abbildung 9.9 - 30 Samples der Ziffer 8
Abbildung 9.10 - 30 Samples der Ziffer 9
Formelverzeichnis
Formel 1 - Gewichtsdynamik
Formel 2 - Netzinput
Formel 3 - Schwellwertfunktion
Formel 4 - lineare Aktivierungsfunktion
Formel 5 - Hebb-Regel
Formel 6 - mathematischer Ansatz d. Delta-Regel
Formel 7 - Delta-Lernregel
Formel 8 - Berechnung Massenschwerpunkt
Formel 9 - Berechnung Trägheitsmoment
Abkürzungsverzeichnis
Abbildung in dieser Leseprobe nicht enthalten
1 Einleitung
Zum Abschluss des Bachelorstudiums in Wirtschaftsingenieurwesen und der Erlangung des akademischen Grades „Bachelor of Engineering“ wird am Ende des Studiums eine wissenschaftliche Arbeit verfasst mit dem Ziel, die während dem Studium theoretisch und praktisch erlangten Kenntnisse im Rahmen einer Abschlussarbeit zu untermauern.
Die vorliegende Bachelorarbeit mit dem Titel „Methode der KI zur physikalisch inspirierten Ziffererkennung“ untersucht, inwieweit sich eine Lernalgorithmus auf Grundlage eines KNN zur Erkennung von handschriftlichen Ziffern anhand seiner physikalischen Eigenschaften entwickeln lässt. Es werden hierzu das Trägheitsmoment der Ziffer betrachtet, mit der Zielsetzung, eine hohe Übereinstimmung der Testergebnisse zu erzielen.
Hierbei sei angemerkt, dass es sich um einen hochexperimentellen Ansatz handelt, bei dem im Voraus unklar ist, wie das Ergebnis des Algorithmus ausfallen wird. Ziel dieser Arbeit ist es, zu untersuchen, ob durch den Einsatz von KNN in der Highperformancemöglichkeit zur Erkennung von Handschrift möglich ist. Diese Arbeit untersucht im Allgemeinen die physikalischen Eigenschaften von Körpern hinsichtlich ihres Trägheitsmoments. Es wird gezielt der praktische Nutzen der physikalischen Eigenschaften von Körpern hinsichtlich ihrer Messbarkeit verwendet.
1.1 Gliederung der Arbeit
Der erste Teil dieser Arbeit widmet sich dem historischen Rückblick des Forschungsbereiches der KI und einer terminologischen Klärung von Begriffen, die in dieser Thematik von gewichtiger Bedeutung sind. Hierzu werden nachfolgend die Grundlagen in den Bereichen KI und NN erarbeitet.
Im Anschluss werden Grundlagen der Physik im Hinblick auf das Massenschwerpunkt und das Trägheitsmoment, die bei diesem Modell zum Tragen kommen, tangiert.
Der wertschöpfende Teil der Arbeit findet sich im 6. Kapitel wieder. Es werden zunächst die Grundzüge der verwendeten Programmiersprache Python beleuchtet. Im Anschluss daran erfolgt eine detaillierte Wiedergabe des Algorithmus und eine Erklärung über besondere Codefragmente. Erläuterungen einzelner Codefragmente und Programmteile geben Aufschluss über Aufbau und Arbeitsweise des Algorithmus. Dabei sollen sämtliche Einzelheiten des Algorithmus aufgezeigt und verständlich transportiert werden.
Abschließend werden die erarbeiteten Ergebnisse präsentiert, die Präzision des Algorithmus aufgezeigt und ein Fazit über universelle Anwendbarkeit in Abhängigkeit der Präzision der Ergebnisse und der Korrektheit des Algorithmus gezogen.
2 Historische Entwicklung der KI
Das Verständnis des Forschungsbereiches der KI hat sich über die Jahrzehnte hinweg gewandelt. Seine Geschichte lässt sich nach den erreichten Meilensteinen in Phasen einteilen. Im Rahmen dieses Kapitels wird ein Überblick über die wichtigsten Meilensteine der Entwicklungsgeschichte von KI beginnend mit den 1950er Jahren, vermittelt werden.
Welche Bedeutung der KI im heutigen Zeitalter zugetragen wird, zeigt eine Ausgabe des Forbes Magazines aus dem Jahr 2017: „ Getragen durch die neusten Innovationen in diesem Bereich ist diese zu einem viel diskutierten Thema in Sitzungssälen, Regierungen und Medien geworden.“ (Venkatachalam, 2017)
Für zahlreiche Menschen ist durchaus fraglich, was KI konkret darstellt. Dies führt zu der Tatsache, dass es zahlreiche voneinander abweichenden Definitionen und Vorstellungen von KI gibt. Dennoch ist KI zweifellos in der Lage, Software, die Art, wie Softwaresysteme aufgebaut sind und das was programmierbar ist, neu zu definieren. Es wird ohne Frage eine Welt geschaffen, in der Maschinen anfangen zu verstehen und zu antizipieren, was der Mensch will - und dies in der Zukunft für ihn übernehmen. (Venkatachalam, 2017)
Das folgende Kapitel erarbeitet einen chronologischen Rückblick aller signifikanten Meilensteine, die der Entwicklung der KI maßgeblich beigetragen hat. Es soll besonderes Augenmerk auf die prägenden Ereignisse und Personen gelegt werden.
Die KI ist als Konsequenz zahlreicher in der Geschichte aufgetretenen wissenschaftlichen Errungenschaften entstanden. KI als eigenständiger Bereich der Wissenschaft gibt es erst seit Mitte des 20. Jahrhunderts (Ertel, 2013) und verdankt seine Terminologie der anglo-amerikanischen Übersetzung des Begriffes „Artificial Intelligence“.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2 . 1 – Meilensteine in der Historie der KI (Ertel, 2013)
Die Darstellung der historischen Entwicklung im Rahmen dieser Arbeit ist angelehnt an die Abbildung 2.1. Sie zeigt die verschiedenen KI-Ausrichtungen und ihre historischen Meilensteine. Die Breite der Balken steht analog für die Etablierung dieser Ausrichtungen. Während gegen Ende der 1950er Jahre die Prädikatenlogik insbesondere infolge der Dartmouth-Konferenz (siehe Kapitel 2.4 Dartmouth-Konferenz) einen signifikanten Aufschwung erlebte, ist festzustellen, dass sich für die meisten Anwendungen einer KI andere Modelle als besser geeignet erweisen. Die Methode des maschinellen Lernens mittels neuronaler Netze findet in den 1990er Jahren häufige Anwendung. Daraus lässt sich auch der Aufschwung des daraus abgeleiteten Deep Learning zu Beginn des neuen Jahrtausends erklären.
Ermöglicht werden Entstehung und Aufschwung von KI durch Grundbausteine, auf denen die moderne Informatik aufbaut. Diese sollen im Folgenden aufgezeigt werden.
2.1 Das Leibniz‘sche Konzept
Das nach dem Mathematiker Gottfried Leibniz (1646 – 1716) benannte Leibniz’sche Konzept repräsentiert die Grundidee, alles ließe sich in der Sprache der Mathematik abbilden. Konzeptionell sollte so sämtliches Wissen über einen Problembereich formalisiert werden können. Auf Grundlage der daraus gewonnenen Erkenntnisse kann im Anschluss gerechnet werden. Dies beschrieb Leibniz als calculus ratiocinator. Diese Darstellung und Verarbeitung von Wissen bildet nicht zuletzt die Grundlage der Computer-Programmierung und dem Verständnis der heutigen Informatik ab. (Anon., ohne Datum)
Dieses Vorgehen ist zunächst nicht KI-spezifisch. In der gängigen Programmierung wird das Wissen über eine Aufgabenstellung direkt in den Lösungsalgorithmus hineinprogrammiert.
2.2 Turing-Test
Als ein Pionier und Vorreiter im Bereich der KI erregte Alan Turing (1912 – 1954) mit dem Turing-Test erhebliches Aufsehen. Um diesen Test durchführen zu können, war es notwendig, eine Maschine zu entwickeln, die in der Lage ist, die Verarbeitung der natürlichen Sprache durchzuführen und aus den gewonnenen Informationen schlussfolgern zu können. Der Turing-Test stellt ein Experiment dar, bei dem ein Mensch und eine Maschine mit einem anderen Menschen kommunizieren. Eine Person muss widergeben, welche von beiden Kommunikationspartnern die andere Person darstellt. Beide befinden sich in getrennten Räumen. (Ertel, 2013)
Wird der Mensch von der Echtheit der menschlichen Eigenschaften der Maschine getäuscht, hat diese den Turing-Test bestanden. Dieser Umstand prägte auch den Begriff „turingmächtig“, der bis heute für Maschinen verwendet wird, die zu Hochleistungen im Stande sind.
2.3 McCulloch-Pitts-Neuron
Die Neuronen in der Informatik stellen ein Modell der Neuronen des menschlichen Gehirns dar. Ein Computer oder eine Maschine kann in der Lage sein, dieses Prinzip zu simulieren und eine Analogie zu seiner Arbeitsweise herzustellen. (Rey & Beck, ohne Datum)
1943 entwickelte der Neurologe Warren McCulloch zusammen mit dem Mathematiker Walter Pitts das erste vereinfachte Modell eines Neurons.
Das sog. McCulloch-Pitts-Neuronenmodell ist das einfachste Neuronenmodell der Neuroinformatik. Künstliche neuronale Netze aus McCulloch-Pitts-Neuronen können ausschließlich aus binären Signalen bestehen. Jedes einzelne Neuron kann als Ausgabe nur eine 1 oder 0 erzeugen. Analog zu biologischen neuronalen Netzen werden hier auch hemmende Signale bearbeitet. Jedes McCulloch-Pitts-Neuron besitzt eine beliebige reelle Zahl als Schwellenwert. (Rojas, 1996)
Ein Neuron hat zu jedem Zeitpunkt eine Schwelle, die das Neuron zur Erregung überschreiten muss, um einen Impuls auszulösen.
Folgende Annahmen werden für die Kalkulation des McCulloch-Pitts-Neurons vorausgesetzt:
1. Die Aktivität des Neurons ist ein "Alles-oder-nichts"-Prozess – es kann nur ein binäres Resultat „0“ oder „1“ existieren
2. Eine festgelegte Anzahl von Synapsen wird innerhalb der Periode von latenter Addition bestimmt. Somit können Neuronen unabhängig von ihrer vorherigen Aktivität und Position, beliebig oft erregt werden.
3. Die einzige signifikante Verzögerung innerhalb des Nervensystems ist die synaptische Verzögerung.
4. Die Aktivität jeder inhibitorischen Synapse verhindert absolut die Erregung von dem Neuron zu dieser Zeit.
5. Die Struktur des Netzes ändert sich mit der Zeit nicht (McCulloch & Pitts, 1943)
Das Modell von McCulloch und Pitts repräsentiert die Basis zur Operation logischer Modelle in der Informatik.
2.4 Dartmouth-Konferenz
Als Geburtsstunde der KI gilt die Dartmouth-Konferenz im Jahr 1956, die von dem Mathematiker John McCarthy ins Leben berufen wurde. Hierbei wurde in einem zweimonatigen Forschungsprojekt eine richtungsweisende Studie durchgeführt. Ziel des Projekts war es, zu beweisen, „ dass jeder Aspekt des Lernens oder jedes andere Merkmal der Intelligenz im Prinzip so genau umgesetzt werden kann, dass eine Maschine zur Simulation eingesetzt werden kann.“ (McCarthy, et al., 31.08.1955), wie es in der Einleitung der Studie heißt.
Die Konferenz trug den Namen „Summer Research Project on Artificial Intelligence“. Neben der Namensgebung des akademischen Forschungsgegenstandes wurden hier nicht zuletzt die Weichen für dessen Aufschwung gestellt und die Richtung maßgeblich vorgelegt.
Folgende Ereignisse der vergangenen Jahre hatten eine besondere Wirksamkeit auf die Medienwelt und die Öffentlichkeit:
2.5 IBM’s Deep Blue gewinnt gegen Schachweltmeister 1996
Der beliebte Denksport Schach galt stets als Königsdisziplin menschlichen Verstandes. Der Sieg über Schachlegende Kasparov hatte bereits einen einschüchternden Faktor auf das Publikum, zeigt jedoch das immense Potential maschinellen Lernens. Dieser Rechner war in der Lage 200 Mio. Schachzüge pro Sekunde zu berechnen und infolgedessen den vielversprechendsten Schachzug vorherzusehen. (Gentsch, 2019)
2.6 IBM’s Watson gewinnt Jeopardy 2009
Der IT-Konzern startete einige weitere Projekte, um mit KI sowohl Forschung zu betreiben, als auch Öffentlichkeitswirksamkeit zu erlangen. So kam es auch zu dem Auftritt in einer US-Amerikanischen TV-show, bei dem eine von IBM programmierte KI mit dem Namen „Watson“ gegen andere Kandidaten antrat. Watson ist insbesondere eine "Frage-Antwortmaschine", an der die Forscher der KI Jahrzehntelang gearbeitet haben - ein Computer, welcher in natürlicher Sprache gestellte Fragen verstehen und beantworten, auf immense Datenmengen zugreifen kann und schließlich alle Kandidaten besiegte. (Markoff, 2011)
2.7 Apple (Siri) 2011
Der auf KI basierende Sprachassistent von Apple Siri, der mit dem iPhone 4s im Jahr 2011 vorgestellt wurde, basiert auf der Methode des Natural Language Processing (NLP). Hierbei wird die von Menschen gesprochenen oder geschriebenen Aussagen von rechnergestützten Methoden verarbeitet. (Assal, 04.2011)
Wörter werden als Audiosignale erkannt und verarbeitet. Hervorzuheben ist, dass Siri als Paradebeispiel einer schwachen KI anzusehen ist, da jegliche Verarbeitung auf rein statistische Zusammenhänge zurückzuführen ist und somit kein tiefergehendes Verständnis erlangt wird.
3 Grundlagen und Konzepte
Es ist nützlich, in diesem Kapitel mit einer Klärung grundlegender Begriffe zu beginnen, um einen Einstieg in die Thematik zu finden. Ferner werden nun die Methoden und elementare Technologien der KI vorgestellt.
Des Weiteren werden die Teilgebiete, wie das maschinelle Lernen, Big Data und Neuronale Netze in Verbindung mit KI definiert.
3.1 Definition der Intelligenz
Die KI der menschlichen Intelligenz gleichzusetzen ist keineswegs sinngemäß. Eine Abgrenzung beider Begrifflichkeiten ist in dem Forschungsgebiet unumgänglich:
Um der Definition des Duden zu folgen ist Intelligenz die „ Fähigkeit (des Menschen), abstrakt und vernünftig zu denken und daraus zweckvolles Handeln abzuleiten “. Hier wird interessanterweise der Mensch explizit erwähnt. Dies erlaubt die Schlussfolgerung, dass diese Definition nicht konsequent auch auf Maschinen übertragbar sei. (Duden, kein Datum)
Bereits 53 v. Chr. bemühte sich der römische Gelehrte Marcus Tullios Cicero um eine Definition der menschlichen Intelligenz: „sie ist das Vermögen, das den Geist befähigt, die Wirklichkeit zu verstehen.“ (Peters, 2013). Auch dieser Definitionsversucht beinhaltet die Terminologie des (menschlichen) „Geistes“, der nach sowohl damaligen, als auch heutigem Verständnis mehr als nur das Instrument zur Erkennung logischer Zusammenhänge anzusehen ist.
Zahlreiche Psychologen, Neurowissenschaftler und Neurobiologen taten es ihm gleich, eine greifbare Definition dessen zu verfassen, was allgemeinhin als Intelligenz zu verstehen ist. Heute tangiert die Begriffsdefinition die verschiedensten Bereiche der Wissenschaft und hat nun auch den Weg in die Informationstechnologie gefunden.
Insgesamt hat sich ein neuer Forschungsbereich hervorgetan, der die menschliche Intelligenz zu beschreiben versucht.
Einen faktoranalytischen Ansatz liefert der Psychologe Charles Spearman (1863 – 1945) in „The Abilities of Man“.
Hier unterscheidet er zwischen der allgemeinen Intelligenz, die in jedem Menschen in Form kognitiver Fähigkeiten, Verarbeitungsgeschwindigkeit, geistiger Kapazität und intellektueller Leistung zur Verfügung stehen und der speziellen Intelligenz, die ein Mensch bei Konzentration entwickelter Fähigkeiten in einem bestimmten Bereich entwickelt wird. (Spearman nach Egle, 2013)
3.2 Definition der künstlichen Intelligenz
Die Terminologie „Artificial Intelligence“ wurde als erstes vom US-amerikanischen Informatiker John McCarthy 1956 geprägt, weist jedoch bis zum heutigen Zeitpunkt keine flächendeckende und einheitliche Definition vor. Gleichwohl mangelt es ihr an einer verbindlichen, allgemein akzeptierten Definition ihres Forschungsgegenstands.
Um einer aussagekräftigen Definition für KI nahezukommen, muss zunächst beleuchtet, dass sich diese wenn auch stark, nur an der Intelligenz des Menschen anlehnen kann.
Eine kerntreffende Definition für die Relevanz der KI-Systeme, liegt in der Tatsache, dass das Wissen nicht als Teil der Intelligenz umfasst wird. Vielmehr wird dessen Lernfähigkeit und die damit verbundenen Prognosen über die Zukunft als ein großen Mehrwert für den Anwender angesehen. (Dobrev, 19.01.2004)
Eine eindeutige Beantwortung nach der Frage über eine allumfassende, einheitliche Definition lässt sich in dieser Form nicht beantworten. Es gibt unzählige Definitionsversuche für den Begriff KI, die je nach fachlichem und historischem Ursprung einen anderen Schwerpunkt und eine andere Facettierung haben.
Für die folgende Abgrenzung zweier Arten von KI ist zunächst eine genauere Betrachtung der Begriffe interessant. Das Adjektiv „schwach“ wird gemeinhin als nicht-leistungsfähig oder keine Wirksamkeit besitzend verstanden. Gegenüber dessen wird sein Gegenteil „stark“ etwa mit leistungsstark und große (Arbeits-)Kraft besitzend verstanden. Tatsächlich spielt dieses Verständnis der Wörter eine untergeordnete Rolle. Ausschlaggebend ist hierbei die Arbeitsweise der Modelle. Im Folgenden soll hierauf genauer eingegangen werden.
3.2.1 Schwache KI
Eine schwache KI ist bestrebt, menschliches Handeln zu unterstützen. Die Problemlösung erfolgt hierbei auf Basis von Methoden der Mathematik und Informatik, die speziell für die jeweilige Anforderung entwickelt und optimiert werden.
3.2.2 Starke KI
Im Gegensatz zur schwachen KI, ist eine starke KI in der Lage, nicht nur reaktiv auf erlerntes Wissen zurückzugreifen, sondern erarbeitet sich proaktiv Wissen und Erfahrungen und erweitert so sein Lernvermögen, ähnlich des eines Menschen. Überdies ist eine starke KI neben ihrer Fähigkeit, völlig autonome Entscheidungen zu treffen bestrebt, alle intellektuellen menschlichen Fähigkeiten zu erlernen und zu übertreffen. Derzeit steht starke KI eine lediglich hypothetische Möglichkeit des maschinellen Lernens dar. (Scherk, et al., 05.2017)
3.3 Neuronen
Der Begriff Neuron hat seinen Ursprung in der altgriechischen Sprache und trägt die Bedeutung „Nerv“. Seine Aufgabe liegt in der Übertragung und dem Erhalt von Informationen mittels elektrischer Impulse. (Rojas, 1996)
Ein einzelnes Neuron kann lediglich eine Information basierend auf einem Eingabesignal widergeben, ohne einen Eingriff auf die Information selbst ausüben zu können.
Vorbild dieses Prinzips liefert das menschliche Gehirn. Die Informationsgewinnung und -weiterleitung funktioniert auch hier über parallelgeschaltete Neuronen. Damit bedient sich dieses Modell, wie so oft auch an der Natur selbst.
Im menschlichen Gehirn erfolgt die Informationsübertragung mittels Neuronen. Die Bestandteile eines jeden Neuron sind das „Axon“, welches über sog. „Dendriten“ eine Verbindung zu anderen Neuronen herstellt. Potenziert stellt dieser Umstand die Tatsache dar, der wir Menschen die Fähigkeit verdanken, Neues zu lernen, Zusammenhänge zu erkennen, Schlussfolgerungen zu ziehen und nicht zuletzt in unser Umgebung zurechtzufinden. (Monpetain, 1998)
Folgende Annahmen sind vorauszusetzen:
- Je komplexer die Vernetzung der Neuronen ist, desto effektiver arbeitet ein System
- Jede zusätzliche Schicht erhöht das Potential des Systems
- Der Umfang an Trainingsdaten eines Algorithmus steht in konkretem Verhältnis zum Verbesserungspotential seines Modells und der damit einhergehenden Senkung der Fehlerquote
Das Prinzip einer KI basiert auf der Rekonstruktion der Arbeitsweise und Struktur des Neuronengeflechts im Gehirn. Die Neuronen eines KNN sind ebenfalls auf Erregungsleitung und Erregungsübertragung ausgerichtet und können durch ihre Aktivität Informationen verarbeiten, weiterleiten und Lernprozesse realisieren.
In der Informatik spricht man von Neuronen als ein Element, das aus einem Eingabesignal ein Ausgabesignal widergibt – mit sehr begrenztem Umfang der Manipulation des Eingabesignals.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 1 – Berechenbarkeitsmodelle (Rojas, 1996)
Die Forschungsarbeit an Neuronen schuf nicht zuletzt einen Nährboden für die Arbeit auf dem Gebiet der künstlichen Neuronalen Netze als alternatives Berechenbarkeitsmodell. Diese werden in der Mathematik und insbesondere der Informatik behandelt, da sich die Möglichkeit zur Berechnung logischer Operationen durch die Anwendung Neuronaler Netze bietet. (Rojas, 1996)
Nun soll die Funktionsweise eines Neurons in einem Geflecht (Neuronalen Netz) genauer beleuchtet werden.
3.4 Neuronale Netze
NN werden in der Mathematik und Informatik thematisiert, da sie einen alternativen Ansatz von Berechenbarkeit anbieten. Das macht diesen Forschungsbereich hochinteressant. Der Grund dafür, dass eine allgemein anerkannte Definition zu NN schwer zu liefern ist, ist u.a. dem Umstand geschuldet, dass es in der Realität als Oberbegriff zu verstehen ist. (Rey & Wender, 2018) Eine greifbare Vorstellung davon, was NN repräsentieren liefert die Betrachtung auf Gemeinsamkeiten zwischen NN:
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 2 - Aufbau eines Neuronalen Netzes (Gentsch, 2019)
Abbildung 3.2 schildert die Arbeitsweise und zeigt Komponenten eines NN auf. Diese folgen stets demselben Schema:
NN jeder Art erhalten Input in Form von Informationen, die zu einem Output in Form von Informationen transformiert werden. Das Netzt ist während der Verarbeitung in der Lage, sich mithilfe von Adjustierung seiner Gewichtungen umzustrukturieren (Rey & Wender, 2018). Man spricht hierbei von Schichten (engl. Layers).
In NN werden Neuronen auch Units genannt. Units des Input-Layer werden Input-Units genannt und erhalten von der Außenwelt ausgesendete Signale und Informationen in Form von Zahlen. Den hier in Rot abgebildeten Input-Layer wird eine Aufgaben- oder Problemstellung eingepflegt, welches auf die einzelnen Neuronen dieser Schicht verteilt werden.
Im Hidden Layer befinden sich die Hidden Units, die durch Umstrukturierung und Gewichtung (siehe Kapitel 3.5.1 Gewichtsdynamik) die Eingangssignale der Input Units verarbeiten und zum für den Nutzer gewünschten Output verarbeiten. In einem funktionierenden System verändern die Hidden Layer ihre Struktur und beeinflussen den Output in gewünschter Art und Weise.
Output-Units der Output-Layer geben Signale und Informationen an die Außenwelt zurück.
Folgt man den Ansätzen von Rojas, so gibt das Verhalten und nicht die Struktur den Lernprozess eines NN vor. (Rojas, 1996)
3.5 Künstliche Neuronale Netze
KNN stellen ein aus unterschiedlicher Anzahl von Neuronen informationsverarbeitendes System dar. Die Neuronen senden sich über gerichtete Verbindungen Informationen zu. Die Art der Information ist auf zwei Zustände reduziert, einer aktivierten und einer nicht aktivierten Zelle.
Im Allgemeinen lassen sich KNN in zwei Bereiche unterteilen:
1. Künstliche neuronale Netze, die modelliert werden, um menschliches Verhalten und Erleben bzw. die Funktionsweise des menschlichen Gehirns besser zu verstehen.
2. Künstliche neuronale Netze, die dazu dienen konkrete Anwendungsprobleme aus Bereichen der Informatik und vielen anderen Gebieten zu lösen.
Auf die in Punkt 2 eingegangenen Aspekte soll in diesem Kapitel genauer eingegangen werden.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 3 - Schematische Darstellung eines künstlichen Neurons (Tawil, 1999)
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.3 zeigt auf, dass ein KNN durch den programmierten Lernalgorithmus die „Fähigkeit“ besitzt, das sein Verhalten auf veränderte Bedingungen hin anzupassen. Die Funktionsweise des KNN ist also nicht auf ein bestimmtes Problem hin ausgerichtet, sondern lernt durch die Verarbeitung der Informationen und Verschaltung der Neuronen, ein stetig präziseres und treffsichereres Ergebnis widerzugeben und gehören zu den effektivsten Lernmethoden, die derzeit bekannt sind.
In NN ist keine eindeutige Netztopologie nachzuweisen, da die Units in komplexen Strukturen angeordnet sind. Die Topologie der Neuronen ist nicht als starr zu betrachten. Während der Lernphase kann diese noch Änderungen in seiner Struktur erzeugen oder erheblich ausbauen.
Als Pendant hierzu ist im supervised Learning die Festlegung ganzheitlicher Anforderungen an die KNN vorgesehen. Sämtliche Gewichtungen richten sich nach jenen Signalen. Der gesamte Lernprozess ist darauf ausgerichtet, sich entsprechend der festgelegten Anforderungen anzupassen. Zusammenfassend ist also erschließen, dass bei KNN der Lernprozess auf die stetige Anpassung von Gewichtungen zurückzuführen ist.
3.5.1 Gewichtsdynamik
Die Informationen sind in den Gewichten neuronaler Netze abgespeichert. Lernnetzwerke mit zahlreichen, miteinander verbundenen Schichten liefern eine robuste Bandbreite von Möglichkeiten der Programmierung. Daher ist es unerlässlich, zu begreifen, wie man die Gewichte für ein einzelnes Perzeptron lernt:
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 4 - Aktivierung eines künstlichen Neurons (Sibi, et al., 31.01.2013)
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.4 veranschaulicht das Prinzip der Gewichtungen von Eingangssignalen und des daraus resultierenden Aktivierungspotentials eines einzelnen Neurons.
Die Information, die ein Neuron von einem anderen Neuron erhält, lässt sich mathematisch wie folgt abbilden:
Formel 1 - Gewichtsdynamik
Abbildung in dieser Leseprobe nicht enthalten
Das Neuron enthält zahlreiche mathematische Funktionen zur Informationsverarbei-tung. Die Ausgabewerte werden gewichtet. Die Aufsummierung der Gewichtungen bestimmt das Aktivierungspotential des Neurons und bestimmt somit die Ausgabeinformation.
beschreibt hierbei die bewertete Verbindung von Zwei Neuronen, die miteinander geschaltet sind.
Der gesamte Netzinput lässt sich wie folgt berechnen:
Formel 2 - Netzinput
Abbildung in dieser Leseprobe nicht enthalten
Hier besteht das Lernproblem darin, einen Gewichtungsvektor zu bestimmen, der das Perzeptron (den Perzeptronalgorithmus) dazu veranlasst, für jedes der gegebenen Trainingsbeispiele den korrekten f 1-Ausgang zu erzeugen. In NN ist das erlernte „Wissen“ in den Gewichten gespeichert, welche sich verteilt zwischen den Netzschichten befinden. Die Darstellung der Verbindungen einzelner Neuronen wird durch Gewichtungen bewertet. Die Größe der Gewichtung steigt mit dem Einfluss eines Neurons auf ein anderes analog an. Beim unüberwachten Lernen (unsupervised Learning) werden zum Zwecke der Anpassung lokaler Gewichtungen Lernregeln festgeschrieben.
In den Neuronen findet eine Gewichtung der Eingangssignale statt, d.h. die Signale werden entweder geschwächt oder gestärkt. Die Gewichtung lässt sich mathematisch als negativ, positiv oder neutral darstellen. Das Vorzeichen bestimmt die Wertigkeit der Beziehung zweier Neuronen. Negatives Gewicht bedeutet, dass der Einfluss auf die betroffene Unit hemmender Natur ist. Ein Gewicht von eins konstatiert einen bestehenden Einfluss auf die betroffene Unit. Eine Gewichtung von Null besagt, dass ein Neuron auf ein anderes keinen Einfluss ausübt. Jegliche Informationen, über die das neuronale Netz verfügt, ist also in seinen Gewichtungen erfasst.
Im Folgenden werden die drei am häufigsten Verwendete Varianten näher beschrieben.
3.5.2 Schwellwertfunktion
Schwellwerte treten in verschiedensten wissenschaftlichen Bereichen auf nehmen auch in der Informatik eine besondere Rolle ein. In der Mathematik steht ein Schwellwert für das genau definierte Limit, das für die Signalverarbeitung benötigt wird. Liegt ein Wert von über einem vordefinierten Wert (dem Schwellwert), realisiert der Algorithmus die Aktivierung der Funktion. Wenn er unter dem Schwellenwert liegt, bleibt die Verbindung inaktiv.
Formel 3 - Schwellwertfunktion
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 5 – Schwellwertfunktion (Tawil, 1999)
Abbildung in dieser Leseprobe nicht enthalten
Wenn der Input einen bestimmten Schwellenwert erreicht (hier ist es 0), dann wird das Neuron aktiviert. Als Konsequenz entsteht eine Reaktion mit dem Ergebnis, dass dieses Neuron „gefeuert“ wird. Bei Nichterreichung des Schwellwertes kommt es zu keiner Reaktion.
3.5.3 lineare Aktivierungsfunktion
Die lineare Aktivierungsfunktion erzeugt ausschließlich positive Zahlen über den gesamten reellen Zahlenbereich. Hierbei ist der Zusammenhang zwischen Netzinput und Aktivitätslevel stehts linear und verläuft sowohl nach oben als auch nach unten hin ohne Beschränkung. (Rey & Wender, 2018)
Formel 4 - lineare Aktivierungsfunktion
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 6 - lineare Aktivierungsfunktion (Tawil, 1999)
Abbildung in dieser Leseprobe nicht enthalten
Der Graph der Funktion ist oben abgebildet. Es handelt sich um eine äußerst einfache Funktion. Hier gilt nicht die "Alles oder Nichts Regel", vielmehr werden die Neuronen umso stärker aktiviert, je größer der Input war.
3.5.4 Sigmoide Aktivierungsfunktion
Eine in KNN am häufigsten verwendete Aktivierungsfunktion ist die Sigmoidfunktion, aufgrund ihrer einfachen Differenzierbarkeit. Dadurch kann der Einsatz von fehlerrückführenden Algorithmen ermöglicht werden.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 . 7 - sigmoide Aktivierungsfunktion (Tawil, 1999)
Abbildung in dieser Leseprobe nicht enthalten
Die sigmoide Aktivierungsfunktion gibt nur positive Zahlen zwischen 0 und 1 wieder. Diese Aktivierungsfunktion ist am nützlichsten für Trainingsdaten, die ebenfalls zwischen 0 und 1 liegen. {\displaystyle \operatorname {sig} ^{\prime }(t)=\operatorname {sig} (t)\left(1-\operatorname {sig} (t)\right).}
Die Funktion ist vollständig differenzierbar. Durch die Verwendung der Sigmoide als Aktivierungsfunktion des Neurons verhält sich die Fehlerfunktion des Algorithmus analog hierzu.
3.6 Lernregeln
Lernregeln sind Algorithmen. Die Art und Weise, wie der Algorithmus arbeitet, bezeichnet das Lernverfahren anhand dessen das KNN lernt, aus gegebenen Inputdaten den gewünschten Output darzustellen.
Da Lernverfahren ein zentraler Bestandteil künstlicher Neuronaler Netze sind, werden im Folgenden die wichtigsten Lernregeln, die im Zusammenhang mit NN fallen intensiver beleuchtet. (Anon., kein Datum)
3.6.1 Hebb-Regel
Einer der einfachsten Lernregeln mit großer biologischer Plausibilität stammt vom Psychologen Donald Olding Hebb. In seinem Buch "The Organization of Behavior" aus dem Jahr 1949 formulierte der Kanadier die hebbsche Lernregel:
„Cells that fire together, wire together“ – zu Deutsch: „sind beide Units zeitgleich aktiv, verändert sich die Gewichtung zwischen ebendiesen Units“.
"Wenn ein Axon der Zelle A ... Zelle B erregt und wiederholt und dauerhaft zur Erzeugung von Aktionspotentialen in Zelle B beiträgt, so resultiert dies in Wachstumsprozessen oder metabolischen Veränderungen in einer oder in beiden Zellen, die bewirken, dass die Effizienz von Zelle A in Bezug auf die Erzeugung eines Aktionspotentials in B größer wird." (Hebb, ohne Datum)
Die Hebb-Regel lässt sich mathematisch nach den zugrundeliegenden Ausführungen wie folgt abbilden:
[...]
-
-
-
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
-
¡Carge sus propios textos! Gane dinero y un iPhone X.