Introduction to MLflow Projects

Introduction to MLflow

Weston Bassler

Senior MLOps Engineer

MLflow Projects

  • Reproducible

  • Reusable

  • Portable

Accelerate productivity

1 unsplash.com
Introduction to MLflow

MLproject

project/
    MLproject
    train_model.py
    python_env.yaml
    requirements.txt

Github Git Repository

1 github.com
Introduction to MLflow

MLproject file

  • name: - Name of the Project

  • entry_points:

    • Command(s) to run
    • .py and .sh files
    • Workflows
  • python_env:

    • Python environment
    • python_env.yaml

YAML

1 wikipedia.org
Introduction to MLflow

MLproject example

name: salary_model

entry_points: main: command: "python train_model.py"
python_env: python_env.yaml
Introduction to MLflow

train_model.py

# Import libraries and modules
import mlflow
import mlflow.sklearn
import pandas as pd
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split

# Training Data df = pd.read_csv('Salary_predict.csv') X = df[["experience", "age", "interview_score"]] y = df[["Salary"]] X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.7,random_state=0)
Introduction to MLflow

train_model.py

# Set Auto logging for Scikit-learn flavor
mlflow.sklearn.autolog()

# Train the model lr = LinearRegression() lr.fit(X_train, y_train)
Introduction to MLflow

python_env.yaml

python: 3.10.8

build_dependencies: - pip - setuptools - wheel
dependencies: - -r requirements.txt
Introduction to MLflow

requirements.txt

mlflow
scikit-learn
Introduction to MLflow

Let's practice!

Introduction to MLflow

Preparing Video For Download...