/ examples / evaluation / evaluate_on_multiclass_classifier.py
evaluate_on_multiclass_classifier.py
 1  from sklearn.datasets import make_classification
 2  from sklearn.linear_model import LogisticRegression
 3  from sklearn.model_selection import train_test_split
 4  
 5  import mlflow
 6  
 7  X, y = make_classification(n_samples=10000, n_classes=10, n_informative=5, random_state=1)
 8  
 9  X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)
10  
11  with mlflow.start_run() as run:
12      model = LogisticRegression(solver="liblinear").fit(X_train, y_train)
13      model_info = mlflow.sklearn.log_model(model, name="model")
14      result = mlflow.evaluate(
15          model_info.model_uri,
16          X_test,
17          targets=y_test,
18          model_type="classifier",
19          evaluators="default",
20          evaluator_config={"log_model_explainability": True, "explainability_nsamples": 1000},
21      )
22  
23  print(f"run_id={run.info.run_id}")
24  print(f"metrics:\n{result.metrics}")
25  print(f"artifacts:\n{result.artifacts}")