Awesome MLOps Course Outline
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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 :