Deep Learning Fundamentals

- Deep Learning Fundamentals
- Unit 1Intro to ML and DL
- Unit 2Using Tensors w/ PyTorch
- Unit 3Model Training in PyTorch
- Unit 3.1Using Logistic Regression for Classification
- Unit 3.2The Logistic Regression Computation Graph
- Unit 3.3Model Training with Stochastic Gradient Descent
- Unit 3.4Automatic Differentiation in PyTorch
- Unit 3.5The PyTorch API
- Unit 3.6Training a Logistic Regression Model in PyTorch
- Unit 3.7 Feature Normalization
- Unit 3 ExercisesUnit 3 Exercies

- Unit 4Training Multilayer Neural Networks Overview
- Unit 4.1Logistic Regression for Multiple Classes
- Unit 4.2Multilayer Neural Networks
- Unit 4.3Training a Multilayer Neural Network in PyTorch
- Unit 4.4Defining Efficient Data Loaders
- Unit 4.5Multilayer Neural Networks for Regression
- Unit 4.6Speeding Up Model Training Using GPUs
- Unit 4 ExercisesUnit 4 Exercises

- Unit 5Organizing Your Code with Lightning
- Unit 5.1 Organizing Your Code with Lightning
- Unit 5.2Training a Multilayer Perceptron using the Lightning Trainer
- Unit 5.3Computing Metrics Efficiently with TorchMetrics
- Unit 5.4Making Code Reproducible
- Unit 5.5Organizing Your Data Loaders with Data Modules
- Unit 5.6The Benefits of Logging Your Model Training
- Unit 5.7Evaluating and Using Models on New Data
- Unit 5.8Add Functionality with Callbacks
- Unit 5 ExercisesUnit 5 Exercises

- Unit 6Essential Deep Learning Tips & Tricks
- Unit 6.1 Model Checkpointing and Early Stopping
- Unit 6.2Learning Rates and Learning Rate Schedulers
- Unit 6.3Using More Advanced Optimization Algorithms
- Unit 6.4Choosing Activation Functions
- Unit 6.5Automating The Hyperparameter Tuning Process
- Unit 6.6Improving Convergence with Batch Normalization
- Unit 6.7Reducing Overfitting With Dropout
- Unit 6.8Debugging Deep Neural Networks
- Unit 6 ExercisesUnit 6 Exercises

- Unit 7Getting Started with Computer Vision
- Unit 7.1Working With Images
- Unit 7.2How Convolutional Neural Networks Work
- Unit 7.3Convolutional Neural Network Architectures
- Unit 7.4Training Convolutional Neural Networks
- Unit 7.5Improving Predictions with Data Augmentation
- Unit 7.6Leveraging Pretrained Models with Transfer Learning
- Unit 7.7Using Unlabeled Data with Self-Supervised
- Unit 7 ExercisesUnit 7 Exercises

- Unit 8Natural Language Processing and Large Language Models
- Unit 8.1Working with Text Data
- Unit 8.2Training A Text Classifier Baseline
- Unit 8.3Introduction to Recurrent Neural Networks
- Unit 8.4From RNNs to the Transformer Architecture
- Unit 8.5Understanding Self-Attention
- Unit 8.6Large Language Models
- Unit 8.7A Large Language Model for Classification
- Unit 8 ExercisesUnit 8 Exercises

- Unit 9Techniques for Speeding Up Model Training
- Unit 10 The Finale: Our Next Steps After AI Model Training

# 4.3 Training a Multilayer Neural Network in PyTorch (PART 1-5)

#### References

- The official MNIST website: http://yann.lecun.com/exdb/mnist/

**Code**

- Parts 1-2: XOR dataset, 4.3-mlp-pytorch-part1-2-xor
- Parts 3-5: MNIST dataset, 4.3-mlp-pytorch-part3-5-mnist

**What we covered in this video lecture**

In this series of coding videos, we trained our first multilayer perceptron in PyTorch.

First, we started with the XOR dataset as a warm-up exercise. Then, we moved to the MNIST handwritten digit classification dataset.

The MNIST dataset consists of 28×28 handwritten digits, which we reshaped into a vector format for our multilayer perceptron model. Since the MNIST dataset is relatively small and simple, we were able to achieve a relatively high prediction accuracy of 96%.

**Additional resources if you want to learn more**

If you are looking for simple but more challenging datasets, also check out EMNIST dataset, which extends the MNIST dataset with handwritten letters:

- Gregory Cohen, Saeed Afshar, Jonathan Tapson, André van Schaik (2017).
*EMNIST: An Extension of MNIST to Handwritten Letters*, https://arxiv.org/abs/1702.05373

Another popular dataset is Fashion-MNIST, which has the same format as MNIST (28×28 grayscale images from 10 classes) but consists of fashion products:

- Han Xiao, Kashif Rasul, Roland Vollgraf (2017).
*Fashion-MNIST: a Novel Image Dataset for Benchmarking Machine Learning Algorithms*, https://arxiv.org/abs/1708.07747.

**Log in or create a free Lightning.ai account to access:**

- Quizzes
- Completion badges
- Progress tracking
- Additional downloadable content
- Additional AI education resources
- Notifications when new units are released
- Free cloud computing credits

#### Quiz: 4.3 Training a Multilayer Perceptron in PyTorch

##### Watch Video 1 Mark complete and go to Unit 4.4 →

Unit 4.3