Dostrajanie hiperparametrów
Biblioteki języka Python, takie jak Optuna, Ray Tune i Hyperopt, upraszczają i automatyzują dostrajanie hiperparametrów, aby efektywnie znaleźć optymalny zestaw hiperparametrów dla modeli uczenia maszynowego. Te biblioteki są skalowane w wielu obliczeniach, aby szybko znaleźć hiperparametry z minimalnymi wymaganiami dotyczącymi ręcznej aranżacji i konfiguracji.
Optuna
Optuna to struktura o lekkiej wadze, która ułatwia definiowanie dynamicznej przestrzeni wyszukiwania na potrzeby dostrajania hiperparametrów i wyboru modelu. Optuna zawiera niektóre z najnowszych algorytmów optymalizacji i uczenia maszynowego.
Optuna można łatwo zrównoleglizować z biblioteką Joblib w celu skalowania obciążeń i zintegrować ją z platformą Mlflow w celu śledzenia hiperparametrów i metryk w różnych wersjach próbnych.
Aby rozpocząć pracę z optuna, zobacz Hiperparametr dostrajanie za pomocą optuna.
Ray Tune
Środowisko Databricks Runtime ML obejmuje ray, platformę typu open source używaną do przetwarzania równoległego obliczeń. Ray Tune to biblioteka dostrajania hiperparametrów, która jest dostarczana z rayem i używa Raya jako zaplecza do przetwarzania rozproszonego.
Aby uzyskać szczegółowe informacje na temat uruchamiania raya w usłudze Databricks, zobacz Co to jest Ray w usłudze Azure Databricks?. Aby zapoznać się z przykładami ray tune, zobacz dokumentację ray tune.
Funkcja Hyperopt
Uwaga
Wersja biblioteki Hyperopt typu open source nie jest już utrzymywana.
Funkcja Hyperopt zostanie usunięta w następnej głównej wersji DBR ML. Usługa Azure Databricks zaleca korzystanie z rozwiązania Optuna w celu uzyskania podobnego środowiska i dostępu do bardziej aktualnych algorytmów dostrajania hiperparametrów.
Hyperopt to biblioteka języka Python używana do rozproszonego dostrajania hiperparametrów i wyboru modelu. Biblioteka Hyperopt współpracuje zarówno z rozproszonymi algorytmami uczenia maszynowego, takimi jak Apache Spark MLlib i Horovod, jak i również z modelami uczenia maszynowego z pojedynczą maszyną, takimi jak scikit-learn i TensorFlow.
Aby rozpocząć korzystanie z funkcji Hyperopt, zobacz Use distributed training algorithms with Hyperopt (Korzystanie z algorytmów trenowania rozproszonego za pomocą funkcji Hyperopt).
Zautomatyzowane śledzenie MLflow biblioteki MLlib
Uwaga
Automatyczne śledzenie MLflow MLlib jest domyślnie przestarzałe i wyłączone w klastrach z uruchomionym środowiskiem Databricks Runtime 10.4 LTS ML lub nowszym.
Zamiast tego użyj automatycznego rejestrowania uczenia maszynowego MLflow PySpark, wywołując mlflow.pyspark.ml.autolog()
funkcję , która jest domyślnie włączona w przypadku automatycznego rejestrowania usługi Databricks.
W przypadku zautomatyzowanego śledzenia MLflow MLlib podczas uruchamiania kodu dostrajania, który używa klasy CrossValidator lub TrainValidationSplit. Hiperparametry i metryki oceny są automatycznie rejestrowane w usłudze MLflow.