E-Book, Deutsch, 272 Seiten
Reihe: mitp Professional
Weigend Künstliche Intelligenz kapieren & programmieren
1. Auflage 2023
ISBN: 978-3-7475-0653-0
Verlag: mitp Verlags GmbH & Co.KG
Format: PDF
Kopierschutz: 1 - PDF Watermark
Visuell lernen & verstehen mit Illustrationen und Projekten zum Experimentieren
E-Book, Deutsch, 272 Seiten
Reihe: mitp Professional
ISBN: 978-3-7475-0653-0
Verlag: mitp Verlags GmbH & Co.KG
Format: PDF
Kopierschutz: 1 - PDF Watermark
Zielgruppe
Alle, die sich für künstliche Intelligenz in der Praxis interessieren
Autoren/Hrsg.
Weitere Infos & Material
1;Cover;1
2;Inhaltsverzeichnis;5
3;Einleitung;9
4;Kapitel 1: Denkende Maschinen;11
4.1;1.1 Was ist künstliche Intelligenz?;11
4.2;1.2 Chatbots;12
4.3;1.3 Vorbereitung: Python installieren;13
4.4;1.4 Projekt: Mini-Eliza;15
4.4.1;1.4.1 Schritt 1: Auf eine Eingabe reagieren;15
4.4.2;1.4.2 Schritt 2: Mehr Intelligenz durch verschachtelte if-else-Anweisungen;20
4.4.3;1.4.3 Schritt 3: Mit elif die technische Qualität verbessern;21
4.4.4;1.4.4 Schritt 4: Von der einfachen Reaktion zum Gespräch;22
4.4.5;1.4.5 Schritt 5: Jetzt kommt der Zufall ins Spiel;24
4.4.6;1.4.6 Fazit;27
4.5;1.5 Lernende Programme (Entscheidungsbäume);28
4.6;1.6 Trainingscamp: Programmieren mit Listen;29
4.6.1;1.6.1 Station 1: Indizes;29
4.6.2;1.6.2 Station 2: Listen verarbeiten;30
4.6.3;1.6.3 Station 3: Mit einer Liste von Tupeln modellieren;31
4.7;1.7 Projekt: An wen denkst du?;33
4.7.1;1.7.1 Schritt 1: Vorbereitung;35
4.7.2;1.7.2 Schritt 2: Interaktion;36
4.7.3;1.7.3 Schritt 3: Schluss;40
4.7.4;1.7.4 Fazit;40
4.8;1.8 Subsymbolische KI – Machine Learning;41
4.8.1;1.8.1 Die Grenzen symbolischer Intelligenz: Beispiel Verkehrsschilder;42
4.8.2;1.8.2 Drei Arten des Machine Learnings;43
4.8.3;1.8.3 Wie werden Verkehrszeichen erkannt?;45
4.9;1.9 Projekt: k-Means-Clustering;47
4.9.1;1.9.1 Schritt 1: Vorbereitung;48
4.9.2;1.9.2 Schritt 2: Clustern;49
4.9.3;1.9.3 Fazit;51
4.10;1.10 Rückblick;52
5;Kapitel 2: Einfache Vorhersagen – lineare Regression;53
5.1;2.1 Lernen durch Erfahrung: Wie lernt man Murmeln?;53
5.2;2.2 Projekt: Ein klassischer Währungsrechner;55
5.3;2.3 Was ist eine lineare Beziehung?;56
5.4;2.4 Lernen durch Beobachten;57
5.5;2.5 Projekt: Ein Währungsrechner, der lernen kann;62
5.6;2.6 Trainingscamp: Daten visualisieren;65
5.6.1;2.6.1 Station 1: Ein Diagramm erstellen;65
5.6.2;2.6.2 Station 2: Linienformate und Achsenbeschriftung;67
5.6.3;2.6.3 Station 3: Die range()-Funktion verwenden;68
5.6.4;2.6.4 Station 4: List Comprehensions;71
5.6.5;2.6.5 Station 5: Mehrere Kurven in einem Koordinatensystem;73
5.7;2.7 Daten professionell auswerten: Lineare Regression;74
5.8;2.8 Rückblick;78
6;Kapitel 3: Daten klassifizieren: Wie lernt ein Computer, Objekte zu erkennen?;79
6.1;3.1 Bilddaten auswerten: Von Menschen und Hunden;79
6.2;3.2 Etikettierte Daten (Labeled Data);83
6.3;3.3 Mit etikettierten Daten lernen;83
6.3.1;3.3.1 Lernschritt 1;88
6.3.2;3.3.2 Lernschritt 2;88
6.3.3;3.3.3 Lernschritt 3;89
6.4;3.4 Moderation: Gemäßigte Änderungen;91
6.5;3.5 Projekt: Ein lernfähiges Vorhersageprogramm;93
6.5.1;3.5.1 Schritt 1: Vorbereitung;94
6.5.2;3.5.2 Schritt 2: Training;94
6.5.3;3.5.3 Schritt 3: Vorhersagen;95
6.6;3.6 Hintergrund: Linear separierbare Daten;98
6.7;3.7 Noch etwas Programmiertechnik: Daten laden und speichern;100
6.7.1;3.7.1 Eine Textdatei lesen und ausgeben;101
6.7.2;3.7.2 Einen String aufspalten;103
6.8;3.8 Rückblick;106
7;Kapitel 4: Neuronale Netze;107
7.1;4.1 Neuronale Netze in der Natur;107
7.2;4.2 Feuern! Das Alles-oder-nichts-Prinzip;109
7.3;4.3 Künstliche Gehirne;110
7.4;4.4 Ein Gehirn ist kein Computer;111
7.5;4.5 Projekt: Reaktionstest – Ein Blick ins eigene Nervensystem;112
7.6;4.6 Künstliche neuronale Netze;113
7.7;4.7 Die Anfänge: Das Perzeptron von Frank Rosenblatt;115
7.8;4.8 Logische Operationen;116
7.9;4.9 Ein Perzeptron für logische Operationen;118
7.10;4.10 Training;119
7.11;4.11 Projekt: Ein Rosenblatt-Perzeptron;121
7.11.1;4.11.1 Programmteil 1: Vorbereitung;123
7.11.2;4.11.2 Programmteil 2: Definition der Funktion vorhersehen();123
7.11.3;4.11.3 Programmteil 3: Definition der Funktion trainieren();124
7.11.4;4.11.4 Programmteil 4: Das Hauptprogramm;125
7.12;4.12 Die Grenzen des einlagigen Perzeptrons: Das XOR-Problem;127
7.13;4.13 Rückblick;129
8;Kapitel 5: Moderne künstliche neuronale Netze;131
8.1;5.1 Eine bessere Aktivierungsfunktion: Die Sigmoid- Funktion;132
8.2;5.2 Projekt: Eine Wertetabelle für die Sigmoid-Funktion;133
8.3;5.3 Die Ableitung der Sigmoid-Funktion;134
8.4;5.4 Projekt: Die Sigmoid-Funktion als Aktivierungsfunktion für das ODER-Perzeptron;138
8.5;5.5 Verborgene Knoten und die Grundideen der Error Backpropagation;141
8.5.1;5.5.1 Vom Wandern in den Bergen: Das Gradientenverfahren;145
8.5.2;5.5.2 Partielle Ableitung;147
8.5.3;5.5.3 Anwendung des Gradientenverfahrens und Error Backpropagation;148
8.5.4;5.5.4 Die Änderung eines Gewichts bei einem Trainingsschritt;150
8.5.5;5.5.5 Aktualisierung der übrigen Gewichte;157
8.6;5.6 Projekt: Ein neuronales Netz, das das XOR-Problem löst;162
8.6.1;5.6.1 Programmteil 1: Vorbereitung;162
8.6.2;5.6.2 Programmteil 2: Die Funktion vorhersagen();163
8.6.3;5.6.3 Programmteil 3: Definition der Funktion trainieren();164
8.6.4;5.6.4 Programmteil 4: Zufällige Trainingsdaten erzeugen;166
8.6.5;5.6.5 Programmteil 5: Training;166
8.6.6;5.6.6 Programmteil 6: Testen;167
8.7;5.7 Projekt: Gurke oder Apfel?;168
8.7.1;5.7.1 Programm 1: Trainingsdaten erzeugen;171
8.7.2;5.7.2 Programm 2: Das neuronale Netz;172
8.8;5.8 Rückblick;179
9;Kapitel 6: Bilder auswerten und Ziffern erkennen;181
9.1;6.1 Was sind Vektoren und Matrizen?;181
9.2;6.2 Trainingscamp: NumPy;182
9.2.1;6.2.1 Vorbereitung;183
9.2.2;6.2.2 Station 1: Arrays erzeugen;183
9.2.3;6.2.3 Station 2: Operationen mit Arrays und Skalaren;186
9.2.4;6.2.4 Station 3: Operationen mit zwei Arrays;187
9.2.5;6.2.5 Station 4: Die Form eines Arrays verändern;189
9.2.6;6.2.6 Station 5: Matrizenmultiplikation mit dot();191
9.2.7;6.2.7 Station 6: Zufallsarrays;194
9.2.8;6.2.8 Station 7: Elemente eines Arrays verarbeiten;196
9.2.9;6.2.9 Station 8: Auf Elemente eines Arrays zugreifen;196
9.3;6.3 Mit Arrays die Programmierung vereinfachen;198
9.3.1;6.3.1 Programmteil 1: Vorbereitung;199
9.3.2;6.3.2 Programmteil 2: Die Funktion vorhersagen(i);200
9.3.3;6.3.3 Programmteil 3: Definition der Funktion trainieren();202
9.3.4;6.3.4 Programmteil 4: Training;204
9.4;6.4 Projekt: Ziffern erkennen;205
9.4.1;6.4.1 Trainings- und Testdaten;205
9.4.2;6.4.2 Eine Ziffer auf dem Bildschirm darstellen;208
9.4.3;6.4.3 Aufbau des neuronalen Netzes;210
9.4.4;6.4.4 Programmierung des neuronalen Netzes;211
9.5;6.5 Rückblick;218
10;Kapitel 7: Eigene Projekte zur Bilderkennung;219
10.1;7.1 Fotolabor: Bilder verarbeiten mit der Python Imaging Library (PIL);219
10.1.1;7.1.1 Vorbereitung;219
10.1.2;7.1.2 Experiment 1: Ein Bild laden und auf dem Bildschirm darstellen;221
10.1.3;7.1.3 Experiment 2: Attribute eines Image-Objekts ausgeben;221
10.1.4;7.1.4 Experiment 3: Die Größe eines Bilds ändern;222
10.1.5;7.1.5 Experiment 4: Ein Bild in eine Liste überführen;223
10.1.6;7.1.6 Experiment 5: Aus einem Farbbild ein Graustufenbild gewinnen;224
10.2;7.2 Projekt: Ziffern auf eigenen Bildern erkennen;228
10.2.1;7.2.1 Vorbereitung;228
10.2.2;7.2.2 Gewichte speichern;229
10.2.3;7.2.3 Das vortrainierte neuronale Netz nutzen;230
10.3;7.3 Projekt: Mit der Kamera Gesten erkennen;233
10.3.1;7.3.1 Vorbereitung;233
10.3.2;7.3.2 Die Kamera ausprobieren;234
10.3.3;7.3.3 Die Programmierung;236
10.4;7.4 Rückblick;242
11;Kapitel 8: Fortgeschrittene Projekte mit künstlicher Intelligenz;243
11.1;8.1 Computer Vision;243
11.2;8.2 Neuronale Netze mit PyTorch;246
11.3;8.3 KI mit Google Colaboratory;248
12;Mathematisches Wörterbuch für KI;251
12.1;Ableitung;251
12.2;Ableitung einer konstanten Funktion;251
12.3;Ableitung einer quadratischen Funktion;252
12.4;Aktivierungsfunktion;252
12.5;Baum;252
12.6;Benchmark;253
12.7;Del-Symbol ?;253
12.8;Delta ?;253
12.9;Differenzialquotient;253
12.10;Fehlerfunktion;253
12.11;Funktion (Mathematik);254
12.12;Funktion (Programmierung);254
12.13;Gleichgerichtete Lineareinheit – ReLU;255
12.14;Gleichverteilung;256
12.15;Gradient;256
12.16;Graph (Graphentheorie);256
12.17;Graph einer Funktion;257
12.18;Kettenregel;257
12.19;Knoten eines künstlichen neuronalen Netzes;258
12.20;Künstliches neuronales Netz;259
12.21;Matrix;259
12.22;Lineare Funktion;260
12.23;Lineare Separierbarkeit;260
12.24;Neuron;261
12.25;Neuronales Netz;261
12.26;Partielle Ableitung;261
12.27;Sigmoid-Funktion;261
12.28;Spaltenvektor;261
12.29;Steigung;262
12.30;Summenregel;263
12.31;tanh-Funktion;264
12.32;Target;264
12.33;Transponierte Matrix;265
12.34;XOR-Problem;265
12.35;Zeilenvektor;265
13;Stichwortverzeichnis;267