Înregistrarea experimentelor în MLFlow

Machine Learning End-to-End

Joshua Stapleton

Machine Learning Engineer

MLFlow

Fără MLflow...

  • Rulări neînregistrate și dezorganizate
  • Rulări incomparabile
  • Rulări ireproductibile, pierdute

Cu MLflow...

  • Rulări înregistrate și organizate
  • Comparație între rulări standardizate
  • Rulări reproductibile
  • Partajare și implementare modele
Machine Learning End-to-End

Crearea experimentelor

mlflow.set_experiment()

  • Setează numele experimentului
  • Oferă un spațiu de lucru pentru rulări

 

Utilizare:

import mlflow

# Set an experiment name, which is a workspace for your runs
mlflow.set_experiment("Heart Disease Classification")
Machine Learning End-to-End

Rularea experimentelor

# Start a new run in this experiment
with mlflow.start_run():
    # Train a model, get the prediction accuracy
    logistic_model = LogisticRegression()

# Log parameters, eg: mlflow.log_param("n_estimators", logistic_model.n_estimators)
# Log metrics (accuracy in this case) mlflow.log_metric("accuracy", logistic_model.accuracy)
# Print out metrics print("Model accuracy: %.3f" % accuracy)
Model accuracy: 0.96
Machine Learning End-to-End

Recuperarea experimentelor

 

mlflow.get_run(run_id)

  • Metadate pentru o rulare specifică

 

mlflow.search_runs()

  • Returnează un DataFrame cu metrici pentru mai multe rulări

Utilizare:

# Fetch the run data and print params
run_data = mlflow.get_run(run_id)
print(run_data.data.params)
print(run_data.data.metrics)

# Search all runs in experiment
exp_id = run_data.info.experiment_id
runs_df = mlflow.search_runs(exp_id)
{'epochs': '20', 'accuracy': 0.95}
Machine Learning End-to-End

Interfața MLFlow

 

Tabloul de bord al experimentelor MLFlow

 

Pagina de experiment MLFlow

Machine Learning End-to-End

Interfața MLFlow (cont.)

 

Grafic exemplu cu îmbunătățirea metricii

 

Comparație de metrici între rulări

Machine Learning End-to-End

Resurse MLflow

  • Introducere în MLflow Introducere în MLflow
  • Site-ul oficial MLflow Site-ul oficial MLflow
Machine Learning End-to-End

Să exersăm!

Machine Learning End-to-End

Preparing Video For Download...