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.
- 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
✅ Recommended Platform: Google Colab
Colab provides a free, GPU-enabled environment and is the primary platform for this workshop. No local installation is required.
- A Google account
- Reliable internet connection
- 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.
- Enable GPU: Runtime > Change runtime type > Hardware Accelerator > GPU
- Run the first setup cell to install all required dependencies.
📘 Colab Tips | Colab FAQ
Note: Local setup is optional. Google Colab is strongly preferred for the workshop.
- Python 3.14+
piporuv(recommended for faster installs)
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 notebookOption 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 notebookThen open any SE##_CA_*.ipynb notebook and run the first setup cell.
Light refreshments and lunch will be provided on both days.
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
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 |
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
- 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
