Freigeben über


Trainieren von ML-Modellen mit der AutoML-Python-API für Azure Databricks

In diesem Artikel wird veranschaulicht, wie Sie ein Modell mit automatisiertem maschinellen Lernen in Azure Databricks mithilfe der Python-API für automatisiertes maschinelles Lernen trainieren. Weitere Informationen finden Sie unter Referenz zur Python-API für automatisiertes maschinelles Lernen in Azure Databricks.

Die API stellt Funktionen zum Starten von AutoML-Ausführungen zum Zweck der Klassifizierung, Regression und Prognose bereit. Jeder Funktionsaufruf trainiert eine Menge von Modellen und generiert ein Testnotebook für jedes Modell.

Weitere Informationen finden Sie unter Anforderungen für AutoML-Experimente.

Erstellen eines Experiments mit der API für automatisiertes maschinelles Lernen

In den folgenden Schritten wird allgemein beschrieben, wie ein Experiment mit automatisiertem maschinellen Lernen mithilfe der API eingerichtet wird:

  1. Erstellen Sie ein Notebook und fügen Sie es einem Cluster an, auf dem Databricks Runtime ML ausgeführt wird.

  2. Identifizieren Sie, welche Tabelle Sie aus Ihrer vorhandenen Datenquelle verwenden möchten, oder laden Sie eine Datendatei in DBFS hoch, und erstellen Sie eine Tabelle.

  3. Um eine Ausführung von automatisiertem maschinellen Lernen zu starten, verwenden Sie die automl.regress()- oder automl.classify()-Funktion, und übergeben Sie die Tabelle zusammen mit anderen Trainingsparametern. Informationen zum Anzeigen aller Funktionen und Parameter finden Sie unter Referenz zur Python-API für automatisiertes maschinelles Lernen in Azure Databricks.

    Zum Beispiel:

    summary = automl.regress(dataset=train_pdf, target_col="col_to_predict")
    
  4. Wenn die AutoML-Ausführung beginnt, wird in der Konsole eine MLflow-Experiment-URL angezeigt. Verwenden Sie diese URL, um den Fortschritt der Ausführung zu überwachen. Aktualisieren Sie das MLflow-Experiment, um die Testversionen zu sehen, sobald sie abgeschlossen sind.

  5. Nach Abschluss der AutoML-Ausführung:

  • Verwenden Sie die Links in der Ausgabezusammenfassung, um zum MLflow-Experiment oder zum Notebook zu navigieren, das die besten Ergebnisse generiert hat.
  • Verwenden Sie den Link zum Notebook für das Durchsuchen von Daten, um Einblicke in die Daten zu erhalten, die an das automatisierte maschinelle Lernen übergeben wurden. Sie können dieses Notebook auch an denselben Cluster anfügen und erneut ausführen, um die Ergebnisse zu reproduzieren oder zusätzliche Datenanalysen durchzuführen.
  • Verwenden Sie das Zusammenfassungsobjekt, das vom AutoML-Aufruf zurückgegeben wurde, um weitere Details zu den Testversionen zu erkunden oder ein Modell zu laden, das von einer bestimmten Testversion trainiert wurde. Erfahren Sie mehr über das Objekt AutoMLSummary.
  • Klonen Sie alle generierten Notebooks aus den Testversionen, und führen Sie sie erneut aus, indem Sie sie an denselben Cluster anfügen, um die Ergebnisse zu reproduzieren. Sie können auch die erforderlichen Änderungen vornehmen und sie erneut ausführen, um zusätzliche Modelle zu trainieren und sie in dasselbe Experiment zu protokollieren.

Importieren eines Notebooks

Um ein Notebook zu importieren, das als MLflow-Artefakt gespeichert wurde, verwenden Sie die Python-API databricks.automl.import_notebook. Weitere Informationen finden Sie unter Importieren eines Notebooks.

Registrieren und Bereitstellen eines Modells

Sie können Ihr mit automatisiertem maschinellen Lernen trainiertes Modell wie jedes registrierte Modell in der MLflow-Modellregistry registrieren und bereitstellen. Weitere Informationen finden Sie unter Protokollieren, Laden, Registrieren und Bereitstellen von MLflow-Modellen.

Kein Modul namens pandas.core.indexes.numeric

Wenn Sie ein Modell bereitstellen, das mithilfe von automatisiertem ML mit Model Serving erstellt wurde, erhalten Sie möglicherweise den Fehler: No module named 'pandas.core.indexes.numeric.

Dies ist auf eine inkompatible pandas-Version zwischen automatisiertes ML und der Endpunktumgebung der Modellbereitstellung zurückzuführen. Sie können diesen Fehler beheben, indem Sie das Skript „add-pandas-dependency.py“ ausführen. Das Skript bearbeitet die requirements.txt und conda.yaml für Ihr protokolliertes Modell so, dass die entsprechende pandas-Abhängigkeitsversion enthalten ist: pandas==1.5.3.

  1. Ändern Sie das Skript so, dass es die run_id der MLflow-Ausführung einschließt, in der Ihr Modell protokolliert wurde.
  2. Erneutes Registrieren des Modells in der MLflow-Modellregistrierung.
  3. Versuchen Sie, die neue Version des MLflow-Modells bereitzustellen.

Notebook-Beispiele

Sehen Sie sich diese Notebooks an, um mit AutoML zu beginnen.

Im folgenden Notebook wird gezeigt, wie Sie die Klassifizierung mit AutoML durchführen.

Beispielnotebook für die AutoML-Klassifizierung

Notebook abrufen

Im folgenden Notebook wird gezeigt, wie Sie eine Regression mit AutoML durchführen.

Beispielnotebook für die AutoML-Regression

Notebook abrufen

Im folgenden Notebook wird gezeigt, wie Sie Vorhersagen mit AutoML durchführen.

Beispielnotebook für die AutoML-Vorhersage

Notebook abrufen

Nächste Schritte

Referenz zur Python-API für automatisiertes maschinelles Lernen in Azure Databricks