The Videos are copyrighted to YouTube and the author. The videos are reproduced here for the easy access by the viewers.


Learn PyTorch for deep learning in this comprehensive course for beginners. PyTorch is a machine learning framework written in Python.

โœ๏ธ Daniel Bourke developed this course. Check out his channel: https://www.youtube.com/channel/UCr8O8l5cCX85Oem1d18EezQ

๐Ÿ”— Code: https://github.com/mrdbourke/pytorch-deep-learning
๐Ÿ”— Ask a question: https://github.com/mrdbourke/pytorch-deep-learning/discussions
๐Ÿ”— Course materials online: https://learnpytorch.io
๐Ÿ”— Full course on Zero to Mastery (20+ hours more video): https://dbourke.link/ZTMPyTorch

Some sections below have been left out because of the YouTube limit for timestamps.

0:00:00 Introduction

๐Ÿ›  Chapter 0 โ€“ PyTorch Fundamentals
0:01:45 0. Welcome and “what is deep learning?”
0:07:41 1. Why use machine/deep learning?
0:11:15 2. The number one rule of ML
0:16:55 3. Machine learning vs deep learning
0:23:02 4. Anatomy of neural networks
0:32:24 5. Different learning paradigms
0:36:56 6. What can deep learning be used for?
0:43:18 7. What is/why PyTorch?
0:53:33 8. What are tensors?
0:57:52 9. Outline
1:03:56 10. How to (and how not to) approach this course
1:09:05 11. Important resources
1:14:28 12. Getting setup
1:22:08 13. Introduction to tensors
1:35:35 14. Creating tensors
1:54:01 17. Tensor datatypes
2:03:26 18. Tensor attributes (information about tensors)
2:11:50 19. Manipulating tensors
2:17:50 20. Matrix multiplication
2:48:18 23. Finding the min, max, mean & sum
2:57:48 25. Reshaping, viewing and stacking
3:11:31 26. Squeezing, unsqueezing and permuting
3:23:28 27. Selecting data (indexing)
3:33:01 28. PyTorch and NumPy
3:42:10 29. Reproducibility
3:52:58 30. Accessing a GPU
4:04:49 31. Setting up device agnostic code

๐Ÿ—บ Chapter 1 โ€“ PyTorch Workflow
4:17:27 33. Introduction to PyTorch Workflow
4:20:14 34. Getting setup
4:27:30 35. Creating a dataset with linear regression
4:37:12 36. Creating training and test sets (the most important concept in ML)
4:53:18 38. Creating our first PyTorch model
5:13:41 40. Discussing important model building classes
5:20:09 41. Checking out the internals of our model
5:30:01 42. Making predictions with our model
5:41:15 43. Training a model with PyTorch (intuition building)
5:49:31 44. Setting up a loss function and optimizer
6:02:24 45. PyTorch training loop intuition
6:40:05 48. Running our training loop epoch by epoch
6:49:31 49. Writing testing loop code
7:15:53 51. Saving/loading a model
7:44:28 54. Putting everything together

๐Ÿคจ Chapter 2 โ€“ Neural Network Classification
8:32:00 60. Introduction to machine learning classification
8:41:42 61. Classification input and outputs
8:50:50 62. Architecture of a classification neural network
9:09:41 64. Turing our data into tensors
9:25:58 66. Coding a neural network for classification data
9:43:55 68. Using torch.nn.Sequential
9:57:13 69. Loss, optimizer and evaluation functions for classification
10:12:05 70. From model logits to prediction probabilities to prediction labels
10:28:13 71. Train and test loops
10:57:55 73. Discussing options to improve a model
11:27:52 76. Creating a straight line dataset
11:46:02 78. Evaluating our model’s predictions
11:51:26 79. The missing piece โ€“ non-linearity
12:42:32 84. Putting it all together with a multiclass problem
13:24:09 88. Troubleshooting a mutli-class model

๐Ÿ˜Ž Chapter 3 โ€“ Computer Vision
14:00:48 92. Introduction to computer vision
14:12:36 93. Computer vision input and outputs
14:22:46 94. What is a convolutional neural network?
14:27:49 95. TorchVision
14:37:10 96. Getting a computer vision dataset
15:01:34 98. Mini-batches
15:08:52 99. Creating DataLoaders
15:52:01 103. Training and testing loops for batched data
16:26:27 105. Running experiments on the GPU
16:30:14 106. Creating a model with non-linear functions
16:42:23 108. Creating a train/test loop
17:13:32 112. Convolutional neural networks (overview)
17:21:57 113. Coding a CNN
17:41:46 114. Breaking down nn.Conv2d/nn.MaxPool2d
18:29:02 118. Training our first CNN
18:44:22 120. Making predictions on random test samples
18:56:01 121. Plotting our best model predictions
19:19:34 123. Evaluating model predictions with a confusion matrix

๐Ÿ—ƒ Chapter 4 โ€“ Custom Datasets
19:44:05 126. Introduction to custom datasets
19:59:54 128. Downloading a custom dataset of pizza, steak and sushi images
20:13:59 129. Becoming one with the data
20:39:11 132. Turning images into tensors
21:16:16 136. Creating image DataLoaders
21:25:20 137. Creating a custom dataset class (overview)
21:42:29 139. Writing a custom dataset class from scratch
22:21:50 142. Turning custom datasets into DataLoaders
22:28:50 143. Data augmentation
22:43:14 144. Building a baseline model
23:11:07 147. Getting a summary of our model with torchinfo
23:17:46 148. Creating training and testing loop functions
23:50:59 151. Plotting model 0 loss curves
24:00:02 152. Overfitting and underfitting
24:32:31 155. Plotting model 1 loss curves
24:35:53 156. Plotting all the loss curves
24:46:50 157. Predicting on custom data

source