Ladění hyperparametrů

Databricks Runtime pro službu Machine Learning zahrnuje opensourcový nástroj Hyperopt, který automatizuje proces výběru modelu a ladění hyperparametrů.

Ladění hyperparametrů pomocí Raye

Databricks Runtime ML zahrnuje Ray, opensourcovou architekturu, která se specializuje na paralelní výpočetní zpracování pro škálování pracovních postupů ML a aplikací umělé inteligence. Viz Použití Ray v Azure Databricks.

Ladění hyperparametrů pomocí Hyperoptu

Databricks Runtime ML zahrnuje Hyperopt, knihovnu Pythonu usnadňující vyladění distribuovaných hyperparametrů a výběr modelu. Pomocí Hyperoptu můžete prohledávat sadu modelů Pythonu a současně měnit algoritmy a hyperparametry v rámci definovaných prostorů. Hyperopt spolupracuje jak s distribuovanými algoritmy ML, jako je Apache Spark MLlib a Horovod, tak i s modely ML v jednom počítači, jako je scikit-learn a TensorFlow.

Základní kroky při používání Hyperoptu jsou následující:

  1. Definování účelové funkce pro minimalizaci. Obvykle se jedná o úroveň ztrát při trénování nebo ověřování.
  2. Definování prostoru hledání hyperparametrů. Hyperopt poskytuje podmíněný prostor pro hledání, který umožňuje porovnat různé algoritmy ML v rámci stejného spuštění.
  3. Určení vyhledávacího algoritmu. Hyperopt používá stochastické algoritmy vyladění, které provádějí efektivnější hledání prostoru hyperparametrů, než je hledání pomocí deterministické mřížky.
  4. Spuštění funkce Hyperoptu fmin(). Funkce fmin() vezme položky, které jste definovali v předchozích krocích, a určí sadu hyperparametrů, které minimalizují účelovou funkci.

Pokud chcete rychle začít používat Hyperopt s algoritmy scikit-learn, přečtěte si následující témata:

Další podrobnosti o tom, jak Hyperopt funguje, a další příklady najdete v těchto tématech:

Automatizované sledování MLflow

Poznámka:

Automatizované sledování MLflow MLlib je ve výchozím nastavení zastaralé a zakázané v clusterech, na kterých běží Databricks Runtime 10.4 LTS ML a novější. Místo toho použijte automatické protokolování MLflow PySpark ML voláním mlflow.pyspark.ml.autolog(), která je ve výchozím nastavení povolena s automatickým protokolováním Databricks.

Pokud chcete použít staré automatizované sledování MLflow MLlib v Databricks Runtime 10.4 LTS ML a novější, povolte ho nastavením konfiguracíspark.databricks.mlflow.trackMLlib.enabled true Sparku a spark.databricks.mlflow.autologging.enabled false.