Skip to content

Latest commit

 

History

History
470 lines (222 loc) · 10.6 KB

README.md

File metadata and controls

470 lines (222 loc) · 10.6 KB

Awesome-MLOps-Course-Outline

Awesome MLOps Course Outline

Lesson 1 - MLOps Introduction


1.1 What is MLOps & MLOps Motivation

1.2 Solutions and Future Trends

1.3 MLOps Components

1.4 Different Roles involved in MLOps (ML Engineering + Operations)

1.5 Machine Learning Life Cycle

1.6 MLOps Vs DevOps

1.7 Major Phases — what it takes to master MLOps

1.8 Different tools for MLOps

1.9 MLOps Maturity Model Levels

1.10 MLOps - Stages of CI / CD

Lesson 2 - Linux Basics Foundation


2.1 Why Linux? Linux types? How to access Linux env in different system

2.2 Free tier Amazon EC2 ubuntu instance

2.3 SSH and SSH tools & Putty

2.4 File zilla & WinSCP

2.5 Introduction to Shell, Bash Shell & Basic Linux Commands

2.6 Help for Command Line

2.7 Linux Core Concepts & Kernel and types

2.8 Linux file system, Boot Sequence, Run levels, File Types & Filesystem Hierarchy

2.9 Package Management Introduction and Configuration

2.10 Linux Type Based Package Manager

2.11 RPM and YUM

2.12 DPKG and APT

2.13 File Compression and Archival, Searching for Files and Patterns using grep/wildcards etc

2.14 VI, Nano Editor

2.15 Security and File Permissions, The Security Incident (story)

2.16 Linux Accounts, User Management, Access Control Files, Account Management

2.17 File Permissions and Ownership , Cron jobs

2.18 Service management with systemd, Working overtime (story)

2.19 Creating a Systemd Service, Systemd Tools

2.20 Lab - systemd services

2.21 Assignment | Assignment Solution

Lesson 3 - GIT Foundation – Github


3.1 What? Why? When? Type? Vendor? Pricing? Industry wise uses of GIT

3.2 Creation of Github / Gitlab / bitbucket account

3.3 Local GitHub UI installation, setup with VSCode and Pycharm

3.4 Local and Remote Repositories installation and configuration

3.5 GIT Repository initialisation

3.6 Commands: git log

3.7 Git Branches - What is branching in Git and why we need it?

3.8 Master/main branch and user-defined branch

3.9 Checkout and pushing to a branch, Merging of branches

3.10 Project control and management

3.11 In Remote Repositories, Initialisation of Remote Repositories

3.12 Pushing code to the remote repositories

3.13 Cloning of the remote repositories to local

3.14 PR (Pull Requests), Fetch and Pull

3.15 Handling conflict on merging branch, Forking of repository

3.16 Rebasing, Resetting and Reverting, Stashing

3.17 Assignment | Assignment Solution

Lesson 4 - Data version control DVC


4.1 What is DVC, DVC Uses, Installation in Mac OS, Windows & Linux

4.2 Data Versioning, Model Versioning

4.3 Data Access, Model Access & Data Pipelines, Metrics, Parameters, Plots

4.4 Run, Queue, Compare, Persisting, and Sharing Experiments

4.5 Clean up, Versioning Data and Models, Sharing Data and Model Files

4.6 Data Registries, Shared Development Server & Project Structure

4.7 Setup Google Drive Remote, Large Dataset Optimisation

4.8 External Dependencies, Managing External Data

4.9 Automate Pipelines with DVC, Pipelines & Experiment Automation, Build automated pipelines

4.10 Experiments Management, Experimenting with reproducible pipelines, Common issues with ML experiments

4.11 Tracking metrics and plots & Compare experiment results, Build, Test & Deploy

4.12 Introduction to CI/CD in Machine Learning & Build CI/CD pipeline

4.13 Install GitLab Runner and Trigger CI/CD pipeline

4.14 Build Machine Learning pipeline, Build CI/CD pipeline, Trigger CI/CD pipeline

4.15 Making Continuous Integration work with ML, DVC Integration with Project

