Gollnick | PyTorch | E-Book | www.sack.de
E-Book

E-Book, Deutsch, 447 Seiten

Reihe: Rheinwerk Computing

Gollnick PyTorch

KI-Modelle trainieren, tunen und einsetzen
1. Auflage 2026
ISBN: 978-3-367-11407-8
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection

KI-Modelle trainieren, tunen und einsetzen

E-Book, Deutsch, 447 Seiten

Reihe: Rheinwerk Computing

ISBN: 978-3-367-11407-8
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection



PyTorch-Programmierung professionell! Das meistbenutzte Deep-Learning-Framework in der Praxis: Lernen Sie für spezifische Aufgaben aus realen Projektszenarien, wie Sie mit PyTorch KI-Modelle trainieren, optimieren und produktiv einsetzen . Bert Gollnick zeigt Ihnen in diesem Buch alle einschlägigen Verfahren inklusive Python-Implementierung, von linearer Regression über große Sprachmodelle bis zur Kombination mehrerer Verfahren. Die Anwendungen beinhalten Computer Vision, RAG-Systeme, Zeitreihenanalysen und vieles mehr. Sie evaluieren und deployen Ihre Modelle mit modernsten Methoden und lernen dafür Tools wie FlowML, TensorBoard und FastAPI kennen.

Profitieren Sie von vollständigen Codebeispielen, die auf handelsüblicher Hardware lauffähig sind, und entdecken Sie das Zusammenspiel mit PyTorch Lightning, HuggingFace und weiteren Tools.

  • Deep Learning von der Datenaufbereitung über Training und Fineturing bis zum Deployment
  • Vielfältige Architekturen wie Autoencoder, RNNs, LLMs, RAG-Systeme etc.
  • Inkl. PyTorch Lightning, TensorBoard, LangChain, FastAPI u. v. m.

Aus dem Inhalt:

  • Installation des Frameworks
  • Deep-Learning-Grundkonzepte
  • Vortrainierte Modelle verwenden
  • Daten vorbereiten
  • Klassifizierungsaufgaben
  • Computer Vision
  • Empfehlungssysteme
  • Graph Neural Networks
  • Große Sprachmodelle (LLMs)
  • Zeitreihen-Vorhersagen
  • PyTorch Lightning
  • LangChain
  • Cloud-Deployment mit Heroku
  • FlowML, TensorBoard und WandB
  • Lokaler Einsatz mit FastAPI
