Module overview
This module will study the algorithms, technologies and software that enables “Machine Learning on Systems” ranging from tiny resource-constrained platforms such as microcontrollers to edge devices.
Aims and Objectives
Learning Outcomes
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- The trade-offs between the resources and computational complexities of machine learning models
- The fundamentals of efficient machine learning
- Software development tools and frameworks for machine learning
- Techniques for the optimisation of machine learning models on resource-constrained devices
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Build and train models using common machine learning frameworks
- Conceive and design machine learning applications for resource-constrained devices.
- Evaluate and apply techniques for the optimisation of machine learning models on resource-constrained devices
Syllabus
This module will look at the theoretical and practical application of machine learning techniques on devices. Topics will include:
Fundamentals of machine learning and deep learning on embedded devices.
Challenges of implementing machine learning on resource-constrained devices.
System Performance Trade-Offs.
Model Optimization techniques such as compression and pruning.
Optimization techniques specific to CNN, RNNs and Transformer based models.
Accelerators such as Neural Processing Units and GPU.
Hardware and software tools/frameworks.
Deep learning compilers.
Building, Training and deploying a model.
Different Learning Setups (e.g. Transfer Learning)
Case studies and Applications of Edge computing in domains of computer vison, audio signal processing and NLP.
Learning and Teaching
Teaching and learning methods
Lectures and labs form the basis for the content delivery for this module. The students will be using open-source deep learning frameworks and will work with real hardware.
Type | Hours |
---|---|
Lecture | 24 |
Independent TV | 114 |
Practical | 12 |
Total study time | 150 |
Resources & Reading list
Textbooks
Situnayake, Daniel, and Jenny Plunkett.. AI at the Edge.
Iodice, Gian Marco. TinyML Cookbook: Combine Machine Learning with Microcontrollers to Solve Real-world Problems.
Warden, Pete, and Daniel Situnayake. Tinyml: Machine learning with tensorflow lite on arduino and ultra-low-power microcontrollers..
Assessment
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Coursework | 40% |
Final Exam | 60% |