Neuronale Netze programmieren mit Python

Inhaltsverzeichnis



  Vorwort zur 2. Auflage ... 13

  Materialien zum Buch ... 14

  Vorwort ... 15

  1.  Einleitung ... 19

       1.1 ... Wozu neuronale Netze? ... 19

       1.2 ... Über dieses Buch ... 20

       1.3 ... Der Inhalt kompakt ... 22

       1.4 ... Ist diese Biene eine Königin? ... 25

       1.5 ... Ein künstliches neuronales Netz für den Bienenstaat ... 26

       1.6 ... Von der Biologie zum künstlichen Neuron ... 31

       1.7 ... Einordnung und der Rest ... 36

       1.8 ... Zusammenfassung ... 43

       1.9 ... Referenzen ... 44

Teil I.  Up and running ... 45

  2.  Das minimale Starterkit für die Entwicklung von neuronalen Netzen mit Python ... 47

       2.1 ... Die technische Entwicklungsumgebung ... 47

       2.2 ... Zusammenfassung ... 67

  3.  Ein einfaches neuronales Netz ... 69

       3.1 ... Vorgeschichte ... 69

       3.2 ... Her mit dem neuronalen Netz! ... 69

       3.3 ... Neuron-Zoom-in ... 73

       3.4 ... Stufenfunktion ... 78

       3.5 ... Perceptron ... 80

       3.6 ... Punkte im Raum -- Vektorrepräsentation ... 81

       3.7 ... Horizontal und vertikal -- Spalten- und Zeilenschreibweise ... 88

       3.8 ... Die gewichtete Summe ... 91

       3.9 ... Schritt für Schritt -- Stufenfunktionen ... 91

       3.10 ... Die gewichtete Summe reloaded ... 92

       3.11 ... Alles zusammen ... 93

       3.12 ... Aufgabe: Roboterschutz ... 96

       3.13 ... Zusammenfassung ... 99

       3.14 ... Referenzen ... 99

  4.  Lernen im einfachen Netz ... 101

       4.1 ... Vorgeschichte: Man lässt planen ... 101

       4.2 ... Lernen im Python-Code ... 102

       4.3 ... Perceptron-Lernen ... 103

       4.4 ... Trenngerade für einen Lernschritt ... 106

       4.5 ... Perceptron-Lernalgorithmus ... 108

       4.6 ... Die Trenngeraden bzw. Hyperplanes oder auch Hyperebenen für das Beispiel ... 113

       4.7 ... scikit-learn-kompatibler Estimator ... 116

       4.8 ... scikit-learn-Perceptron-Estimator ... 123

       4.9 ... Adaline ... 126

       4.10 ... Zusammenfassung ... 136

       4.11 ... Referenzen ... 137

  5.  Mehrschichtige neuronale Netze ... 139

       5.1 ... Ein echtes Problem ... 139

       5.2 ... XOR kann man lösen ... 141

       5.3 ... Vorbereitungen für den Start ... 147

       5.4 ... Der Plan für die Umsetzung ... 149

       5.5 ... Das Setup (»class«) ... 150

       5.6 ... Die Initialisierung (»__init__«) ... 152

       5.7 ... Was für zwischendurch (»print«) ... 154

       5.8 ... Die Auswertung (»predict«) ... 155

       5.9 ... Die Verwendung ... 157

       5.10 ... Zusammenfassung ... 159

  6.  Lernen im mehrschichtigen Netz ... 161

       6.1 ... Wie misst man einen Fehler? ... 161

       6.2 ... Gradientenabstieg an einem Beispiel ... 163

       6.3 ... Ein Netz aus sigmoiden Neuronen ... 172

       6.4 ... Der coole Algorithmus mit Vorwärts-Delta und Rückwärts-Propagation ... 174

       6.5 ... Ein »fit«-Durchlauf ... 187

       6.6 ... Zusammenfassung ... 196

       6.7 ... Referenz ... 196

  7.  Convolutional Neural Networks ... 197

       7.1 ... Aufbau eines CNN ... 199

       7.2 ... Der Kodierungsblock ... 200

       7.3 ... Der Prädiktionsblock ... 207

       7.4 ... Trainieren von Convolutional Neural Networks ... 209

       7.5 ... Zusammenfassung ... 218

       7.6 ... Referenzen ... 219

  8.  Programmierung von Convolutional Neural Networks mit TensorFlow 2 ... 221

       8.1 ... Convolutional Networks zur Handschriftenerkennung ... 221

       8.2 ... Transfer Learning mit Convolutional Neural Networks ... 237

       8.3 ... Zusammenfassung ... 246

       8.4 ... Referenzen ... 247