Gollnick PyTorch jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


  1.  Vorwort ... 13


       1.1 ... An wen richtet sich dieses Buch? ... 15

       1.2 ... Voraussetzungen ... 15

       1.3 ... Die Struktur des Buches ... 16

       1.4 ... Wie Sie dieses Buch effektiv nutzen ... 16

       1.5 ... Konventionen in diesem Buch ... 17

       1.6 ... Der Code zum Herunterladen und weitere Materialien ... 18

       1.7 ... Systemeinrichtung ... 18

       1.8 ... Danksagung ... 25

  2.  Einführung in das Deep Learning ... 27


       2.1 ... Was ist Deep Learning? ... 28

       2.2 ... Wofür kann Deep Learning verwendet werden? ... 29

       2.3 ... Wie funktioniert Deep Learning? ... 33

       2.4 ... Historische Entwicklung ... 35

       2.5 ... Perzeptron ... 36

       2.6 ... Netzwerkaufbau und -schichten ... 37

       2.7 ... Aktivierungsfunktionen ... 38

       2.8 ... Verlustfunktion ... 41

       2.9 ... Optimierer und Parameter-Update ... 43

       2.10 ... Umgang mit Tensoren ... 45

       2.11 ... Zusammenfassung ... 53

  3.  Unser erstes PyTorch-Modell ... 55


       3.1 ... Datenvorbereitung ... 56

       3.2 ... Modell-Erstellung ... 66

       3.3 ... Modellklasse und Optimierer ... 74

       3.4 ... Batches ... 78

       3.5 ... Dataset und DataLoader ... 83

       3.6 ... Modelle speichern und laden ... 88

       3.7 ... Data Sampling ... 91

       3.8 ... Zusammenfassung ... 100

  4.  Klassifizierungsmodelle ... 103


       4.1 ... Klassifizierungstypen ... 104

       4.2 ... Konfusionsmatrix ... 105

       4.3 ... ROC-Kurve ... 108

       4.4 ... Binäre Klassifizierung ... 110

       4.5 ... Multi-Class-Klassifizierung ... 124

       4.6 ... Zusammenfassung ... 137

  5.  Computer-Vision ... 139


       5.1 ... Wie werden Bilder in Modellen behandelt? ... 141

       5.2 ... Netzwerkarchitekturen ... 142

       5.3 ... Bildklassifizierung ... 147

       5.4 ... Objekterkennung ... 177

       5.5 ... Semantische Segmentierung ... 193

       5.6 ... Stiltransfer ... 204

       5.7 ... Zusammenfassung ... 213

  6.  Empfehlungssysteme ... 215


       6.1 ... Konzepte ... 215

       6.2 ... Coding: Empfehlungssystem ... 218

       6.3 ... Zusammenfassung ... 236

  7.  Autoencoder ... 237


       7.1 ... Architektur ... 238

       7.2 ... Autoencoder-Implementierung ... 239

       7.3 ... Variational Autoencoder ... 248

       7.4 ... Coding: Variational Autoencoder ... 249

       7.5 ... Zusammenfassung ... 259

  8.  Graph Neural Networks ... 261


       8.1 ... Einführung in die Graphentheorie ... 261

       8.2 ... Coding: Aufbau eines Graphen ... 266

       8.3 ... Coding: Training eines GNN ... 271

       8.4 ... Zusammenfassung ... 280

  9.  Zeitreihen ... 281


       9.1 ... Modellierungsansätze ... 281

       9.2 ... Coding: Eigenes Modell ... 286

       9.3 ... Coding: Nutzung von PyTorch Forecasting ... 301

       9.4 ... Zusammenfassung ... 310

10.  Sprachmodelle ... 311


       10.1 ... Nutzung von LLMs mit Python ... 312

       10.2 ... Modellparameter ... 328

       10.3 ... Modellauswahl ... 331

       10.4 ... Nachrichtentypen ... 335

       10.5 ... Prompt-Templates ... 336

       10.6 ... Chains ... 340

       10.7 ... Strukturierte Outputs ... 343

       10.8 ... Deep Dive: Wie funktionieren Transformer? ... 346

       10.9 ... Zusammenfassung ... 353

11.  Vortrainierte Netzwerke und Finetuning ... 355


       11.1 ... Vortrainierte Netzwerke mit Hugging Face ... 356

       11.2 ... Transferlernen ... 359

       11.3 ... Coding: Finetuning eines Computer-Vision-Modells ... 362

       11.4 ... Coding: Finetuning eines Sprachmodells ... 370

       11.5 ... Zusammenfassung ... 376

12.  PyTorch Lightning ... 377


       12.1 ... Vergleich zwischen PyTorch und PyTorch Lightning ... 378

       12.2 ... Coding: Modelltraining ... 379

       12.3 ... Callbacks ... 386

       12.4 ... Zusammenfassung ... 389

13.  Modellevaluierung, Logging und Monitoring ... 391


       13.1 ... TensorBoard ... 392

       13.2 ... MLflow ... 401

       13.3 ... Weights and Biases (WandB) ... 406

       13.4 ... Zusammenfassung ... 413

14.  Deployment ... 415


       14.1 ... Deployment-Strategien ... 415

       14.2 ... Lokales Deployment ... 418

       14.3 ... Heroku ... 424

       14.4 ... Microsoft Azure ... 431

       14.5 ... Zusammenfassung ... 440

  Index ... 443


1.7    Systemeinrichtung


Abbildung 1.2 zeigt die Schritte, um das System so einzurichten, dass Sie mit dem Code-Material arbeiten und es auf Ihrem lokalen System ausführen können.

Die Abbildung zeigt die verschiedenen Schritte, die Sie ausführen müssen, damit die Skripte auf Ihrem lokalen Computer laufen können. Es mag viel erscheinen, aber denken Sie daran, dass das ein einmaliger Vorgang ist, der nicht länger als 30 Minuten dauern sollte.

