Co to jest rozwiązanie AutoML?
Rozwiązanie AutoML upraszcza proces stosowania uczenia maszynowego do zestawów danych, automatycznie wyszukując najlepszy algorytm i konfigurację hiperparametrów.
Jak działa rozwiązanie AutoML?
Podaj zestaw danych i określ typ problemu z uczeniem maszynowym, a następnie rozwiązanie AutoML wykonuje następujące czynności:
- Czyści i przygotowuje dane.
- Organizuje trenowanie modelu rozproszonego i dostrajanie hiperparametrów w wielu algorytmach.
- Znajduje najlepszy model przy użyciu algorytmów oceny typu open source z biblioteki scikit-learn, xgboost, LightGBM, Proroka i ARIMA.
- Przedstawia wyniki. Rozwiązanie AutoML generuje również notesy kodu źródłowego dla każdej wersji próbnej, co umożliwia przeglądanie, odtwarzanie i modyfikowanie kodu zgodnie z potrzebami.
Wprowadzenie do eksperymentów rozwiązania AutoML za pomocą interfejsu użytkownika niskiego kodu na potrzeby regresji; klasyfikacji; lub prognozowanielub interfejsu API języka Python .
Wymagania
Usługa Azure Databricks zaleca usługę Databricks Runtime 10.4 LTS ML lub nowszą w celu zapewnienia ogólnej dostępności rozwiązania AutoML.
Rozwiązanie AutoML zależy od
databricks-automl-runtime
pakietu, który zawiera składniki przydatne poza rozwiązaniem AutoML, a także pomaga uprościć notesy generowane przez trenowanie rozwiązania AutoML.databricks-automl-runtime
jest dostępny w interfejsie PyPI.W klastrze nie powinny być zainstalowane żadne dodatkowe biblioteki inne niż te wstępnie zainstalowane w środowisku Databricks Runtime for Machine Learning.
- Wszelkie modyfikacje (usuwanie, uaktualnienia lub obniżanie wersji) do istniejących wersji bibliotek powoduje błędy uruchamiania z powodu niezgodności.
Aby uzyskać dostęp do plików w obszarze roboczym, musisz mieć otwarte porty sieciowe 1017 i 1021 dla eksperymentów rozwiązania AutoML. Aby otworzyć te porty lub potwierdzić, że są otwarte, przejrzyj konfigurację zapory sieci VPN w chmurze i reguły grupy zabezpieczeń lub skontaktuj się z lokalnym administratorem chmury. Aby uzyskać dodatkowe informacje na temat konfiguracji i wdrażania obszaru roboczego, zobacz Tworzenie obszaru roboczego.
Użyj zasobu obliczeniowego z obsługiwanym trybem dostępu obliczeniowego. Nie wszystkie tryby dostępu obliczeniowego mają dostęp do Katalogu Unity.
Tryb dostępu obliczeniowego Obsługa automatycznego uczenia maszynowego Obsługa katalogu Unity tryb dedykowanego dostępu Nieobsługiwane Obsługiwane pojedynczego użytkownika Obsługiwane (musi być wyznaczonym pojedynczym użytkownikiem klastra) Obsługiwane Tryb dostępu współdzielonego Nieobsługiwane Nieobsługiwane Brak udostępnionej izolacji Obsługiwane Nieobsługiwane
Algorytmy automatycznego uczenia maszynowego
Rozwiązanie AutoML trenuje i ocenia modele na podstawie algorytmów w poniższej tabeli.
Uwaga
W przypadku modeli klasyfikacji i regresji drzewo decyzyjne, lasy losowe, regresja logistyczna i regresja liniowa z algorytmami spadku gradientu stochastycznego są oparte na technologii scikit-learn.
Modele klasyfikacji | Modele regresji | Modele prognozowania | Modele prognozowania (bezserwerowe) |
---|---|---|---|
Drzewa decyzyjne | Drzewa decyzyjne | Prorok | Prorok |
Lasy losowe | Lasy losowe | Auto-ARIMA (dostępne w środowisku Databricks Runtime 10.3 ML i nowszym). | Auto-ARIMA |
Regresja logistyczna | Regresja liniowa ze spadkiem gradientu stochastycznego | DeepAR | |
XGBoost | XGBoost | ||
LightGBM | LightGBM |
Generowanie notesu w wersji próbnej
Klasyczne oprogramowanie obliczeniowe AutoML generuje notesy kodu źródłowego za wersjami próbnymi, dzięki czemu można przeglądać, odtwarzać i modyfikować kod zgodnie z potrzebami.
W przypadku eksperymentów prognozowania notesy generowane automatycznie są automatycznie importowane do obszaru roboczego dla wszystkich prób eksperymentu.
W przypadku eksperymentów dotyczących klasyfikacji i regresji notesy generowane automatycznie na potrzeby eksploracji danych i najlepszej wersji próbnej w eksperymencie są automatycznie importowane do obszaru roboczego. Wygenerowane notesy dla innych prób eksperymentów są zapisywane jako artefakty MLflow w systemie dbFS zamiast automatycznie importowane do obszaru roboczego. W przypadku wszystkich wersji próbnych oprócz najlepszej wersji próbnej nie ustawiono notebook_path
i notebook_url
w interfejsie API języka Python TrialInfo
. Jeśli chcesz użyć tych notesów, możesz ręcznie zaimportować je do obszaru roboczego przy użyciu interfejsu użytkownika eksperymentu rozwiązania AutoML lub interfejsu databricks.automl.import_notebook
API języka Python.
Jeśli używasz tylko notesu do eksploracji danych lub notesu najlepszej próby wygenerowanego przez AutoML, kolumna Source w interfejsie użytkownika eksperymentu AutoML zawiera link do wygenerowanego notesu najlepszej próby.
Jeśli używasz innych wygenerowanych notesów w interfejsie użytkownika eksperymentu rozwiązania AutoML, nie są one automatycznie importowane do obszaru roboczego. Notesy można znaleźć, klikając poszczególne przebiegi platformy MLflow. Notes IPython jest zapisywany w sekcji Artifacts (Artefakty ) na stronie uruchamiania. Możesz pobrać ten notes i zaimportować go do obszaru roboczego, jeśli pobieranie artefaktów jest włączone przez administratorów obszaru roboczego.
Wartości Shapleya (SHAP) dla wyjaśnialności modelu
Uwaga
W przypadku usługi MLR 11.1 i nowszych wykresy SHAP nie są generowane, jeśli zestaw danych zawiera kolumnę datetime
.
Notesy utworzone przez przebiegi regresji i klasyfikacji rozwiązania AutoML zawierają kod do obliczania wartości shapley . Wartości shapley opierają się na teorii gier i szacują znaczenie każdej funkcji przewidywania modelu.
Notesy AutoML obliczają wartości Shapley za pomocą pakietu SHAP . Ponieważ te obliczenia intensywnie korzystają z pamięci, obliczenia nie są domyślnie wykonywane.
Aby obliczyć i wyświetlić wartości Shapley:
- Przejdź do sekcji Ważność funkcji w notesie wersji próbnej wygenerowanej automatycznie przez uczenie maszynowe.
- Ustaw
shap_enabled = True
. - Uruchom ponownie notes.