A comprehensive PyTorch workshop covering the fundamentals and advanced techniques of deep learning.
- Introduction to Tensors
Learn about PyTorch tensors, the foundational data structure, and how to manipulate them. - Gradient and Autograd
Understand gradients, automatic differentiation, and how PyTorch handles backpropagation withautograd
. - Perceptron and Adaline
Explore the basics of the simplest neural network model (perceptron) and Adaptive Linear Neuron (Adaline). - Linear Regression
Implement linear regression using PyTorch, including model training and prediction. - Activation Functions
Study different activation functions (ReLU, Sigmoid, Tanh, ...) and their roles in neural networks. - Loss Functions
Dive into common loss functions used in neural networks, including MSE, Cross-Entropy, and others. - Logistic Regression
Learn how to build a logistic regression model for binary classification tasks. - Working with Datasets
Understand how to work with datasets in PyTorch usingtorch.utils.data.Dataset
andtorch.utils.data.DataLoader
. - Multi-Layer Perceptron
Implement and explore multi-layer perceptron (MLP) for more complex tasks. - Custom Classes in PyTorch
Learn how to define custom models, dataset, loss function, ... using PyTorch's class-based approach. - Radial Basis Function Networks
Implement and explore Radial Basis Function (RBF) networks and how they differ from traditional neural networks. - Transforms in PyTorch
Learn to apply transforms like data augmentation on datasets usingtorchvision.transforms.v2
. - Convolutional Neural Networks
Explore concepts around convolutional neural networks (CNNs). - Normalizations
Understand normalization techniques such as Batch Normalization and Layer Normalization. - Feature Extraction
Learn how to extract features from pre-trained models for downstream tasks. - Transfer Learning
Apply transfer learning by using pre-trained models for a new tasks. - Fine-Tuning Models
Understand how to fine-tune models by updating specific layers while freezing others. - Save and Load Checkpoints
Learn how to save and load model checkpoints to resume training or for inference.
You can install all dependencies listed in requirements.txt
using pip.
pip install -r requirements.txt
Note: This project was developed using Python v3.12.3
. If you encounter issues running the dependencies or code, consider using this specific Python version.
- Open the root folder with VS Code
- Windows/Linux:
Ctrl + K
followed byCtrl + O
- macOS:
Cmd + K
followed byCmd + O
- Windows/Linux:
- Open
.ipynb
files using Jupyter extension integrated with VS Code - Allow Visual Studio Code to install any recommended dependencies for working with Jupyter Notebooks.
- Jupyter is integrated with both VS Code & Google Colab
Any mistakes, suggestions, or contributions? Feel free to reach out to me at:
I look forward to connecting with you!
- Programming Fundamentals
- Mathematics for Machine Learning
- Linear Algebra: Vectors, matrices, matrix operations.
- Calculus: Derivatives, gradients, partial derivatives, chain rule (for backpropagation).
- Probability & Statistics: Probability distributions, mean/variance, etc.
- PyTorch:
- Source Code
- Over 3000 contributers are currently working on PyTorch.
- Link: github.com/pytorch/pytorch
- Website
- The official website for PyTorch, offering comprehensive documentation, tutorials, and resources for deep learning and machine learning with PyTorch.
- Link: pytorch.org
- Pytorch Documentations
- Detailed and comprehensive documentation for all PyTorch features and functionalities, including tutorials and guides to help you get started and master PyTorch.
- Link: pytorch.org/docs/stable/index.html
- TorchVision Documentations:
- The torchvision package [part of the PyTorch] consists of popular datasets, model architectures, and common image transformations for computer vision.
- Link: pytorch.org/vision/stable/index.html
- TorchAudio Documentation:
- The torchaudio package [part of the PyTorch] consists of audio I/O and signal processing functionalities, enabling efficient loading, transforming, and manipulating audio.
- Link: pytorch.org/audio/stable/index.html
- Source Code
- NumPy:
- Website
- The official website for NumPy, providing information, tutorials, and resources for the NumPy library
- Link: numpy.org
- Documentation
- Comprehensive guide and reference for all functionalities and features of the NumPy library
- Link: numpy.org/doc
- Website
- MatPlotLib:
- A comprehensive library for creating static, animated, and interactive visualizations in Python
- Link: matplotlib.org
- Pandas:
- A powerful, open-source data analysis and manipulation library for Python
- Pandas is built on top of NumPy
- Link: pandas.pydata.org/