A collection of practical deep learning notebooks completed during my MSc Artificial Intelligence, covering neural networks, computer vision, recurrent architectures, Transformers, and language-model reasoning.
| Category | Tools & Technologies |
|---|---|
| Language | Python |
| Deep Learning & ML | PyTorch · torchvision · Hugging Face Transformers · scikit-learn |
| Data & Numerical Computing | NumPy · pandas |
| Visualisation | Matplotlib · Seaborn |
| Environment | Jupyter Notebook · Google Colab |
| Week | Topic | Notebook |
|---|---|---|
| Week 2 | Neural-network fundamentals and PyTorch implementation | week-02-neural-networks.ipynb |
| Week 3 | Overfitting and model behaviour | week-03-overfitting.ipynb |
| Week 4 | Convolutional neural networks | week-04-convolutional-neural-networks.ipynb |
| Week 5 | Transfer learning and pretrained models | week-05-transfer-learning.ipynb |
| Week 6 | Recurrent neural networks and LSTMs | week-06-recurrent-neural-networks.ipynb |
| Week 7 | Attention and Transformer architectures | week-07-transformers.ipynb |
| Week 8 | Transformer applications and multimodal models | week-08-transformer-applications.ipynb |
| Week 9 | Prompting and reasoning with language models | week-09-llm-reasoning.ipynb |
- Fundamentals: PyTorch tensor operations, custom
nn.Moduleconstruction, and end-to-end training pipelines. - Evaluation & Dynamics: Overfitting detection, regularisation techniques, performance metrics, and confusion matrix visualisations.
- Computer Vision: Convolutional neural networks, feature extraction, and transfer learning with pretrained models.
- Sequential Modelling: Recurrent neural networks, LSTMs, sentiment classification, and sequence-to-sequence architectures.
- Transformer Architectures: Self-attention, multi-head attention, decoder-only models, and multimodal applications.
- LLM Reasoning: Prompt engineering, zero-shot chain-of-thought prompting, and self-consistency techniques.
I developed practical experience with:
- building and training neural networks in PyTorch
- diagnosing overfitting and comparing model behaviour
- implementing CNN and recurrent architectures
- applying transfer learning with pretrained models
- working with attention and Transformer architectures
- fine-tuning models for downstream tasks
- evaluating predictions using appropriate metrics and visualisations
- experimenting with prompting and reasoning techniques for language models
For a larger end-to-end deep learning project, see:
CIFAR-10 Dynamic Multi-Branch CNN
This project builds on the deep learning concepts covered here and implements a custom dynamically weighted CNN architecture achieving 91.08% test accuracy on CIFAR-10.