MLFlow
Wird benutzt, um das Training mit wechselnden Parametern zu loggen und vergleichbar zu halten. Die vollständige Doku findet sich hier.
Es erfordert die beiden Environment Variablen MLFLOW_TRACKING_USERNAME=mlflow
MLFLOW_TRACKING_PASSWORD=...
, um sich mit dem Server zu verbinden. AuĂerdem muss die URI gesetzt werden:
Damit lassen sich dann die Parameter und Metriken eines Runs, die vorher definiert wurden, loggen:
from mlflow.models import infer_signature
# Create a new MLflow Experiment
mlflow.set_experiment("Erstes Experiment auf jafar.live")
# Start an MLflow run
with mlflow.start_run():
# Log the hyperparameters
mlflow.log_params(params)
# Log the loss metric
mlflow.log_metric("accuracy", accuracy)
# Set a tag that we can use to remind ourselves what this run was for
mlflow.set_tag("Training Info", "Basic LR model for iris data")
# Infer the model signature
signature = infer_signature(X_train["text"], full_dt_pipe.predict(X_train["text"]))
# Log the model
model_info = mlflow.sklearn.log_model(
sk_model=full_dt_pipe,
artifact_path="ticket_model",
signature=signature,
input_example=np.array(X_train["text"]),
registered_model_name="tracking-quickstart",
)