Course Outline
Module 1: Core Python Fundamentals for ML Workflows
• Course initiation and environment configuration
Aligning learning objectives and establishing a reproducible Python ML workspace
• Python syntax refresher (fast-track)
Reviewing core syntax, control flow, functions, and patterns prevalent in ML codebases
• Data structures relevant to ML
Utilising lists, dictionaries, sets, and tuples for managing features, labels, and metadata
• Comprehensions and functional utilities
Implementing data transformations via comprehensions and higher-order functions
• Object-Oriented Python for ML developers
Applying classes, methods, composition, and practical architectural decisions
• dataclasses and lightweight data modelling
Creating typed containers for configuration, samples, and results
• Decorators and context managers
Implementing timing, caching, logging, and resource-safe execution patterns
• File and path management
Ensuring robust dataset handling and serialization compatibility
• Exception handling and defensive coding
Writing ML scripts that fail gracefully and transparently
• Modules, packaging, and project architecture
Structuring reusable ML codebases effectively
• Type hints and code quality
Integrating type hints, documentation, and lint-friendly structure
Module 2: Numerical Python, SciPy, and Data Processing
• NumPy basics for vectorised computing
Focusing on efficient array operations and performance-conscious coding
• Indexing, slicing, broadcasting, and shape management
Ensuring safe tensor manipulation and logical shape reasoning
• Essential linear algebra with NumPy and SciPy
Executing stable matrix operations and decompositions critical to ML
• In-depth SciPy exploration
Covering statistics, optimisation, curve fitting, and sparse matrix handling
• Pandas for tabular ML data
Performing cleaning, joining, aggregation, and dataset preparation
• In-depth scikit-learn exploration
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 ML Application Development
• Transitioning from notebooks to maintainable projects
Refactoring exploratory code into structured packages
• Configuration management
Implementing externalised parameters and startup validation
• Logging, warnings, and observability
Establishing structured logging for debuggable ML systems
• Reusable components via OOP and composition
Designing extensible transformers and predictors
• Applied design patterns
Implementing Pipeline, Factory/Registry, Strategy, and Adapter patterns
• Data validation and schema enforcement
Preventing silent data integrity issues
• Performance analysis 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 project
Building a production-style ML pipeline with integrated configuration and logging
Module 4: Statistical Learning for Tabular, Text, and Image Data
• Evaluation foundations
Implementing train/validation splits, honest cross-validation, and business-aligned metrics
• Advanced tabular ML
Applying regularised GLMs, tree ensembles, and leakage-free preprocessing
• Calibration and uncertainty quantification
Utilising Platt scaling, isotonic regression, bootstrap, and conformal prediction
• Classical NLP methods
Addressing 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
• Practical labs
Building a leakage-proof tabular pipeline
Comparing and interpreting text baselines
Analysing classical vision baselines with structured failure modes
Module 5: Neural Networks for Tabular, Text, and Image Data
• Mastering the training loop
Implementing clean PyTorch loops with AMP, clipping, and reproducibility
• Optimisation and regularisation
Managing initialisation, normalisation, optimisers, and schedulers
• Mixed precision and scaling strategies
Implementing gradient accumulation and checkpointing
• Tabular neural networks
Utilising categorical embeddings, feature crosses, and ablation studies
• Text neural networks
Handling embeddings, CNNs, BiLSTM/GRU, and sequential data
• Vision neural networks
Mastering CNN fundamentals and ResNet-style architectures
• Practical labs
Developing a reusable training framework
Comparing Tabular NNs vs boosting algorithms
Experimenting with CNNs, augmentation, and scheduling
Module 6: Advanced Neural Architectures
• Transfer learning strategies
Applying freeze/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
Addressing temporal splits and covariate shift detection
• PEFT and efficiency techniques
Evaluating LoRA, distillation, and quantisation trade-offs
• Practical labs
Fine-tuning a pretrained text transformer
Fine-tuning a pretrained vision model
Comparing Tabular transformers vs GBDT
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 strict data quality controls
• Diffusion models
Gaining intuition for latent diffusion and practical adaptation
• Synthetic tabular data
Using CTGAN and addressing privacy considerations
• Practical labs
Building a production-style RAG mini-application
Implementing structured output validation with schema enforcement
Optional diffusion model 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
Implementing episodic, semantic, and scratchpad approaches
• Tool integration and safety
Defining tool contracts, sandboxing, and prompt injection defences
• Evaluation frameworks
Creating replayable traces, task suites, and regression tests
• MCP and protocol-based interoperability
Designing MCP servers with secure tool exposure
• Practical labs
Building an agent from scratch
Exposing tools via an MCP-style server
Creating an evaluation harness with safety constraints
Requirements
A solid command of Python programming is required for participation.
This programme is tailored for technical professionals with intermediate to advanced experience.
Testimonials (2)
Getting people that never used AI some repetition in prompting and people that do use AI to consider different methods to using it.
Matthew Gay - Tarsus Pharmaceuticals
Course - Artificial Intelligence (AI) Overview
Working from first principles in a focused way, and moving to applying case studies within the same day