Anzeigen von Metriken und Auswerten von Modellen

Abgeschlossen

Nachdem Sie Modelle mit MLflow in Azure Machine Learning trainiert und nachverfolgt haben, können Sie die Metriken untersuchen und Ihre Modelle auswerten.

  • Überprüfen Sie Metriken im Azure Machine Learning Studio.
  • Die Ausführungen und Metriken rufen Sie mit MLflow ab.

Hinweis

Azure Machine Learning verwendet das Konzept von Aufträgen, wenn Sie ein Skript ausführen. Mehrere Auftragsausführungen in Azure Machine Learning können innerhalb eines Experiments gruppiert werden. MLflow verwendet eine ähnliche Syntax, bei der jedes Skript eine Ausführung ist, die Teil eines Experiments ist.

Anzeigen der Metriken im Azure Machine Learning Studio

Wenn Ihr Auftrag abgeschlossen ist, können Sie die protokollierten Parameter, Metriken und Artefakte im Azure Machine Learning Studio überprüfen.

Wenn Sie Auftragsläufe im Azure Machine Learning Studio überprüfen, untersuchen Sie die Metriken eines Auftragslaufs, der Teil eines Experiments ist.

Um die Metriken über eine intuitive Benutzeroberfläche anzuzeigen, haben Sie folgende Möglichkeiten:

  1. Öffnen Sie das Studio, indem Sie zu https://ml.azure.com.
  2. Suchen Sie nach Ihrer Experimentausführung, und öffnen Sie sie, um die Details anzuzeigen.
  3. Auf der Registerkarte "Details " werden alle protokollierten Parameter unter "Params" angezeigt.
  4. Wählen Sie die Registerkarte "Metriken " und dann die Metrik aus, die Sie erkunden möchten.
  5. Alle Als Artefakte protokollierten Plots finden Sie unter "Bilder".
  6. Die Modellressourcen, die zum Registrieren und Bereitstellen des Modells verwendet werden können, werden im Ordner "Modelle " unter "Outputs + logs" gespeichert.

Tipp

Lesen Sie die Dokumentation, um mehr über die Nachverfolgung von Modellen mit MLflow zu erfahren.

Abrufen von Metriken mit MLflow in einem Notizbuch

Wenn Sie ein Schulungsskript als Job in Azure Machine Learning ausführen und Ihre Modellschulung mit MLflow nachverfolgen, können Sie die Ausführung in einem Notizbuch mithilfe von MLflow abfragen. Die Verwendung von MLflow in einem Notizbuch bietet Ihnen mehr Kontrolle darüber, welche Ausführung Sie abrufen möchten, um sie zu vergleichen.

Wenn Sie MLflow zum Abfragen Ihrer Läufe verwenden, beziehen Sie sich auf Experimente und Läufe.

Suche alle Experimente

Sie können alle aktiven Experimente im Arbeitsbereich mithilfe von MLFlow abrufen:

experiments = mlflow.search_experiments(max_results=2)
for exp in experiments:
    print(exp.name)

Wenn Sie auch archivierte Experimente abrufen möchten, schließen Sie die Option ViewType.ALLein:

from mlflow.entities import ViewType

experiments = mlflow.search_experiments(view_type=ViewType.ALL)
for exp in experiments:
    print(exp.name)

Um ein bestimmtes Experiment abzurufen, können Sie Folgendes ausführen:

exp = mlflow.get_experiment_by_name(experiment_name)
print(exp)

Tipp

Erkunden Sie die Dokumentation zum Durchsuchen von Experimenten mit MLflow

Abrufen von Ausführungen

MLflow ermöglicht es Ihnen, innerhalb eines Experiments nach Läufen zu suchen. Sie benötigen entweder die Experiment-ID oder den Namen des Experiments.

Wenn Sie beispielsweise die Metriken einer bestimmten Ausführung abrufen möchten:

mlflow.search_runs(exp.experiment_id)

Sie können bei Bedarf über mehrere Experimente hinweg suchen, was nützlich ist, wenn Sie Läufe desselben Modells über verschiedene Experimente hinweg vergleichen möchten. Beispielsweise können verschiedene Personen oder unterschiedliche Projektiterationen dasselbe Modell in separaten Experimenten protokollieren.

Sie können verwenden search_all_experiments=True , wenn Sie alle Experimente im Arbeitsbereich durchsuchen möchten.

Standardmäßig werden Experimente absteigend nach start_time sortiert, was die Zeit angibt, zu der das Experiment in die Warteschlange von Azure Machine Learning eingereiht wurde. Sie können diese Standardeinstellung jedoch mithilfe des Parameters order_by ändern.

Wenn Sie z. B. nach Startzeit sortieren und nur die letzten beiden Ergebnisse anzeigen möchten:

mlflow.search_runs(exp.experiment_id, order_by=["start_time DESC"], max_results=2)

Sie können auch nach einem Lauf mit einer bestimmten Kombination von Hyperparametern suchen.

mlflow.search_runs(
    exp.experiment_id, filter_string="params.num_boost_round='100'", max_results=2
)

Tipp

In der Dokumentation entdecken Sie, wie man Suche mit MLflow ausführen kann.