Udostępnij za pośrednictwem


Trenowanie modeli uczenia maszynowego za pomocą interfejsu API języka Python usługi Azure Databricks

W tym artykule pokazano, jak wytrenować model za pomocą rozwiązania AutoML usługi Azure Databricks przy użyciu interfejsu API języka Python rozwiązania AutoML. Aby uzyskać więcej informacji, zobacz Azure Databricks AutoML Python API reference (Dokumentacja interfejsu API języka Python w usłudze Azure Databricks).

Interfejs API udostępnia funkcje umożliwiające rozpoczęcie klasyfikacji, regresji i prognozowania przebiegów automatycznego uczenia maszynowego. Każde wywołanie funkcji trenuje zestaw modeli i generuje notes wersji próbnej dla każdego modelu.

Zobacz Wymagania dotyczące eksperymentów rozwiązania AutoML.

Konfigurowanie eksperymentu przy użyciu interfejsu API rozwiązania AutoML

W poniższych krokach ogólnie opisano sposób konfigurowania eksperymentu zautomatyzowanego uczenia maszynowego przy użyciu interfejsu API:

  1. Utwórz notes i dołącz go do klastra z uruchomioną usługą Databricks Runtime ML.

  2. Zidentyfikuj tabelę, której chcesz użyć z istniejącego źródła danych, lub przekaż plik danych do systemu plików DBFS i utwórz tabelę.

  3. Aby uruchomić przebieg rozwiązania AutoML, użyj automl.regress() funkcji or automl.classify() i przekaż tabelę wraz z innymi parametrami trenowania. Aby wyświetlić wszystkie funkcje i parametry, zobacz Azure Databricks AutoML Python API reference (Dokumentacja interfejsu API języka Python usługi Azure Databricks).

    Na przykład:

    summary = automl.regress(dataset=train_pdf, target_col="col_to_predict")
    
  4. Po rozpoczęciu uruchamiania rozwiązania AutoML w konsoli pojawi się adres URL eksperymentu MLflow. Użyj tego adresu URL, aby monitorować postęp przebiegu. Odśwież eksperyment MLflow, aby zobaczyć wersje próbne po zakończeniu.

  5. Po zakończeniu działania rozwiązania AutoML:

  • Użyj linków w podsumowaniu danych wyjściowych, aby przejść do eksperymentu MLflow lub notesu, który wygenerował najlepsze wyniki.
  • Użyj linku do notesu eksploracji danych, aby uzyskać wgląd w dane przekazane do rozwiązania AutoML. Możesz również dołączyć ten notes do tego samego klastra i uruchomić go ponownie, aby odtworzyć wyniki lub przeprowadzić dodatkową analizę danych.
  • Użyj obiektu podsumowania zwróconego z wywołania rozwiązania AutoML, aby zapoznać się z bardziej szczegółowymi informacjami na temat prób lub załadować model wytrenowany przez daną wersję próbną. Dowiedz się więcej o obiekcie AutoMLSummary.
  • Sklonuj dowolny wygenerowany notes z wersji próbnej i uruchom go ponownie, dołączając go do tego samego klastra, aby odtworzyć wyniki. Możesz również wprowadzić niezbędne zmiany, uruchomić je ponownie, aby wytrenować dodatkowe modele i zalogować je do tego samego eksperymentu.

Importowanie notesu

Aby zaimportować notes zapisany jako artefakt MLflow, użyj interfejsu databricks.automl.import_notebook API języka Python. Aby uzyskać więcej informacji, zobacz Importowanie notesu

Rejestrowanie i wdrażanie modelu

Możesz zarejestrować i wdrożyć model wytrenowany przez rozwiązanie AutoML tak samo jak każdy zarejestrowany model w rejestrze modeli MLflow; Zobacz Rejestrowanie, ładowanie, rejestrowanie i wdrażanie modeli MLflow.

Brak modułu o nazwie pandas.core.indexes.numeric

Podczas obsługi modelu utworzonego przy użyciu rozwiązania AutoML z obsługą modelu może wystąpić błąd: No module named 'pandas.core.indexes.numeric.

Jest to spowodowane niezgodną pandas wersją między rozwiązaniem AutoML a modelem obsługującym środowisko punktu końcowego. Ten błąd można rozwiązać, uruchamiając skrypt add-pandas-dependency.py. Skrypt edytuje element requirements.txt i conda.yaml dla zarejestrowanego modelu, aby zawierał odpowiednią pandas wersję zależności: pandas==1.5.3.

  1. Zmodyfikuj skrypt, aby uwzględnić run_id przebieg MLflow, w którym zarejestrowano model.
  2. Ponowne zarejestrowanie modelu w rejestrze modeli MLflow.
  3. Spróbuj użyć nowej wersji modelu MLflow.

Przykłady notesów

Przejrzyj te notesy, aby rozpocząć pracę z rozwiązaniem AutoML.

W poniższym notesie pokazano, jak przeprowadzić klasyfikację za pomocą rozwiązania AutoML.

Przykładowy notes klasyfikacji automatycznego uczenia maszynowego

Pobierz notes

W poniższym notesie pokazano, jak przeprowadzić regresję za pomocą rozwiązania AutoML.

Przykładowy notes regresji automatycznego uczenia maszynowego

Pobierz notes

W poniższym notesie przedstawiono sposób prognozowania za pomocą rozwiązania AutoML.

Przykładowy notes prognozowania automatycznego uczenia maszynowego

Pobierz notes

Następne kroki

Dokumentacja interfejsu API języka Python w usłudze Azure Databricks.