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 in the early days of the AI revolution, which is expected to bring a large impact to 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 large hidden technical debts in designing and implementing all the components coming around your model.
The course of Machine Learning System Designs (or MLOps) aims at enabling students to truly build fully functional "user-ready" 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.
Topics to be covered (tentative and subject to change):
- Introduction to MLOps
- Model development
- Data ingestion
- Model training
- Model serving
- Containerised pipeline
- Model maintenance
- Communication and collaboration
- Model/data card, Kanban, Agile, Cloud development, MLFlow, Docker (compose), Github Flow, Github Flow/Actions, Pytest, Pylint
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.
Planned learning activities and teaching methods
- Theoretical lectures
- Project
Mode of delivery (face to face, distance learning, hybrid learning)
Blended learning
Additional information:
Lectures will taught face-to-face. Projects will be carried out remotely.
Potentially, some open office sessions might be held to provide support on ongoing project.
Recommended or required readings
Slides and all relevant reading material will be made available during the semester.
It will then be included 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)