Die Schritte sind:

  1. Python-Installation

  2. IDE-Installation

  3. Git-Installation

  4. Download des Kursmaterials

  5. Einrichtung der lokalen Python-Umgebung

Abbildung 1.2     Schritte der Systemeinrichtung

1.7.1    Python-Installation


Die Python-Installation ist ganz einfach und kann auf verschiedene Weisen durchgeführt werden. Ich empfehle, Python von der offiziellen Website der Organisation unter https://www.python.org/downloads/ herunterzuladen. Wenn Sie ein bisschen auf der Download-Seite nach unten scrollen, finden Sie verschiedene Versionen.

Abbildung 1.3 zeigt eine Liste verschiedener Versionen. Der Code in diesem Buch wurde auf Basis der Python-Version 3.12.7 entwickelt. Um Probleme zu vermeiden, sollten Sie die gleiche Version verwenden.

Abbildung 1.3     Python-Download

Klicken Sie bitte auf den Download-Button und folgen Sie den Installationsanweisungen. Es gibt nichts Besonderes zu beachten, und Sie können die Standardeinstellungen verwenden. Auf manchen Systemen, z. B. bei macOS, ist Python bereits vorinstalliert. Sie können mit python –version in der Kommandozeile herausfinden, welche Python-Version installiert ist.

1.7.2    IDE-Installation


Eine integrierte Entwicklungsumgebung (IDE) ist entscheidend, um effizient Code in Python-Projekten schreiben und verwalten zu können. Beliebte IDEs sind:

  • Visual Studio Code

  • PyCharm

  • Cursor

  • Windsurf Editor

Integrierte Entwicklungsumgebungen (IDEs)

  • Visual Studio Code (VS Code)

    Bei VS Code handelt es sich um eine leichtgewichtige und hochgradig anpassbare IDE. Sie unterstützt viele verschiedene Programmiersprachen. Das ist ein Grund, warum sie zu meinen Favoriten gehört. Ich benutze VS Code für meine Python-, R- und Flutter-Projekte und muss mich nicht an eine andere IDE gewöhnen, wenn ich die Projekte wechsle.

    VS Code ist Open Source und Sie können es kostenlos über https://code.visualstudio.com/ herunterladen. Außerdem hat es eine große Community, die Tausende von Erweiterungen bereitstellt. Ich habe es viele Jahre lang genutzt und konnte mir kaum vorstellen, zu wechseln. Aber irgendwann habe ich es doch getan und nutze seitdem Cursor.

  • Cursor

    Cursor ist ein Fork von Visual Studio Code, was bedeutet, dass es ein sehr naher Verwandter ist. In Cursor ist aber bereits KI-Power integriert. Mit diesem KI-unterstützten Code-Editor werden Sie beim Programmieren viel schneller und effizienter. Er nutzt die Möglichkeiten der generativen KI, und Sie können Unterstützung beim Coden über OpenAIs Codex, GPT oder Claude erhalten.

    Cursor bietet Funktionen wie Code-Vervollständigung, Code-Erklärung, Fehlerbehebung, Refactoring und interaktives Chatten. Es gibt eine kostenlose Version und eine kostenpflichtige Variante.

    Auf der Website https://www.cursor.com/ können Sie mehr über Cursor herausfinden. Bei Cursor müssen Sie einen Account anlegen, um das Programm nutzen zu können.

  • PyCharm

    Die IDE PyCharm konzentriert sich auf Python. Sie bietet fortschrittliche Funktionen wie Code-Vervollständigung und Debugging. Die Community-Edition ist kostenlos und hat grundlegende Funktionen, während die professionelle Version tiefere Integrationen bietet. Auf der Entwickler-Website finden Sie beide Versionen: https://www.jetbrains.com/pycharm/download/.

  • Windsurf Editor

    Ein sehr neuer Editor, der für sich beansprucht die erste agentische IDE zu sein, ist Windsurf Editor. Er ist ebenfalls ein Fork von Visual Studio Code und kann über https://codeium.com/ bezogen werden.

    Auch hier müssen Sie sich zunächst registrieren, um das Programm nutzen zu können.

