Künstliche Intelligenz kapieren & programmieren -  Michael Weigend

Künstliche Intelligenz kapieren & programmieren (eBook)

Visuell lernen & verstehen mit Illustrationen und Projekten zum Experimentieren
eBook Download: PDF
2023 | 1. Auflage
272 Seiten
MITP Verlags GmbH & Co. KG
978-3-7475-0653-0 (ISBN)
Systemvoraussetzungen
24,99 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
  • Neuronale Netze selbst programmieren ohne Vorkenntnisse
  • Spannende Projekte von Chatbots bis hin zu Bilderkennung
  • Alle Grundlagen anhand von Bildern und Beispielen leicht verständlich erklärt

Du möchtest wissen, was hinter künstlicher Intelligenz und neuronalen Netzen steckt und deine eigenen selbstlernenden Programme schreiben?

In diesem Buch erfährst du mit anschaulichen Erklärungen und vielen Bildern, wie KI funktioniert und wie du neuronale Netze ganz einfach selbst programmieren kannst. Dafür brauchst du keine Vorkenntnisse. Alle notwendigen mathematischen Konzepte werden von Grund auf und sehr anschaulich erklärt. Ganz nebenbei erhältst du eine Einführung in die Programmiersprache Python.

In jedem Kapitel erwarten dich spannende Projekte von ersten kleinen Programmen wie einem selbstlernenden Währungsrechner bis hin zu praxistauglicher Bilderkennung.

Denkaufgaben und Programmierübungen mit Lösungen zum Download helfen dir, dein Wissen zu testen und zu vertiefen. So lernst du Schritt für Schritt, wie du mit einfachen Programmiertechniken deine eigenen künstlichen neuronalen Netze entwickelst und trainierst.

Aus dem Inhalt
  • Entscheidungsbäume
  • Überwachtes und nicht überwachtes Lernen
  • Clustering
  • Perzeptron
  • Vorhersagen treffen
  • Datenvisualisierung mit matplotlib
  • Neuronale Netze programmieren und trainieren
  • Aktivierungsfunktionen
  • Verborgene Schichten
  • Berechnungen mit NumPy
  • Bilderkennung
  • Python Imaging Library (PIL)
  • Computer Vision
  • Mathematisches Glossar


Michael Weigend war mehr als 30 Jahre lang als Lehrer tätig und hält an der Universität Münster Vorlesungen zur Python-Programmierung. In seinen Büchern legt er besonderen Wert auf leicht verständliche Erklärungen und visuelle Lehrmethoden.

