PyData Amsterdam 2023

Designing a Machine Learning System
09-14, 10:30–11:50 (Europe/Amsterdam), Hello, World! (Tutorials)

Are you a machine learning practitioner struggling with designing, reasoning, and communicating about ML systems? Then this session is for you! With the industry moving towards end-to-end ML teams to enable them to implement MLOps practices, it is paramount for you to understand ML from a systems perspective. In this hands-on session, you will gain a thorough understanding of the technical intricacies of designing valuable, reliable and scalable ML systems.

During this session you will improve your understanding of the technical intricacies of designing valuable, reliable and scalable ML systems. With others you will design a machine learning application from scratch, starting with clearly defining business requirements, framing the ML problem, to putting your design to paper. The session enables you to identify trade-offs and bottlenecks in a system. Plus, you’ll learn how to effectively communicate and collaborate with other people on a system design.

There will be a mix of theory and practice. We will explain the importance of ML system design, share a common methodology for designing an ML system, and apply it to a real business case. A canvas will be provided physically for following the design methodology, and sheets/whiteboards/post-its to iterate on your design.

This session is for all that have worked, or studied, in the field of ML/AI, or have affinity with the subject. The session is technical, but also interesting if you are a (product) manager in the field, as it will allow you to experience how technical designs are executed and ensure the design meets the business requirements. Very little ML algorithm knowledge is required, knowing the difference between classification and regression is enough.

This Tutorial is for you if…
- You want to improve your understanding of what makes a scalable machine learning application
- You want to make more conscious decisions when working on machine learning applications
- You want to be better at identifying trade-offs when making design decisions for your machine learning application
- You want to improve communicating your design decisions

Prior Knowledge Expected

No previous knowledge expected

Jetze is a well-rounded Machine Learning Engineer, who is as comfortable solving Data Science use cases as he is productionizing them in the cloud. His expertise includes MLOps, Systems Design and Cloud Engineering. In his past role as a researcher, he has published papers in different domains: Computer Vision and Natural Language Processing.

I'm a Software Engineer who gradually moved into the Machine Learning space. My passion is in building high quality and highly maintainable software systems. I put great effort in CI/CD, layered testing, monitoring/alerting and put special attention to communicating my ideas ensuring everyone is onboard.
To do this I like using RFC-like process using design docs that serves as documentation for designing software systems.