Course Outline
Module 1: Essential Python for Machine Learning Workflows
• Programme commencement and environment configuration
Aligning objectives and establishing a reproducible Python ML workspace
• Python language fundamentals (accelerated)
Reviewing syntax, control structures, functions, and patterns prevalent in ML codebases
• Data structures for ML
Utilising lists, dictionaries, sets, and tuples for features, labels, and metadata
• Comprehensions and functional utilities
Implementing transformations via comprehensions and higher-order functions
• Object-oriented Python for ML developers
Understanding classes, methods, composition, and practical design choices
• dataclasses and lightweight modelling
Employing typed containers for configuration, examples, and results
• Decorators and context managers
Implementing patterns for timing, caching, logging, and resource-safe execution
• Handling files and paths
Managing datasets robustly and working with serialization formats
• Exceptions and defensive programming
Writing ML scripts that fail safely and transparently
• Modules, packages, and project structure
Organising reusable ML codebases effectively
• Typing and code quality
Applying type hints, documentation, and lint-friendly structures
Module 2: Numerical Python, SciPy, and Data Handling
• NumPy foundations for vectorised computing
Executing efficient array operations and performance-aware coding
• Indexing, slicing, broadcasting, and shapes
Ensuring safe tensor manipulation and shape reasoning
• Linear algebra essentials with NumPy and SciPy
Performing stable matrix operations and decompositions used in ML
• In-depth study of SciPy
Exploring statistics, optimisation, curve fitting, and sparse matrices
• Pandas for tabular ML data
Cleaning, joining, aggregating, and preparing datasets
• In-depth study of scikit-learn
Mastering the estimator interface, pipelines, and reproducible workflows
• Visualisation essentials
Creating diagnostic plots for data exploration and model behaviour analysis
Module 3: Programming Patterns for Building ML Applications
• Transitioning from notebooks to maintainable projects
Refactoring exploratory code into structured packages
• Configuration management
Managing externalised parameters and performing startup validation
• Logging, warnings, and observability
Implementing structured logging for debuggable ML systems
• Creating reusable components with OOP and composition
Designing extensible transformers and predictors
• Practical design patterns
Applying Pipeline, Factory/Registry, Strategy, and Adapter patterns
• Data validation and schema checks
Preventing silent data issues through rigorous validation
• Performance and profiling
Identifying bottlenecks and applying optimisation techniques
• Model I/O and inference interfaces
Ensuring safe persistence and clean prediction interfaces
• End-to-end mini-build
Constructing a production-style ML pipeline with configuration and logging
Module 4: Statistical Learning for Tabular, Text, and Image Data
• Evaluation foundations
Managing train and validation splits, conducting honest cross-validation, and selecting business-aligned metrics
• Advanced tabular ML
Utilising regularised GLMs, tree ensembles, and leakage-free preprocessing
• Calibration and uncertainty
Applying Platt scaling, isotonic regression, bootstrap methods, and conformal prediction
• Classical NLP methods
Understanding tokenisation trade-offs, TF-IDF, linear models, and Naive Bayes
• Topic modelling
Exploring LDA fundamentals and their practical limitations
• Classical computer vision
Implementing HOG, PCA, and feature-based pipelines
• Error analysis
Detecting bias, label noise, and spurious correlations
• Hands-on labs
Leakage-proof tabular pipeline
Text baseline comparison and interpretation
Classical vision baseline with structured failure analysis
Module 5: Neural Networks for Tabular, Text, and Image Data
• Training loop mastery
Writing clean PyTorch loops with AMP, clipping, and reproducibility features
• Optimisation and regularisation
Managing initialisation, normalisation, optimisers, and schedulers
• Mixed precision and scaling
Implementing gradient accumulation and checkpointing strategies
• Tabular neural networks
Utilising categorical embeddings, feature crosses, and ablation studies
• Text neural networks
Working with embeddings, CNNs, BiLSTMs or GRUs, and sequence handling
• Vision neural networks
Understanding CNN fundamentals and ResNet-style architectures
• Hands-on labs
Developing a reusable training framework
Comparing Tabular NNs with boosting models
Conducting CNN experiments with augmentation and scheduling
Module 6: Advanced Neural Architectures
• Transfer learning strategies
Applying freeze and unfreeze patterns, and discriminative learning rates
• Transformer architectures for text
Understanding self-attention internals and fine-tuning approaches
• Vision backbones and dense prediction
Exploring ResNet, EfficientNet, Vision Transformers, and U-Net concepts
• Advanced tabular architectures
Implementing TabTransformer, FT-Transformer, and Deep and Cross networks
• Time series considerations
Managing temporal splits and detecting covariate shift
• PEFT and efficiency techniques
Weighing LoRA, distillation, and quantisation trade-offs
• Hands-on labs
Fine-tuning a pretrained text transformer
Fine-tuning a pretrained vision model
Comparing tabular transformers with GBDT models
Module 7: Generative AI Systems
• Prompting fundamentals
Implementing structured prompting and controlled generation
• LLM foundations
Understanding tokenisation, instruction tuning, and hallucination mitigation
• Retrieval-Augmented Generation
Managing chunking, embeddings, hybrid search, and evaluation metrics
• Fine-tuning strategies
Applying LoRA and QLoRA with rigorous data quality controls
• Diffusion models
Gaining intuition for latent diffusion and practical adaptation
• Synthetic tabular data
Using CTGAN and addressing privacy considerations
• Hands-on labs
Building a production-style RAG mini-application
Validating structured output with schema enforcement
Optional diffusion experimentation
Module 8: AI Agents and MCP
• Agent loop design
Implementing observe, plan, act, reflect, and persist cycles
• Agent architectures
Exploring ReAct, plan-and-execute, and multi-agent coordination
• Memory management
Utilising episodic, semantic, and scratchpad approaches
• Tool integration and safety
Establishing tool contracts, sandboxing, and defending against prompt injection
• Evaluation frameworks
Managing replayable traces, task suites, and regression testing
• MCP and protocol-based interoperability
Designing MCP servers with secure tool exposure
• Hands-on labs
Building an agent from scratch
Exposing tools via an MCP-style server
Creating an evaluation harness with safety constraints
Requirements
Participants must possess a practical understanding of Python programming.
This programme is designed for technical professionals ranging from intermediate to advanced skill levels.