Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
Materialien zum Buch
13
1 Einleitung
15
1.1 Was bietet dieses Buch?
16
1.2 Was ist eine »künstliche Intelligenz«?
17
1.3 Geschichte der KI – ein kurzer Überblick
19
1.4 Verwendete Werkzeuge
21
1.4.1 Python
21
1.4.2 Jupyter Notebook
23
1.4.3 KNIME
23
1.4.4 ChatGPT und GPT-4
25
1.4.5 DALL-E 2 bzw. DALL-E 3
25
2 Installation
27
2.1 Anaconda-Distribution
27
2.1.1 Windows und macOS
28
2.1.2 Linux
28
2.1.3 Konfiguration und Test
29
2.2 KNIME
33
2.2.1 Installation
33
2.2.2 Konfiguration
36
2.2.3 Test
39
3 Das künstliche neuronale Netz
43
3.1 Klassifizierung
44
3.2 Das Kochrezept
46
3.2.1 Datenvorbereitung
46
3.2.2 Die KI aufbauen
47
3.2.3 Die KI trainieren
48
3.2.4 KI testen
48
3.2.5 KI einsetzen
49
3.3 Aufbau künstlicher neuronaler Netze
50
3.4 Aufbau eines künstlichen Neurons
52
3.5 Feed Forward
53
3.6 Backpropagation
56
3.7 Aktualisierung der Gewichte
58
3.8 KNN für Klassifizierung
61
3.9 Hyperparameter und Overfitting
69
3.10 Umgang mit nichtnumerischen Daten
71
3.11 Umgang mit Datenlücken
73
3.11.1 Leere Zellen mit Daten füllen
74
3.11.2 Zeilen mit leeren Zellen entfernen
75
3.12 Korrelation versus Kausalität
75
3.13 Normierung der Daten
84
3.14 Regression
87
3.15 Deployment
89
3.15.1 Trainieren, testen und speichern
90
3.15.2 KNN anwenden
92
3.16 Übungen
95
4 Entscheidungsbäume
99
4.1 Einfache Entscheidungsbäume
100
4.1.1 Decision Tree Classifier
100
4.1.2 Decision Tree Regressor
107
4.1.3 Entscheidungswälder
110
4.1.4 Random Forest Classifier
110
4.1.5 Random Forest Regressor
111
4.2 Boosting
112
4.2.1 Gradient Boosting
112
4.2.2 XGBoost Classifier
115
4.2.3 Automatische Hyperparameter-Einstellung mit GridSearchCV
120
4.3 XGBoost Regressor
122
4.4 Deployment
123
4.5 Entscheidungsbäume mit Orange
125
4.6 Übungen
129
5 Faltungsschichten, Bilder und mehr
131
5.1 Einfache Bildklassifizierung
133
5.2 Hyperparameter-Optimierung mit Early Stopping und KerasTuner
138
5.3 Convolutional Neural Network (CNN)
143
5.4 Bildklassifizierung mit CIFAR-10
150
5.5 Verwendung vortrainierter Netze
153
5.6 Übungen
157
6 Transfer Learning
159
6.1 Funktionsweise
162
6.2 Übungen
169
7 Anomalieerkennung
171
7.1 Unausgewogene Daten
172
7.2 Resampling
177
7.3 Autoencoder
179
7.4 Übungen
186
8 Textklassifizierung
187
8.1 Embedding Layer
187
8.2 GlobalAveragePooling1D Layer
191
8.3 Text Vectorization
193
8.4 Analyse der Zusammenhänge
196
8.5 Klassifizierung großer Datenmengen
201
8.6 Übungen
204
9 Clusteranalyse
205
9.1 Grafische Analyse der Daten
206
9.2 Der Algorithmus k-Means-Clustering
211
9.3 Das fertige Programm
214
9.4 Übungen
217
10 AutoKeras
219
10.1 Klassifizierung
220
10.2 Regression
222
10.3 Bildklassifizierung
223
10.4 Textklassifizierung
226
10.5 Übungen
229
11 Visuelle Programmierung mit KNIME
231
11.1 Einfache künstliche neuronale Netze
232
11.1.1 Klassifizierung
232
11.1.2 Klassifizierung mit Python Node
245
11.1.3 Regression
247
11.1.4 Regression mit Python Node
250
11.2 XGBoost
252
11.2.1 Klassifizierung
252
11.2.2 Deployment
254
11.2.3 Regression
256
11.3 Bildklassifizierung mit vortrainiertem Modell
256
11.3.1 Bildklassifizierung mit Keras Node
256
11.3.2 Bildklassifizierung mit Python Node
261
11.4 Transfer Learning
262
11.4.1 Transfer Learning mit Keras Node
263
11.4.2 Transfer Learning mit Python Node
265
11.5 Autoencoder
268
11.5.1 Autoencoder mit Keras Node
269
11.5.2 Autoencoder mit Python Node
273
11.6 Textklassifizierung
277
11.6.1 Textklassifizierung mit Keras Node
277
11.6.2 Textklassifizierung mit Python Node
280
11.7 AutoML
281
11.7.1 Installation
282
11.7.2 Klassifizierung
283
11.8 Clusteranalyse
285
11.8.1 Manuelle Clustereinstellung
286
11.8.2 Clustereinstellung mit einem Loop
287
11.9 Zeitreihenanalyse
290
11.9.1 Rekurrente neuronale Netze
291
11.9.2 Long Short-Term Memory
292
11.9.3 Vorhersage des Energieverbrauchs (nächste Stunde) mit Keras Node
294
11.9.4 Vorhersage des Energieverbrauchs (nächste Stunde) mit Python Node
300
11.9.5 Vorhersage des Energieverbrauchs (nächste 500 Stunden) mit Keras Node
301
11.9.6 Vorhersage des Energieverbrauchs (nächste 500 Stunden) mit Python Node
304
11.10 Textgenerierung
306
11.10.1 Datenvorbereitung
307
11.10.2 Training
309
11.10.3 Generierung
310
11.11 Weitere Hinweise zu KNIME
312
11.12 Übungen
313
12 Reinforcement Learning
317
12.1 Q-Learning
318
12.2 Erforderliche Python-Kenntnisse für das Spiel
324
12.2.1 Listen
324
12.2.2 Verzweigungen
325
12.2.3 Schleifen
327
12.2.4 Random Choice
328
12.2.5 Funktionen
329
12.3 Training
329
12.4 Test
332
12.5 Ausblick
333
12.6 Übungen
334
13 Genetische Algorithmen
335
13.1 Der Algorithmus
336
13.1.1 Startgeneration
337
13.1.2 Selektion
338
13.1.3 Reproduktion
338
13.1.4 Mutation
339
13.1.5 Neue Generation
340
13.2 Beispiel einer sortierten Liste
340
13.3 Beispiel für Gleichungssysteme
343
13.4 Beispielanwendung aus der Praxis
346
13.5 Übungen
349
14 ChatGPT und GPT-4
351
14.1 Prompt Engineering
354
14.1.1 Inhalte generieren
354
14.1.2 Programmieren
360
14.1.3 Analysieren und Zusammenfassen
367
14.1.4 Abschließende Fragen an ChatGPT
369
14.2 Programmierschnittstelle ChatGPT
372
14.2.1 API-Key und erstes Programm
373
14.2.2 Parameter
375
14.2.3 Eingabefilter
378
14.2.4 Rollen
382
14.2.5 Gedächtnis
383
14.2.6 User-Profile
385
14.2.7 Playground
385
14.2.8 Speech to Text
386
14.3 Übung
389
15 DALL-E und Nachfolgemodelle
391
15.1 DALL-E 2
392
15.1.1 Prompt Engineering
392
15.1.2 Bearbeitung generierter Bilder
393
15.2 DALL-E 3
397
15.3 Programmierschnittstelle
399
15.3.1 Bilderstellung
400
15.3.2 Bildvariationen
401
15.3.3 Bildbearbeitung
403
15.4 Übung
405
16 Ausblick
407
Anhang
409
A Lösungen
409
A.1 Kapitel 3
409
A.2 Kapitel 4
414
A.3 Kapitel 6
417
A.4 Kapitel 7
419
A.5 Kapitel 8
422
A.6 Kapitel 9
426
A.7 Kapitel 10
428
A.8 Kapitel 11
431
A.9 Kapitel 12
438
A.10 Kapitel 13
439
A.11 Kapitel 14
441
A.12 Kapitel 15
442
B Literaturhinweise
445
Index
447