Snabbstart för Python
MLflow är en plattform med öppen källkod för hantering av maskininlärningslivscykeln från början till slut. MLflow tillhandahåller enkla API:er för loggningsmått (till exempel modellförlust), parametrar (till exempel inlärningshastighet) och anpassade modeller, vilket gör det enkelt att analysera träningsresultat eller distribuera modeller senare.
I detta avsnitt:
- Installera MLflow
- Loggträning körs automatiskt till MLflow
- Visa resultat
- Spåra ytterligare mått, parametrar och modeller
- Exempelnotebook-filer
- Läs mer
Installera MLflow
Om du använder Databricks Runtime för Machine Learning är MLflow redan installerat. Annars installerar du MLflow-paketet från PyPI.
Loggträning körs automatiskt till MLflow
Med Databricks Runtime 10.4 LTS ML och senare aktiveras Automatisk databricks-loggning som standard och samlar automatiskt in modellparametrar, mått, filer och ursprungsinformation när du tränar modeller från en mängd populära maskininlärningsbibliotek.
Med Databricks Runtime 9.1 LTS ML tillhandahåller mlflow.<framework>.autolog()
MLflow API:er för att automatiskt logga träningskod som skrivits i många ML-ramverk. Du kan anropa det här API:et innan du kör träningskod för att logga modellspecifika mått, parametrar och modellartefakter.
TensorFlow
Kommentar
Keras-modeller stöds också i mlflow.tensorflow.autolog()
.
# Also autoinstruments tf.keras
import mlflow.tensorflow
mlflow.tensorflow.autolog()
XGBoost
import mlflow.xgboost
mlflow.xgboost.autolog()
LightGBM
import mlflow.lightgbm
mlflow.lightgbm.autolog()
scikit-learn
import mlflow.sklearn
mlflow.sklearn.autolog()
PySpark
Om du utför justering med pyspark.ml
loggas mått och modeller automatiskt till MLflow.
Se Apache Spark MLlib och automatiserad MLflow-spårning.
Visa resultat
När du har kört maskininlärningskoden kan du visa resultat med hjälp av sidofältet Experimentkörningar. Se Visa notebook-experiment för instruktioner om hur du visar experimentet, körningen och notebook-revisionen som används i snabbstarten.
Spåra ytterligare mått, parametrar och modeller
Du kan logga ytterligare information genom att direkt anropa API:erna för MLflow-spårningsloggning.
Numeriska mått
import mlflow
mlflow.log_metric("accuracy", 0.9)
Träningsparametrar
import mlflow
mlflow.log_param("learning_rate", 0.001)
Modeller
scikit-learn
import mlflow.sklearn
mlflow.sklearn.log_model(model, "myModel")
PySpark
import mlflow.spark
mlflow.spark.log_model(model, "myModel")
XGBoost
import mlflow.xgboost
mlflow.xgboost.log_model(model, "myModel")
TensorFlow
import mlflow.tensorflow
mlflow.tensorflow.log_model(model, "myModel")
Keras
import mlflow.keras
mlflow.keras.log_model(model, "myModel")
PyTorch
import mlflow.pytorch
mlflow.pytorch.log_model(model, "myModel")
SpaCy
import mlflow.spacy
mlflow.spacy.log_model(model, "myModel")
Andra artefakter (filer)
import mlflow
mlflow.log_artifact("/tmp/my-file", "myArtifactPath")
Exempelnotebook-filer
Kommentar
Med Databricks Runtime 10.4 LTS ML och senare aktiveras Automatisk databricks-loggning som standard och koden i dessa exempelanteckningsböcker krävs inte. Exempelanteckningsböckerna i det här avsnittet är utformade för användning med Databricks Runtime 9.1 LTS ML.
Det rekommenderade sättet att komma igång med MLflow-spårning med Python är att använda MLflow-API:et autolog()
. Med MLflows funktioner för automatisk loggning loggar en enda kodrad automatiskt den resulterande modellen, parametrarna som används för att skapa modellen och en modellpoäng. Följande notebook-fil visar hur du konfigurerar en körning med automatisk loggning.
Snabbstart för snabbstart för MLflow-automatisk loggning av Python-notebook-fil
Om du behöver mer kontroll över de mått som loggas för varje träningskörning eller vill logga ytterligare artefakter, till exempel tabeller eller diagram, kan du använda de MLflow-loggnings-API-funktioner som visas i följande notebook-fil.