Skip to content

CLDiego/uom_fse_dl_workshop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

555 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Workshop Banner

Version

Deep Learning with PyTorch – Workshop

Overview 📋

This hands-on workshop introduces the fundamentals of deep learning using PyTorch. Participants will learn by building real models and solving practical tasks across two sessions at Nancy Rothwell – 2A.011 M&T, on 23 February and 2 March 2025.

What You'll Learn

  • Core PyTorch concepts (tensors, autograd, GPU usage)
  • Building and training artificial neural networks and autoencoders
  • Implementing CNNs for image classification tasks
  • Applying transfer learning with pre-trained models for image segmentation
  • Working with real-world datasets for classification, regression, and anomaly detection
  • Understanding data preprocessing, augmentation, and normalisation techniques

Getting Started 🛠️

✅ Recommended Platform: Google Colab

Colab provides a free, GPU-enabled environment and is the primary platform for this workshop. No local installation is required.

What You Need

  • A Google account
  • Reliable internet connection

Running the Notebooks on Colab

  1. Open the GitHub repo and click the "Open in Colab" badge at the top of any notebook, or:
    • Download the notebook locally.
    • Open Google Colab.
    • Use File > Upload Notebook to load it.
  2. Enable GPU: Runtime > Change runtime type > Hardware Accelerator > GPU
  3. Run the first setup cell to install all required dependencies.

📘 Colab Tips | Colab FAQ


💻 Running Locally (Optional)

Note: Local setup is optional. Google Colab is strongly preferred for the workshop.

Requirements

  • Python 3.14+
  • pip or uv (recommended for faster installs)

Setup Steps

Option A – using uv (recommended):

# 1. Install uv (if not already installed)
pip install uv

# 2. Clone the repository
git clone https://github.com/CLDiego/uom_fse_dl_workshop.git
cd uom_fse_dl_workshop

# 3. Create a virtual environment and install all dependencies
uv sync

# 4. Launch Jupyter
uv run jupyter notebook

Option B – using pip:

# 1. Clone the repository
git clone https://github.com/CLDiego/uom_fse_dl_workshop.git
cd uom_fse_dl_workshop

# 2. Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate        # macOS/Linux
# .venv\Scripts\activate         # Windows

# 3. Install the project and all dependencies (from pyproject.toml)
pip install .

# 4. Launch Jupyter
jupyter notebook

Then open any SE##_CA_*.ipynb notebook and run the first setup cell.


Workshop Schedule 🧠

Day 1 – 23 February (Sessions 1–3)

Time Activity Notebook
08:30 Registration, setup & troubleshooting
09:00 – 10:15 Session 1: Introduction to PyTorch Open In Colab
10:15 – 10:30 Break
10:30 – 11:45 Session 2: Artificial Neural Networks Open In Colab
11:45 – 12:45 Lunch
12:45 – 14:00 Session 3: Training Neural Networks Open In Colab

Day 2 – 2 March (Sessions 4–5)

Time Activity Notebook
08:30 Setup continuation
09:00 – 10:30 Session 4: Convolutional Neural Networks (CNNs) Open In Colab
10:30 – 10:45 Break
10:45 – 12:00 Session 5: Transfer Learning & Image Segmentation Open In Colab
12:00 – 13:00 Lunch
13:00 – 14:00 Wrap-up, discussion & Q&A

Light refreshments and lunch will be provided on both days.


Learning Outcomes 🎯

By the end of the workshop, you'll be able to:

  • Implement deep learning models using PyTorch
  • Build and train artificial neural networks and autoencoders
  • Apply CNNs for image classification tasks
  • Use transfer learning with pre-trained models for image segmentation
  • Work with real-world datasets for classification, regression, and anomaly detection tasks
  • Understand data preprocessing, augmentation, and normalisation techniques

Datasets 📊

You'll work with the following datasets across the sessions:

Dataset Task
Higgs Boson Dataset Binary classification with high-energy physics data
Heart & Lung Sounds (HLS-CMDS) Anomaly detection using autoencoders
NEU Surface Defects Dataset CNN-based image classification
ISIC Skin Lesion Dataset Medical image segmentation using U-Net and transfer learning

Repository Structure 📁

UoM_fse_dl_workshop/
├── SE##_CA_*.ipynb      # Code-along notebooks for live exercises
├── solutions/           # Completed notebooks with full implementations
├── figs/                # Figures and diagrams
└── utils/               # Helper tools used throughout the workshop
    ├── plotting/
    ├── data/
    ├── ml/
    └── solutions.json

Prerequisites 🔧

  • Basic Python programming skills
  • Familiarity with Jupyter Notebooks, NumPy, and Pandas
  • Understanding of core ML concepts (e.g., loss functions, model evaluation)
  • No PyTorch experience required!
  • (Optional) Background in linear algebra and calculus is beneficial

Additional Resources 📚

PyTorch & Models

Visual Tools

Courses & Books

About

Content for UOM FSE Hands-on workshop on the fundamentals of deep learning with PyTorch

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors