Dies ist der entsprechende Code für das Buch "Deep Learning Framework Pytorch: Erste Schritte und Praxis (2. Auflage)", kann aber auch als unabhängiger Pytorch -Anfängerhandbuch und Tutorial verwendet werden.
Neues Upgrade
Die zweite Ausgabe dieses Buches wurde auf der Grundlage der ersten Ausgabe neu verbessert, und der Code des Buches wird auf der 1. Ausgabe von Pytorch Version 1.8 geschrieben. Es wurde in Kombination mit den Meinungen der Leser der ersten Ausgabe umfassend aktualisiert, einschließlich drei Modulen: Grundnutzung, erweiterte Erweiterung und praktische Anwendungen.
Inhalt
Der Inhalt dieses Buches (Tutorial/Repository) ist in der Abbildung dargestellt: 
Es ist ersichtlich, dass dieses Tutorial in drei Teile unterteilt werden kann:
Grundlegende Verwendung (Kapitel 2 bis 5) erklärt den Inhalt von Pytorch. Dieser Teil führt die Hauptmodule in Pytorch und einige häufig verwendete Werkzeuge im Deep Learning vor. Für diesen Teil des Inhalts verwenden wir hier ein Jupyter -Notizbuch als Lehrwerkzeug, und die Leser können das Notizbuch ändern und ausführen und wiederholt experimentieren.
- In Kapitel 2 wird die Installation von Pytorch und die Konfiguration verwandter Lernumgebungen vorgestellt. Gleichzeitig führt in diesem Kapitel den Hauptinhalt von Pytorch in einer umriegenden Weise vor, um den Lesern zu helfen, ein vorläufiges Verständnis von Pytorch zu erlangen.
- Kapitel 3 führt die Verwendung von mehrdimensionalem Array-Tensor und automatischem Differentialsystem-Autograd in Pytorch vor und gibt Beispiele für die Verwendung von Tensor und Autograd an, um eine lineare Regression zu erreichen und ihre Unterschiede zu vergleichen. In diesem Kapitel wird die Grundstruktur des Tensors und die Prinzipien von Autograd analysiert, um den Lesern zu helfen, die zugrunde liegenden Module von Pytorch umfassender zu verstehen.
- Kapitel 4 führt die grundlegende Verwendung des neuronalen Netzwerkmoduls NN in Pytorch vor, erläutert die Ebenen, Aktivierungsfunktionen, Verlustfunktionen und Optimierer im neuronalen Netzwerk und führt dazu, dass die Leser weniger als 50 Codezeilen verwenden, um die klassische Netzwerkstruktur Resnet zu implementieren.
- In Kapitel 5 werden Tools wie Datenlade, Voraussetzungsmodelle, Visualisierungstools und GPU-Beschleunigung in Pytorch eingeführt. Die rationale Verwendung dieser Tools kann die Effizienz der Benutzerprogrammierung verbessern.
Advanced Extensions (Kapitel 6-8) erklärt einige erweiterte Erweiterungen in Pytorch. Das Erlernen dieses Teils kann den Lesern helfen, effizientere Programme zu schreiben.
- Kapitel 6 führt Vektorisierungsideen in Pytorch ein, wobei hauptsächlich Rundfunkregeln, grundlegende Indizes, erweiterte Indizes und Einstein -Operationen enthalten sind. Am Ende dieses Kapitels führen die Leser dazu, Vektorisierungsideen zu verwenden, um Faltungsoperationen zu implementieren, zu verschieben, ROI -Ausrichtung und umgekehrte einzigartige Operationen im Deep -Lernen umzukehren.
- Kapitel 7 führt verteilte Operationen in Pytorch ein. Distributed Computing und Parallel Computing können den Schulungsprozess des Netzwerks beschleunigen. In diesem Kapitel werden ausführlich die Grundprinzipien des parallelen Computing und des verteilten Computers vorgestellt und auch die Verwendung von Taschenlampen verwendet. Verteilt und Horovod für die verteilte Schulung von Pytorch.
- Kapitel 8 führt die CUDA -Erweiterung in Pytorch vor und führt dazu, dass die Leser CUDA zur Implementierung von Sigmoid -Funktionen verwenden. Gleichzeitig fasst dieses Kapitel die Beziehung zwischen Cuda, Nvidia-Fahrer, Cudnn und Python zusammen.
Praktische Anwendungen (Kapitel 9-13) Verwenden Sie PyTorch, um mehrere coole und interessante Anwendungen zu implementieren. Für diesen Teil des Inhalts enthält dieses Repository einen vollständigen Implementierungscode und bietet vorab trainierte Modelle als Demos für die Testen.
- Kapitel 9 ist ein Kapitel, das die Vergangenheit und die Zukunft verbindet. Das Ziel ist es nicht, den Lesern neue Funktionen und neue Kenntnisse beizubringen, sondern es mit einem klassischen Wettbewerb in Kaggle zu kombinieren, um das einfachste Binärklassifizierungsproblem im tiefen Lernen zu verwirklichen. Während des Implementierungsprozesses werden die Leser dazu gebracht, das Wissen der ersten 5 Kapitel zu überprüfen und den Lesern zu helfen, Programme zu organisieren und vernünftigerweise zu codieren, um das Programm zu erleichtern und besser aufrechtzuerhalten. Gleichzeitig führt in diesem Kapitel vor, wie man in Pytorch debuggen.
- Kapitel 10 führt die grundlegenden Prinzipien der Generierung von kontroversen Netzwerken vor, veranlasst die Leser, einen Anime -Avatar -Generator von Grund auf neu zu implementieren, und können das generative kontroverses Netzwerk verwenden, um Anime -Avatare mit unterschiedlichen Stilen zu generieren.
- Kapitel 11 führt ein gewisses grundlegendes Wissen über die Verarbeitung natürlicher Sprache vor und führt ausführlich die Grundprinzipien von Charrnn und Transformator ein. Dieses Kapitel veranlasst die Leser, Transformator zu verwenden, um automatisch Gedichte zu schreiben. Dieses Programm kann die alten Menschen nachbilden, um Gedichte vorzunehmen und versteckte Gedichte zu erzeugen.
- Kapitel 12 führt die Grundprinzipien der Stilübertragung vor und führt die Leser dazu, neuronale Netzwerke zu implementieren, die den willkürlichen Stiltransfer unterstützen. Durch dieses Netzwerk können Leser jedes Bild in den Stil berühmter Gemälde umwandeln.
- Kapitel 13 führt die Grundprinzipien der Objekterkennung vor und veranlasst die Leser, einen einstufigen, verankerten und maximalen Wert für die Unterdrückung des Erkennungsalgorithmus Centernet zu implementieren. Die Entwurfsideen von Centernet können auf klassische Computer-Vision-Probleme wie Objekterkennung, menschliche Haltungsschätzung und Zielverfolgung dreidimensionaler Bilder migriert werden.
Der Inhalt der Textbeschreibung und einige Markdown -Inhalte im Notebook gehören zum ersten Entwurf dieses Buches. Die Beschreibung kann einige Unannehmlichkeiten geben. Bitte haben Sie Verständnis dafür, dass der Autor es später nach und nach korrigieren wird . Dieser Teil des Inhalts sorgt für eine 80% ige Konsistenz des Buches, aber es kann einige grammatikalische Probleme geben. Aus zeitlichen Einschränkungen wird der Autor es in Zukunft nach und nach aktualisieren.
Müssen Sie ein Buch kaufen?
Bücher sind nicht notwendig . Dieses Lagerhaus enthält mehr als 60% des Textinhalts und mehr als 90% des Code im Buch, insbesondere den Einführungsinhalt in den letzten Kapiteln, die den Erklärungsinhalt im Buch fast vollständig behalten. Die Leser können dieses Tutorial normal verwenden, auch wenn sie keine Bücher kaufen.
Wenn Sie der Meinung sind, dass Sie das Leseerlebnis der Papierversion bevorzugen und ein wunderschön gedrucktes und vollständig gedrucktes Buch zum einfachen Lesen hinterlassen möchten, können Sie genauso gut ein wenig Geld ausgeben, um die Arbeit des Autors im vergangenen Jahr zu unterstützen ~
Code Beschreibung
Der Code wird hauptsächlich unter python3+pytorch1.6 ~ 1,8 getestet, um das Endergebnis zu erhalten. Python2 wurde noch nicht getestet und die aktualisierte Version von Pytorch wurde noch nicht getestet.
Wenn es Unangemessenheit oder Bereiche gibt, die verbessert werden müssen, eröffnen Sie bitte eine Problemdiskussion oder geben Sie eine Pull -Anfrage ein.
Umgebungskonfiguration
Um PyTorch zu installieren, wählen Sie bitte die angegebene Version auf der offiziellen Website aus, um sie zu installieren, und installieren Sie sie mit einem Klick. Weitere Installationsmethoden finden Sie in den Anweisungen im Buch.
Klonen des Repositorys
git clone https : // github . com / chenyuntc / PyTorch - book . git
^_^
Wenn Sie Fehler, unklare Erklärungen oder Verwirrungen haben, öffnen Sie bitte ein Problem
Willkommen bei Pull -Anfragen
Happy Coding!

- JD.com Kauflink
- Dangdang Kauflink