4.16 Build a model Prototype, Build a prototype with Jupyter Notebook

4.17 Start to version your code with Git, Version your code with Git

4.18 Create pipelines, Automate pipelines and data versioning with DVC

4.19 Create CI pipeline to build, test, experiment, Experimenting with DVC and CML & Deploy your model

4.20 Assignment | Assignment Solution

Lesson 5 - DevOps - Docker Foundation


5.1 What is DevOps, Why DevOps

5.2 Dev-Test-Deploy ,DevOps Principles,DevOps Toolchain

5.3 Overview of DevOps Tools

5.4 Co-relation between Agile and DevOps,Categories of DevOps Tools

5.5 Containers Concepts , Container Vs Virtual Machine

5.6 Installing docker on CentOS, Debian and Windows

5.7 Managing Container with Docker Commands

5.8 Building your own docker images & Docker Compose

5.9 Docker registry - Docker Hub , Networking inside single docker container

5.10 Lab - Running Python Web App in docker container

5.11 Lab - Create a docker image from git repo

5.12 Lab - Deploying flask app using docker-compose

5.13 Lab - Complex deployment using docker-compose

5.14 Lab - Creating your own docker registry

5.15 Assignment | Assignment Solution

Lesson 6 - DevOps - Kubernetes Foundation


6.1 Introduction to Kubernetes

6.2 Architecture and Kubernetes cluster installation

6.3 Raft Consensus Algorithm and Networking in Kubernetes

6.4 Raft Consensus Algorithm and Networking in Kubernetes

6.5 Installing Minikube and Objects in Kubernetes - Pod, Deployment

6.6 Services - Service Discovery, Service Object, Headless Services, Service Type

6.7 Role based Access

6.8 Volumes - Persistent Volumes, Persistent Volume Claim, Storage Class

6.9 Config Map and Secrets

6.10 Ingress - Virtual Host, Types, Fanout, Virtual Host, Fanout Ingress configuration,

6.11 Virtual Host Ingress configuration

6.12 Lab - Installing Minikube on EC2

6.13 Lab - Enable and access Dashboard Addon

6.14 Lab - Deploy flask web app on Minikube

6.15 Lab - Deploy Nginx app on Minikube

6.16 Lab - Deploy application with host type volumes

6.17 Assignment | Assignment Solution

Lesson 7 - DevOps - Continuous Monitoring with Prometheus and Graffana


7.1 Introduction to Prometheus

7.2 Prometheus installation

7.3 Introduction to Grafana

7.4 Grafana Installation

7.5 Integration of Prometheus and Grafana

7.6 Adding customised dashboard in Grafana

7.7 Introduction to node exporter

7.8 Integrating node exporter for monitoring

7.9 Lab - Scrape metric from Grafana

7.10 Lab - View Node exporter metric in Grafana

7.11 Lab - View Docker metric in Grafana

7.12 Lab - Import AWS EC2 dashboard in Grafana

7.13 Assignment | Assignment Solution

Lesson 8 - DevOps - Continuous Integration using Jenkins


8.1 Introduction to Jenkins

8.2 Continuous Integration & Continuous Integration with Jenkins

8.3 Jenkins Architecture

8.4 Installing Jenkins on EC2

8.5 User management

8.6 Set up Jenkins Master & Slave

8.7 Setup CI-CD pipeline for sample project

8.8 Lab - Setup Role based access

8.9 Lab - Master/Slave Setup

8.10 Lab - Configure SCM in Jenkins

8.11 Assignment | Assignment Solution

Lesson 9 - MLFlow ( Manage your Machine Learning Lifecycle )


9.1 What is MLFLow & Installation

9.2 MLFlow Tracking, Where Runs Are Recorded, How Runs and Arti-facts are Recorded

9.3 Scenario 1: MLFlow on localhost

9.4 Scenario 2: MLFlow on localhost with SQLite

9.5 Scenario 3: MLFlow on localhost with Tracking Server

9.6 Scenario 4: MLFlow with remote Tracking Server, backend and arti-fact stores