Teil II.  Deep Dive ... 249

  9.  Vom Hirn zum Netz ... 251

       9.1 ... Ihr Gehirn in Aktion ... 251

       9.2 ... Das Nervensystem ... 252

       9.3 ... Das Gehirn ... 253

       9.4 ... Neuronen und Gliazellen ... 255

       9.5 ... Eine Übertragung im Detail ... 257

       9.6 ... Darstellung von Zellen und Netzen ... 260

       9.7 ... Zusammenfassung ... 262

       9.8 ... Referenzen ... 263

10.  Die Evolution der neuronalen Netze ... 265

       10.1 ... 1940er ... 265

       10.2 ... 1950er ... 268

       10.3 ... 1960er ... 270

       10.4 ... 1970er ... 270

       10.5 ... 1980er ... 271

       10.6 ... 1990er ... 284

       10.7 ... 2000er ... 285

       10.8 ... 2010er ... 285

       10.9 ... Zusammenfassung ... 287

       10.10 ... Referenzen ... 288

11.  Der Machine-Learning-Prozess ... 289

       11.1 ... Das CRISP-DM-Modell ... 289

       11.2 ... Feature Engineering ... 293

       11.3 ... Zusammenfassung ... 324

       11.4 ... Referenzen ... 324

12.  Lernverfahren ... 325

       12.1 ... Lernstrategien ... 325

       12.2 ... Werkzeuge ... 361

       12.3 ... Zusammenfassung ... 366

       12.4 ... Referenzen ... 366

13.  Anwendungsbereiche und Praxisbeispiele ... 367

       13.1 ... Warmup ... 367

       13.2 ... Bildklassifikation ... 370

       13.3 ... Erträumte Bilder ... 391

       13.4 ... Zusammenfassung ... 402

       13.5 ... Referenzen ... 402

  A.  Python kompakt ... 403

  B.  Mathematik kompakt ... 433

  C.  TensorFlow 2 und Keras ... 455

  Index ... 467

Neuronale Netze programmieren mit Python

Der Einstieg in die Künstliche Intelligenz. Mit KI-Lernumgebung, Python-Crashkurs, Keras und TensorFlow 2

Buch (Taschenbuch)

29,90 €

inkl. gesetzl. MwSt.

Neuronale Netze programmieren mit Python

Ebenfalls verfügbar als:

Taschenbuch

Taschenbuch

ab 29,90 €
eBook

eBook

ab 29,90 €

Beschreibung

Details

Verkaufsrang

17136

Einband

Taschenbuch

Erscheinungsdatum

28.05.2020

Verlag

Rheinwerk

Seitenzahl

479

Beschreibung

Details

Verkaufsrang

17136

Einband

Taschenbuch

Erscheinungsdatum

28.05.2020

Verlag

Rheinwerk

Seitenzahl

479

Maße (L/B/H)

22,7/17,4/3 cm

Gewicht

881 g

Auflage

2. Auflage

Sprache

Deutsch

ISBN

978-3-8362-7450-0

Weitere Bände von Rheinwerk Computing

Unsere Kundinnen und Kunden meinen

3.0

2 Bewertungen

Informationen zu Bewertungen

Zur Abgabe einer Bewertung ist eine Anmeldung im Konto notwendig. Die Authentizität der Bewertungen wird von uns nicht überprüft. Wir behalten uns vor, Bewertungstexte, die unseren Richtlinien widersprechen, entsprechend zu kürzen oder zu löschen.

5 Sterne

(1)

4 Sterne

(0)

3 Sterne

(0)

2 Sterne

(0)

1 Sterne

(1)

Eine spannende Einführung in das Thema KI

