/serverless-ml-course

Serverless ML Course for building AI-enabled Prediction Services from models and features

Primary LanguageJupyter NotebookCreative Commons Zero v1.0 UniversalCC0-1.0

readme header

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

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

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.

Modules

  • Module 01 - Pandas and ML Pipelines in Python. Write your first serverless App.

  • Module 02 - Feature Store and Model Registry. Credit-card fraud prediction service.

  • Module 03 - Training Pipelines and Inference Pipelines.

  • Module 04 - Bring a Prediction Service to Life with a User Interface.

  • Module 05 - Automated Testing and Versioning of features and models.

  • Module 06 - Real-time serverless machine learning systems. Project presentation.

Lectures are streamed on Zoom weekly and published on our youtube channel.


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

Support and Partners


FSorg


Hopsworks