Wenn Sie eine Vorliebe und Erfahrung mit einem dieser Editoren haben, werde ich Sie nicht aufhalten. Aber wenn Sie ein Anfänger bzw. eine Anfängerin sind und nach guten Ratschlägen suchen, empfehle ich Ihnen, mit Cursor zu starten.

1.7.3    Git-Installation


Git ist ein unverzichtbares Werkzeug für die Versionskontrolle, das Entwicklern hilft, Änderungen in ihrem Code nachzuvollziehen, mit anderen zusammenzuarbeiten und eine Historie der Projektentwicklung zu führen.

Git ermöglicht es Ihnen, Ihre Codebasis effizient zu verwalten, indem es Branching, Merging und das Zurücksetzen von Änderungen ermöglicht. Git lässt sich nahtlos in Plattformen wie GitHub, GitLab und Bitbucket integrieren, was die Zusammenarbeit aus der Ferne ganz einfach macht. Wir benötigen es im nächsten Schritt, um das Kursmaterial zu beziehen.

Sie können es unter https://git-scm.com/downloads herunterladen.

Abbildung 1.4 zeigt die verschiedenen Downloadmöglichkeiten.

Abbildung 1.4     Git-Download

Wählen Sie den Download, der zu Ihrem Betriebssystem passt. Es gibt zwar viele Optionen, die Sie wählen können, aber Sie können in allen Fällen die Standardwerte verwenden, um die Installation durchzuführen.

1.7.4    Download des Kursmaterials


Der Beispielcode wird auf GitHub gehostet. Sie können die Materialien unter diesem Link finden:

https://github.com/DataScienceHamburg/PyTorch_Buch_Material

Wenn Sie die Seite aufrufen, sehen Sie sämtliches Material, wie in Abbildung 1.5 gezeigt.

Abbildung 1.5     Das GitHub-Repository für dieses Buch

Den Code können Sie über zwei Ansätze beim Klick auf den grünen Code-Button erhalten:

  • Download als ZIP-Datei

  • durch Klonen des Repositoriess über die Web-URL

Wenn Sie keine Erfahrung mit Git haben, wählen Sie die ZIP-Option. Laden Sie die ZIP-Datei herunter und entpacken Sie sie in einen Ordner Ihrer Wahl auf Ihrem Computer.

Wenn Sie jedoch schon mal mit Git zu tun hatten, können Sie das Repository klonen, indem Sie folgenden Befehl in der Kommandozeile ausführen:

git clone
https://github.com/DataScienceHamburg/PyTorch_Buch_Material

Mit diesem Befehl erhalten Sie eine Kopie des Verzeichnisses, die auf Ihrem Computer gespeichert wird.

1.7.5    Die lokale Python-Umgebung einrichten


Eine Python-Umgebung ist ein isolierter Arbeitsbereich, in dem Sie Abhängigkeiten für ein bestimmtes Projekt installieren und verwalten können. Sie funktioniert wie eine Sandbox (also ein geschützter und getrennter Bereich), die sicherstellt, dass die Bibliotheken und Tools, die Sie in einem Projekt verwenden, nicht mit anderen auf Ihrem System in Konflikt geraten.

Abbildung 1.6 verdeutlicht das Konzept der Umgebungen und zeigt, warum diese erforderlich sind.

Abbildung 1.6     Python-Umgebungen

Während Projekt A ein bestimmtes Paket xyz in der Version 1.0.0 und die...


Gollnick, Bert
Bert Gollnick ist Senior Data Scientist mit Schwerpunkt auf künstlicher Intelligenz. Er unterrichtet Kurse zu Data Science und Machine Learning inklusive generativer KI und natürlicher Sprachverarbeitung. Bert hat an der Technischen Universität Berlin Luft- und Raumfahrttechnik und an der Universität Hagen Volkswirtschaftslehre studiert. Nach 17 Jahren in der Industrie fokussiert er sich nun auf seine Schulungsfirma, um Teilnehmern künstliche Intelligenz näherzubringen.Er lebt und arbeitet in Hamburg und bietet Präsenzkurse im deutschsprachigen Raum sowie Online-Kurse auch für ein internationales Publikum an.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.