Bewertung am 24.12.2021

Bewertungsnummer: 1628110

Bewertet: Buch (Taschenbuch)

Ich als Laie habe das Lesen und aktive ausprobieren in höchstem Masse genossen. Die Beispiele sind gut überlegt und einfach zu verstehen obwohl es schon manchmal nicht allzu einfach ist. Alles in allem handelt es sich hier um ein äusserst Beginner-freundliches Buch im lockeren Schreibstil.
Melden

Eine spannende Einführung in das Thema KI

Bewertung am 24.12.2021
Bewertungsnummer: 1628110
Bewertet: Buch (Taschenbuch)

Ich als Laie habe das Lesen und aktive ausprobieren in höchstem Masse genossen. Die Beispiele sind gut überlegt und einfach zu verstehen obwohl es schon manchmal nicht allzu einfach ist. Alles in allem handelt es sich hier um ein äusserst Beginner-freundliches Buch im lockeren Schreibstil.

Melden

absolut sinnfreie Beispiele und pseudocool schlecht erklärt

Bewertung aus Schwerin am 14.03.2021

Bewertungsnummer: 1465348

Bewertet: Buch (Taschenbuch)

In diesem Buch schwankt der Autor stets zwischen banalen Erklärungen (alles ganz einfach) und viel zu aufgeblähten Quellcodes und komischen Erklärungen hin und her. Die gebrachten Beispiele fand ich völlig sinnfrei. Zum Beispiel wird über zehn Seiten analysiert, wie man darstellt, ob von zwei Mitarbeitern eines Shops immer mindestens einer da sein muss. Dass dies ein Problem ist, was dem machinellen Lernen Probleme bereitet, ist nachvollziehbar, aber da sich dies in einer Python-Zeile ohne neuronale Netze lösen lässt, finde ich es absolut nicht nachvollziehbar, warum man dies mit einem neuronalen Netz lösen sollte. Weiterhin werden in den ersten Kapiteln die neuronalen Netze nur mit einem(!) perfekten Beispiele gefüttert und geben dann natürlich ein korrektes Lernergebnis für genau dieses Beispiel aus. Dies ist absolut sinnfrei, da beim Deep Learning auf falsche oder "fuzzy"- Beispiele auftreten und das Ziel ist auch Daten bearbeiten zu können, die nicht im Lernsatz mit drin sind. Und wenn ich dieses Beispiel so aufbereite, dass ich für genau eine Eingabe genau eine bestimmte Ausgabe erwarte, dann kann ich dies auch so programmieren. Warum soll das Programm etwas lernen, wenn ich selbst schon das Ergebnis kenne? Außerdem wurden viele Sachen kurz in den Raum geworfen und mal hier halb erklärt und hier nochmal halb erklärt, sodass man, wenn man sich nicht an den Überschriften lang hangelt und etwas Vorkenntnisse hat, gar nicht mehr wusste warum der Autor jetzt irgendwas Neues eingeworfen hat. Also bevor ich mich noch weiter aufrege mein Fazit: Das Buch ist so schlecht, dass ich nach dem dritten Kapitel aufgehört hab zu lesen und mir von Tariq Rashid "Neuronale Netze selbst programmieren: Ein verständlicher Einstieg mit Python" geholt hab und das war tausendmal besser!
Melden

absolut sinnfreie Beispiele und pseudocool schlecht erklärt

Bewertung aus Schwerin am 14.03.2021
Bewertungsnummer: 1465348
Bewertet: Buch (Taschenbuch)