9.7 Logging Data to Runs, Logging Functions, Launching Multiple Runs in One Program, Performance Tracking with Metrics

9.8 Visualising Metrics, Automatic Logging

9.9 Scikit-learn, TensorFlow and Keras, Gluon, XGBoost, Pytorch

9.10 MLFLow Tracker, Organising Runs in Experiments, Managing Experiments and Runs with the Tracking Service API, Tracking UI

9.11 Querying Runs Programmatically, MLFlow Tracking Servers, Storage,Networking

9.12 Logging to a Tracking Server, MLFlow Projects, Specifying Projects, Running Projects, Iterating Quickly, Building Multi Step Workflows

9.13 MLFLow Models, Storage Format, Model Signature And Input Example

9.14 Model API, Built-In Model Flavours, Model Customisation, Built-In Deployment Tools, Deployment to Custom Targets

9.15 Model Registry, Model Registry Workflows, UI Workflow, Registering a Model, Using the Model Registry, API Workflow

9.16 Adding an MLFlow Model to the Model Registry, Fetching an MLFlow Model from the Model Registry

9.17 Serving an MLFlow Model from Model Registry, Adding or Updating an MLFlow Model Descriptions, Renaming an MLFlow Model

9.18 Transitioning an MLFlow Model’s Stage, Listing and Searching MLFlow Models, Archiving an MLFlow Model, Deleting MLFlow Models

9.19 Assignment | Assignment Solution

Lesson 10 - Tensor Flow Extend (TFX)


10.1 Introduction to TFX

10.2 Data Ingestion using TFX & Data Validation using TFDV

10.3 Data Preprocessing using TFT

10.4 Model Training, Model Analysis & Model Evaluation using TFX

10.5 Model Deployment using TF Serving

10.6 Assignment Assignment Solution

Lesson 11 - KubeFlow ( Model Version Control & ML Pipeline )


11.1 What is Kubeflow?

11.2 Core Kubeflow components

11.3 How to set up Kubeflow on Kubernetes

11.4 How to develop basic ML models in Kubeflow Notebooks

11.5 How to train and deploy models in Kubeflow

11.6 How to use Kubeflow Pipelines

11.7 How to use KFServing to deploy models

11.8 How to manage logs with Kubeflow Metadata component

11.9 Katib Hyper Parameter Tuning

11.10 Kubeflow Pipelines to KFServing

11.11 Assignment | Assignment Solution

Lesson 12 - GitLab Foundation


12.1 GitLab Triggers

12.2 AWS S3 storage

12.3 GitLab CI/CD Pipelines

12.4 Pipelines definition

12.5 MongoDB cloud Atlas

12.6 Heroku | Logdata | Coral for Monitoring

12.7 Assignment | Assignment Solution

Lesson 13 - AWS MLOps - MLOps in Cloud


13.1 Amazon Sagemaker | Amazon S3 | AWS Codebuild | AWS Codecommit

13.2 Sagemaker Training Job | Sage Maker Endpoint | Amazon Api Gateway

13.3 Sagemake Model Monitoring | Cloudwatch Synthetics | Cloudwatch Alarm

13.4 Assignment | Assignment Solution

Lesson 14 - Azure MLOps - MLOps in Cloud


14.1 Create an Azure Machine Learning workspace

14.2 Setup a new project in Azure DevOps

14.3 Import existing YAML pipeline to Azure DevOps

14.4 Declare variables for CI/CD pipeline

14.5 Create training compute

14.6 Train ML model | Register model

14.7 Deploy model in AKS

14.8 Assignment | Assignment Solution

Lesson 15 - Projects


15.1 Deploy a Personalized Product Recommendation using MLOps

15.2 Deploy a Classification Model using MLOps on AWS

15.3 Deploy a Multiple Linear Regression Model using MLOps

15.4 Deploy a Gaussian Model in Time Series using MLOps on AWS

15.5 Deploy a Customer Churn Prediction using MLOps on Azure


This Outline is for Learninpurposesse only 🙏🏻🙏🏻🙏🏻


Reference :

  1. igmguru