Cover 1
Inhaltsverzeichnis 5
Einleitung 9
Kapitel 1: Denkende Maschinen 11
1.1 Was ist künstliche Intelligenz? 11
1.2 Chatbots 12
1.3 Vorbereitung: Python installieren 13
1.4 Projekt: Mini-Eliza 15
1.4.1 Schritt 1: Auf eine Eingabe reagieren 15
1.4.2 Schritt 2: Mehr Intelligenz durch verschachtelte if-else-Anweisungen 20
1.4.3 Schritt 3: Mit elif die technische Qualität verbessern 21
1.4.4 Schritt 4: Von der einfachen Reaktion zum Gespräch 22
1.4.5 Schritt 5: Jetzt kommt der Zufall ins Spiel 24
1.4.6 Fazit 27
1.5 Lernende Programme (Entscheidungsbäume) 28
1.6 Trainingscamp: Programmieren mit Listen 29
1.6.1 Station 1: Indizes 29
1.6.2 Station 2: Listen verarbeiten 30
1.6.3 Station 3: Mit einer Liste von Tupeln modellieren 31
1.7 Projekt: An wen denkst du? 33
1.7.1 Schritt 1: Vorbereitung 35
1.7.2 Schritt 2: Interaktion 36
1.7.3 Schritt 3: Schluss 40
1.7.4 Fazit 40
1.8 Subsymbolische KI – Machine Learning 41
1.8.1 Die Grenzen symbolischer Intelligenz: Beispiel Verkehrsschilder 42
1.8.2 Drei Arten des Machine Learnings 43
1.8.3 Wie werden Verkehrszeichen erkannt? 45
1.9 Projekt: k-Means-Clustering 47
1.9.1 Schritt 1: Vorbereitung 48
1.9.2 Schritt 2: Clustern 49
1.9.3 Fazit 51
1.10 Rückblick 52
Kapitel 2: Einfache Vorhersagen – lineare Regression 53
2.1 Lernen durch Erfahrung: Wie lernt man Murmeln? 53
2.2 Projekt: Ein klassischer Währungsrechner 55
2.3 Was ist eine lineare Beziehung? 56
2.4 Lernen durch Beobachten 57
2.5 Projekt: Ein Währungsrechner, der lernen kann 62
2.6 Trainingscamp: Daten visualisieren 65
2.6.1 Station 1: Ein Diagramm erstellen 65
2.6.2 Station 2: Linienformate und Achsenbeschriftung 67
2.6.3 Station 3: Die range()-Funktion verwenden 68
2.6.4 Station 4: List Comprehensions 71
2.6.5 Station 5: Mehrere Kurven in einem Koordinatensystem 73
2.7 Daten professionell auswerten: Lineare Regression 74
2.8 Rückblick 78
Kapitel 3: Daten klassifizieren: Wie lernt ein Computer, Objekte zu erkennen? 79
3.1 Bilddaten auswerten: Von Menschen und Hunden 79
3.2 Etikettierte Daten (Labeled Data) 83
3.3 Mit etikettierten Daten lernen 83
3.3.1 Lernschritt 1 88
3.3.2 Lernschritt 2 88
3.3.3 Lernschritt 3 89
3.4 Moderation: Gemäßigte Änderungen 91
3.5 Projekt: Ein lernfähiges Vorhersageprogramm 93
3.5.1 Schritt 1: Vorbereitung 94
3.5.2 Schritt 2: Training 94
3.5.3 Schritt 3: Vorhersagen 95
3.6 Hintergrund: Linear separierbare Daten 98
3.7 Noch etwas Programmiertechnik: Daten laden und speichern 100
3.7.1 Eine Textdatei lesen und ausgeben 101
3.7.2 Einen String aufspalten 103
3.8 Rückblick 106
Kapitel 4: Neuronale Netze 107
4.1 Neuronale Netze in der Natur 107
4.2 Feuern! Das Alles-oder-nichts-Prinzip 109
4.3 Künstliche Gehirne 110
4.4 Ein Gehirn ist kein Computer 111
4.5 Projekt: Reaktionstest – Ein Blick ins eigene Nervensystem 112
4.6 Künstliche neuronale Netze 113
4.7 Die Anfänge: Das Perzeptron von Frank Rosenblatt 115
4.8 Logische Operationen 116
4.9 Ein Perzeptron für logische Operationen 118
4.10 Training 119
4.11 Projekt: Ein Rosenblatt-Perzeptron 121
4.11.1 Programmteil 1: Vorbereitung 123
4.11.2 Programmteil 2: Definition der Funktion vorhersehen() 123
4.11.3 Programmteil 3: Definition der Funktion trainieren() 124
4.11.4 Programmteil 4: Das Hauptprogramm 125
4.12 Die Grenzen des einlagigen Perzeptrons: Das XOR-Problem 127
4.13 Rückblick 129
Kapitel 5: Moderne künstliche neuronale Netze 131
5.1 Eine bessere Aktivierungsfunktion: Die Sigmoid- Funktion 132
5.2 Projekt: Eine Wertetabelle für die Sigmoid-Funktion 133
5.3 Die Ableitung der Sigmoid-Funktion 134
5.4 Projekt: Die Sigmoid-Funktion als Aktivierungsfunktion für das ODER-Perzeptron 138
5.5 Verborgene Knoten und die Grundideen der Error Backpropagation 141
5.5.1 Vom Wandern in den Bergen: Das Gradientenverfahren 145
5.5.2 Partielle Ableitung 147
5.5.3 Anwendung des Gradientenverfahrens und Error Backpropagation 148
5.5.4 Die Änderung eines Gewichts bei einem Trainingsschritt 150
5.5.5 Aktualisierung der übrigen Gewichte 157
5.6 Projekt: Ein neuronales Netz, das das XOR-Problem löst 162
5.6.1 Programmteil 1: Vorbereitung 162
5.6.2 Programmteil 2: Die Funktion vorhersagen() 163
5.6.3 Programmteil 3: Definition der Funktion trainieren() 164
5.6.4 Programmteil 4: Zufällige Trainingsdaten erzeugen 166
5.6.5 Programmteil 5: Training 166
5.6.6 Programmteil 6: Testen 167
5.7 Projekt: Gurke oder Apfel? 168
5.7.1 Programm 1: Trainingsdaten erzeugen 171
5.7.2 Programm 2: Das neuronale Netz 172
5.8 Rückblick 179
Kapitel 6: Bilder auswerten und Ziffern erkennen 181
6.1 Was sind Vektoren und Matrizen? 181
6.2 Trainingscamp: NumPy 182
6.2.1 Vorbereitung 183
6.2.2 Station 1: Arrays erzeugen 183
6.2.3 Station 2: Operationen mit Arrays und Skalaren 186
6.2.4 Station 3: Operationen mit zwei Arrays 187
6.2.5 Station 4: Die Form eines Arrays verändern 189
6.2.6 Station 5: Matrizenmultiplikation mit dot() 191
6.2.7 Station 6: Zufallsarrays 194
6.2.8 Station 7: Elemente eines Arrays verarbeiten 196
6.2.9 Station 8: Auf Elemente eines Arrays zugreifen 196
6.3 Mit Arrays die Programmierung vereinfachen 198
6.3.1 Programmteil 1: Vorbereitung 199
6.3.2 Programmteil 2: Die Funktion vorhersagen(i) 200
6.3.3 Programmteil 3: Definition der Funktion trainieren() 202
6.3.4 Programmteil 4: Training 204
6.4 Projekt: Ziffern erkennen 205
6.4.1 Trainings- und Testdaten 205
6.4.2 Eine Ziffer auf dem Bildschirm darstellen 208
6.4.3 Aufbau des neuronalen Netzes 210
6.4.4 Programmierung des neuronalen Netzes 211
6.5 Rückblick 218
Kapitel 7: Eigene Projekte zur Bilderkennung 219
7.1 Fotolabor: Bilder verarbeiten mit der Python Imaging Library (PIL) 219
7.1.1 Vorbereitung 219
7.1.2 Experiment 1: Ein Bild laden und auf dem Bildschirm darstellen 221
7.1.3 Experiment 2: Attribute eines Image-Objekts ausgeben 221
7.1.4 Experiment 3: Die Größe eines Bilds ändern 222
7.1.5 Experiment 4: Ein Bild in eine Liste überführen 223
7.1.6 Experiment 5: Aus einem Farbbild ein Graustufenbild gewinnen 224
7.2 Projekt: Ziffern auf eigenen Bildern erkennen 228
7.2.1 Vorbereitung 228
7.2.2 Gewichte speichern 229
7.2.3 Das vortrainierte neuronale Netz nutzen 230
7.3 Projekt: Mit der Kamera Gesten erkennen 233
7.3.1 Vorbereitung 233
7.3.2 Die Kamera ausprobieren 234
7.3.3 Die Programmierung 236
7.4 Rückblick 242
Kapitel 8: Fortgeschrittene Projekte mit künstlicher Intelligenz 243
8.1 Computer Vision 243
8.2 Neuronale Netze mit PyTorch 246
8.3 KI mit Google Colaboratory 248
Mathematisches Wörterbuch für KI 251
Ableitung 251
Ableitung einer konstanten Funktion 251
Ableitung einer quadratischen Funktion 252
Aktivierungsfunktion 252
Baum 252
Benchmark 253
Del-Symbol ? 253
Delta ? 253
Differenzialquotient 253
Fehlerfunktion 253
Funktion (Mathematik) 254
Funktion (Programmierung) 254
Gleichgerichtete Lineareinheit – ReLU 255
Gleichverteilung 256
Gradient 256
Graph (Graphentheorie) 256
Graph einer Funktion 257
Kettenregel 257
Knoten eines künstlichen neuronalen Netzes 258
Künstliches neuronales Netz 259
Matrix 259
Lineare Funktion 260
Lineare Separierbarkeit 260
Neuron 261
Neuronales Netz 261
Partielle Ableitung 261
Sigmoid-Funktion 261
Spaltenvektor 261
Steigung 262
Summenregel 263
tanh-Funktion 264
Target 264
Transponierte Matrix 265
XOR-Problem 265
Zeilenvektor 265
Stichwortverzeichnis 267

Erscheint lt. Verlag 28.9.2023
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
ISBN-10 3-7475-0653-4 / 3747506534
ISBN-13 978-3-7475-0653-0 / 9783747506530
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?
PDFPDF (Wasserzeichen)
Größe: 20,0 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das umfassende Handbuch

von Johannes Ernesti; Peter Kaiser

eBook Download (2023)
Rheinwerk Computing (Verlag)
35,92
Deterministische und randomisierte Algorithmen

von Volker Turau; Christoph Weyer

eBook Download (2024)
De Gruyter (Verlag)
64,95
Das Handbuch für Webentwickler

von Philip Ackermann

eBook Download (2023)
Rheinwerk Computing (Verlag)
39,92