Duration
17h Th, 17h Labo., 18h Proj.
Number of credits
Lecturer
Language(s) of instruction
English language
Organisation and examination
Teaching in the second semester
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
We are at the beginning of the AI revolution, which will have a deep impact on many industries. There is a large demand for skilled engineers who are able to build ML applications.
Bringing a Machine Learning application to production requires many more efforts than solely the ML model development. Famously, there is a hidden technical debts in designing and implementing all the components coming around your model.
The course of Machine Learning System Designs (or MLOps) will enable students to build fully functional ML applications. It will look at the whole lifecycle of building a real world ML application, from a technical and functional perspective. At the end of the course, students will be familiar with key tools and frameworks of MLOps.
The material from last year can be found on Github (make sure to be on the correct version).
Topics to be covered:
- Introduction to MLOps
- Data preparation
- Cloud development
- API
- Model serving
- ML pipelines
- Monitoring
- CICD
ML model card, Agile, Docker (Compose), Flask, Cloud, Github Flow, Github Actions, Pytest
Learning outcomes of the learning unit
At the end of the course, the student will have acquired a solid and detailed understanding of the main concepts of implementing and end-to-end ML applications. The student will have gain a base experience of the main tools and frameworks used by data scientists and ML engineers. This experience will be gained over a set of assignment and one larger project.
This course contributes to the learning outcomes III.3, III.4, IV.3, IV.4, V.1, V.2, V.3, VI.1, VI.2, VII.1, VII.2, VII.3, VII.4, VII.5. of the MSc in data science and engineering.
This course contributes to the learning outcomes III.3, III.4, IV.3, IV.4, IV.5, IV.6, V.1, V.2, V.3, VI.1, VI.2, VII.1, VII.2, VII.3, VII.4, VII.5, VII.6. of the MSc in computer science and engineering.
Prerequisite knowledge and skills
Basic Machine Learning experience.
Basic coding in Python.
Following "ELEN0062: Introduction to Machine learning" before taking this class is strongly recommended.
Following "INFO8010-1: Deep learning" before taking this class is recommended but not necessary.
Planned learning activities and teaching methods
- Theoretical lectures
- Labs
- Project
Mode of delivery (face to face, distance learning, hybrid learning)
Blended learning
Further information:
Lectures and labs will be taught face-to-face. Projects will be carried out remotely.
Some time will be kept after each class lesson for students to work together on their projects. During that time, the teaching staff will stay in the classroom to provide support to students.
Course materials and recommended or required readings
Other site(s) used for course materials
- Github (https://github.com/ThomasVrancken/info9023-mlops)
Further information:
Slides and all relevant reading material will be made available during the semester.
It will be available in the following Github repository: info9023-mlops
Exam(s) in session
Any session
- In-person
oral exam
Written work / report
Additional information:
Exam(s) in session
Any session
- In-person
oral exam
Written work / report
Additional information:
Exam(s) in session
Any session
- In-person
oral exam
Written work / report
Additional information:
The evaluation is divided into the following units:
Exam
Group project
Work placement(s)
No official one. Industry experts will be linked to the course and can guide students towards contractual possibilities (e.g. at ML6).
Organisational remarks and main changes to the course
Contacts
Teacher: Thomas Vrancken (t.vrancken@uliege.be)
Support: Matthias Pirlet (matthias.pirlet@uliege.be)