Mendaftarkan Model

Pengantar MLflow

Weston Bassler

Senior MLOps Engineer

Mendaftarkan Model MLflow

  • Versi Model

    • mengikuti pengembangan perangkat lunak tradisional
    • lacak perubahan
  • Kolaborasi

    • antar peran berbeda
    • peran sama untuk peningkatan
Pengantar MLflow

Manajemen siklus hidup model

siklus hidup model

1 datacamp.com
Pengantar MLflow

Cara mendaftarkan model

# MLflow Models yang sudah ada
mlflow.register_model(model_uri, name)

model_uri

  • sistem berkas lokal
  • server tracking
# Selama run pelatihan
mlflow.FLAVOR.log_model(name, 
    artifact_uri,
    registered_model_name="MODEL_NAME")

registered_model_name="MODEL_NAME"

Pengantar MLflow

Contoh pendaftaran model

# Impor mlflow
import mlflow


# Daftarkan model dari sistem berkas lokal mlflow.register_model("./model", "Unicorn")
# Daftarkan model dari server Tracking mlflow.register_model("runs:/run-id/model", "Unicorn")
Pengantar MLflow
# Daftarkan Model MLFlow lokal
mlflow.register_model(model_uri="./model", name="Unicorn")
Model terdaftar 'Unicorn' sudah ada. Membuat versi baru untuk model ini...

2023/03/24 14:34:26 INFO mlflow.tracking._model_registry.client: Menunggu hingga 300 detik agar pembuatan versi model selesai. Nama model: Unicorn, versi 1 Membuat versi '1' dari model 'Unicorn'. <ModelVersion: creation_timestamp=1679682866413, current_stage='None', description=None, last_updated_timestamp=1679682866413, name='Unicorn', run_id=None, run_link=None, source='./model', status='READY', status_message=None, tags={}, user_id=None, version=1>
Pengantar MLflow
# Daftarkan model dari MLflow Tracking
mlflow.register_model(model_uri="runs:/run-id/model", name="Unicorn")
Model terdaftar 'Unicorn' sudah ada. Membuat versi baru untuk model ini...
2023/03/24 14:36:56 INFO mlflow.tracking._model_registry.client: 
Menunggu hingga 300 detik agar pembuatan versi model selesai.                     
Nama model: Unicorn, versi 2
Membuat versi '2' dari model 'Unicorn'.
<ModelVersion: creation_timestamp=1679683016297, current_stage='None', 
description=None, last_updated_timestamp=1679683016297, name='Unicorn', 
run_id='2e974508b68b45ceb114657c6e97fef5', run_link=None, 
source='./mlruns/1/2e974508b68b45ceb114657c6e97fef5/artifacts/model', 
status='READY', status_message=None, tags={}, user_id=None, version=2>
Pengantar MLflow

UI Models

UI model

Pengantar MLflow

Versi Unicorn

UI versi

Pengantar MLflow

Mencatat model (logging)

# Impor modul
import mlflow
import mlflow.sklearn
from sklearn.linear_model import LogisticRegression


# Model lr = LogisticRegression() lr.fit(X, y)
# Log model mlflow.sklearn.log_model(lr, "model", registered_model_name="Unicorn")
Pengantar MLflow
# Log model
mlflow.sklearn.log_model(lr, "model", registered_model_name="Unicorn")
Model terdaftar 'Unicorn' sudah ada. Membuat versi baru untuk model ini...
2023/03/24 17:31:10 INFO mlflow.tracking._model_registry.client: 
Menunggu hingga 300 detik agar pembuatan versi model selesai.                     
Nama model: Unicorn, versi 3
Membuat versi '3' dari model 'Unicorn'.
<mlflow.models.model.ModelInfo object at 0x14734d330>
Pengantar MLflow

Ayo berlatih!

Pengantar MLflow

Preparing Video For Download...