In diesem Buch schwankt der Autor stets zwischen banalen Erklärungen (alles ganz einfach) und viel zu aufgeblähten Quellcodes und komischen Erklärungen hin und her. Die gebrachten Beispiele fand ich völlig sinnfrei. Zum Beispiel wird über zehn Seiten analysiert, wie man darstellt, ob von zwei Mitarbeitern eines Shops immer mindestens einer da sein muss. Dass dies ein Problem ist, was dem machinellen Lernen Probleme bereitet, ist nachvollziehbar, aber da sich dies in einer Python-Zeile ohne neuronale Netze lösen lässt, finde ich es absolut nicht nachvollziehbar, warum man dies mit einem neuronalen Netz lösen sollte. Weiterhin werden in den ersten Kapiteln die neuronalen Netze nur mit einem(!) perfekten Beispiele gefüttert und geben dann natürlich ein korrektes Lernergebnis für genau dieses Beispiel aus. Dies ist absolut sinnfrei, da beim Deep Learning auf falsche oder "fuzzy"- Beispiele auftreten und das Ziel ist auch Daten bearbeiten zu können, die nicht im Lernsatz mit drin sind. Und wenn ich dieses Beispiel so aufbereite, dass ich für genau eine Eingabe genau eine bestimmte Ausgabe erwarte, dann kann ich dies auch so programmieren. Warum soll das Programm etwas lernen, wenn ich selbst schon das Ergebnis kenne? Außerdem wurden viele Sachen kurz in den Raum geworfen und mal hier halb erklärt und hier nochmal halb erklärt, sodass man, wenn man sich nicht an den Überschriften lang hangelt und etwas Vorkenntnisse hat, gar nicht mehr wusste warum der Autor jetzt irgendwas Neues eingeworfen hat. Also bevor ich mich noch weiter aufrege mein Fazit: Das Buch ist so schlecht, dass ich nach dem dritten Kapitel aufgehört hab zu lesen und mir von Tariq Rashid "Neuronale Netze selbst programmieren: Ein verständlicher Einstieg mit Python" geholt hab und das war tausendmal besser!

Melden

Unsere Kundinnen und Kunden meinen

Neuronale Netze programmieren mit Python

von Joachim Steinwendner, Roland Schwaiger

3.0

0 Bewertungen filtern

Weitere Artikel finden Sie in

