Beyond Notebooks - Serverless ML
Build Batch and Real-Time Prediction Services with Python
Overview
You should not need to be an expert in Kubernetes or cloud computing to build an end-to-end service that makes intelligent decisions with the help of a ML model. Serverless ML makes it easy to build a system that uses ML models to make predictions.
You do not need to install, upgrade, or operate any systems. You only need to be able to write Python programs that can be scheduled to run as pipelines. The features and models your pipelines produce are managed by a serverless feature store / model registry. We will also show you how to build a UI for your prediction service by writing Python and some HTML.
Prerequisites: Python - Pandas - Github
Modules
-
Module 00 - Introduction and optional content.
-
Module 01 - Pandas and ML Pipelines in Python. Write your first serverless App.
-
Lab | Slides | Homework form
-
Module 02 - Data modeling and the Feature Store. The Credit-card fraud prediction service.
-
Lab | Slides | Homework form
-
Module 03 - Training Pipelines, Inference Pipelines, and the Model Registry.
-
Module 04 - Serverless User Interfaces for Machine Learning Systems.
-
Module 05 - Automated Testing and Versioning of features and models.
-
Module 06 - Real-time serverless machine learning systems. Project presentation.
Learning Outcomes:
- Learn to develop and operate AI-enabled (prediction) services on serverless infrastructure
- Develop and run serverless feature pipelines
- Deploy features and models to serverless infrastructure
- Train models and and run batch/inference pipelines
- Develop a serverless UI for your prediction service
- Learn MLOps fundamentals: versioning, testing, data validation, and operations
- Develop and run a real-time serverless machine learning system
Course Contents:
- Pandas and ML Pipelines in Python. Write your first serverless App.
- The Feature Store for Machine Learning. Feature engineering for a credit-card fraud serverless App.
- Training Pipelines and Inference Pipelines
- Bring a Prediction Service to Life with a User Interface (Gradio, Github Pages, Streamlit)
- Automated Testing and Versioning of features and models
- Real-time serverless machine learning systems. Project presentation.
Who is the target audience?
You have taken a course in machine learning (ML) and you can program in Python. You want to take the next step beyond training models on static datasets in notebooks. You want to be able to build a prediction service around your model. Maybe you work at an Enterprise and want to demonstrate your models’ value to stakeholders in the stakeholder's own language. Maybe you want to include ML in an existing application or system.
Why is this course different?
You don’t need any operations experience beyond using GitHub and writing Python code. You will learn the essentials of MLOps: versioning artifacts, testing artifacts, validating artifacts, and monitoring and upgrading running systems. You will work with raw and live data - you will need to engineer features in pipelines. You will learn how to select, extract, compute, and transform features.
Will this course cost me money?
No. You will become a serveless machine learning engineer without having to pay to run your serverless pipelines or to manage your features/models/user-interface. We will use Github Actions and Hopsworks that both have generous time-unlimited free tiers.
Register now at Serveless ML Course
Timeline
Self-paced
Requirements
- Python environment include a notebook (Jupyter or Colabatory)
- https://github.com account
- https://hopsworks.ai account
Key Technologies
Development environment
You can write, test, debug, and train your models in some Python IDE. We will focus on notebooks and Python programs. You can use Jupyter notebooks or Colabatory.
Github
Github to manage your code, GitHub Actions to run your workflows, and Github Pages for your user interface for non-interactive applications. Github Actions offers a free tier of 500 MB and 2,000 minutes to run your pipelines. https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions
Hopsworks
Hopsworks.ai has a free tier of 10 GB of storage.
Useful Resources
name | Description | link |
---|---|---|
Awesome MLOps | A collection of links and resources for MLOps | https://github.com/visenger/awesome-mlops |
Machine Learning Ops | a collection of resources on how to facilitate Machine Learning Ops with GitHub. | https://mlops.githubapp.com/ |
MLOps Toys | A curated list of MLOps projects. | https://mlops.toys/ |
MLOps Zoomcamp | teaches practical aspects of productionizing ML services. | https://github.com/DataTalksClub/mlops-zoomcamp |
PYSLACKERS | A large open community for Python programming enthusiasts. | https://pyslackers.com/web |
Feature Store Org | An open community for everything feature stores. | https://www.featurestore.org |
Other MLOps Courses
name | Description | link |
---|---|---|
MlOps Zoomcamp | DevOps style course with Python and Docker as prerequisites. | https://github.com/DataTalksClub/mlops-zoomcamp |
Full Stack Deep Learning | This course shares best practices for the full stack; topics range from problem selection to dataset management to monitoring. | https://fullstackdeeplearning.com/ |
MLOps course | A series of lessons teaching how to apply ML to build production-grade products (by Goku Mohandas). | https://github.com/GokuMohandas/mlops-course |