Die Leseprobe wird geladen.
  • Neuronale Netze programmieren mit Python


  •   Vorwort zur 2. Auflage ... 13

      Materialien zum Buch ... 14

      Vorwort ... 15

      1.  Einleitung ... 19

           1.1 ... Wozu neuronale Netze? ... 19

           1.2 ... Über dieses Buch ... 20

           1.3 ... Der Inhalt kompakt ... 22

           1.4 ... Ist diese Biene eine Königin? ... 25

           1.5 ... Ein künstliches neuronales Netz für den Bienenstaat ... 26

           1.6 ... Von der Biologie zum künstlichen Neuron ... 31

           1.7 ... Einordnung und der Rest ... 36

           1.8 ... Zusammenfassung ... 43

           1.9 ... Referenzen ... 44

    Teil I.  Up and running ... 45

      2.  Das minimale Starterkit für die Entwicklung von neuronalen Netzen mit Python ... 47

           2.1 ... Die technische Entwicklungsumgebung ... 47

           2.2 ... Zusammenfassung ... 67

      3.  Ein einfaches neuronales Netz ... 69

           3.1 ... Vorgeschichte ... 69

           3.2 ... Her mit dem neuronalen Netz! ... 69

           3.3 ... Neuron-Zoom-in ... 73

           3.4 ... Stufenfunktion ... 78

           3.5 ... Perceptron ... 80

           3.6 ... Punkte im Raum -- Vektorrepräsentation ... 81

           3.7 ... Horizontal und vertikal -- Spalten- und Zeilenschreibweise ... 88

           3.8 ... Die gewichtete Summe ... 91

           3.9 ... Schritt für Schritt -- Stufenfunktionen ... 91

           3.10 ... Die gewichtete Summe reloaded ... 92

           3.11 ... Alles zusammen ... 93

           3.12 ... Aufgabe: Roboterschutz ... 96

           3.13 ... Zusammenfassung ... 99

           3.14 ... Referenzen ... 99

      4.  Lernen im einfachen Netz ... 101

           4.1 ... Vorgeschichte: Man lässt planen ... 101

           4.2 ... Lernen im Python-Code ... 102

           4.3 ... Perceptron-Lernen ... 103

           4.4 ... Trenngerade für einen Lernschritt ... 106

           4.5 ... Perceptron-Lernalgorithmus ... 108

           4.6 ... Die Trenngeraden bzw. Hyperplanes oder auch Hyperebenen für das Beispiel ... 113

           4.7 ... scikit-learn-kompatibler Estimator ... 116

           4.8 ... scikit-learn-Perceptron-Estimator ... 123

           4.9 ... Adaline ... 126

           4.10 ... Zusammenfassung ... 136

           4.11 ... Referenzen ... 137

      5.  Mehrschichtige neuronale Netze ... 139

           5.1 ... Ein echtes Problem ... 139

           5.2 ... XOR kann man lösen ... 141

           5.3 ... Vorbereitungen für den Start ... 147

           5.4 ... Der Plan für die Umsetzung ... 149

           5.5 ... Das Setup (»class«) ... 150

           5.6 ... Die Initialisierung (»__init__«) ... 152

           5.7 ... Was für zwischendurch (»print«) ... 154

           5.8 ... Die Auswertung (»predict«) ... 155

           5.9 ... Die Verwendung ... 157

           5.10 ... Zusammenfassung ... 159

      6.  Lernen im mehrschichtigen Netz ... 161

           6.1 ... Wie misst man einen Fehler? ... 161

           6.2 ... Gradientenabstieg an einem Beispiel ... 163

           6.3 ... Ein Netz aus sigmoiden Neuronen ... 172

           6.4 ... Der coole Algorithmus mit Vorwärts-Delta und Rückwärts-Propagation ... 174

           6.5 ... Ein »fit«-Durchlauf ... 187

           6.6 ... Zusammenfassung ... 196

           6.7 ... Referenz ... 196

      7.  Convolutional Neural Networks ... 197

           7.1 ... Aufbau eines CNN ... 199

           7.2 ... Der Kodierungsblock ... 200

           7.3 ... Der Prädiktionsblock ... 207

           7.4 ... Trainieren von Convolutional Neural Networks ... 209

           7.5 ... Zusammenfassung ... 218

           7.6 ... Referenzen ... 219

      8.  Programmierung von Convolutional Neural Networks mit TensorFlow 2 ... 221

           8.1 ... Convolutional Networks zur Handschriftenerkennung ... 221

           8.2 ... Transfer Learning mit Convolutional Neural Networks ... 237

           8.3 ... Zusammenfassung ... 246

           8.4 ... Referenzen ... 247

    Teil II.  Deep Dive ... 249

      9.  Vom Hirn zum Netz ... 251

           9.1 ... Ihr Gehirn in Aktion ... 251

           9.2 ... Das Nervensystem ... 252

           9.3 ... Das Gehirn ... 253

           9.4 ... Neuronen und Gliazellen ... 255

           9.5 ... Eine Übertragung im Detail ... 257

           9.6 ... Darstellung von Zellen und Netzen ... 260

           9.7 ... Zusammenfassung ... 262

           9.8 ... Referenzen ... 263

    10.  Die Evolution der neuronalen Netze ... 265

           10.1 ... 1940er ... 265

           10.2 ... 1950er ... 268

           10.3 ... 1960er ... 270

           10.4 ... 1970er ... 270

           10.5 ... 1980er ... 271

           10.6 ... 1990er ... 284

           10.7 ... 2000er ... 285

           10.8 ... 2010er ... 285

           10.9 ... Zusammenfassung ... 287

           10.10 ... Referenzen ... 288

    11.  Der Machine-Learning-Prozess ... 289

           11.1 ... Das CRISP-DM-Modell ... 289

           11.2 ... Feature Engineering ... 293

           11.3 ... Zusammenfassung ... 324

           11.4 ... Referenzen ... 324

    12.  Lernverfahren ... 325

           12.1 ... Lernstrategien ... 325

           12.2 ... Werkzeuge ... 361

           12.3 ... Zusammenfassung ... 366

           12.4 ... Referenzen ... 366

    13.  Anwendungsbereiche und Praxisbeispiele ... 367

           13.1 ... Warmup ... 367

           13.2 ... Bildklassifikation ... 370

           13.3 ... Erträumte Bilder ... 391

           13.4 ... Zusammenfassung ... 402

           13.5 ... Referenzen ... 402

      A.  Python kompakt ... 403

      B.  Mathematik kompakt ... 433

      C.  TensorFlow 2 und Keras ... 455

      Index ... 467