Použití algoritmů distribuovaného školení s Hyperopt

Kromě školicích algoritmů pro jeden počítač, jako jsou ty, které se používají v scikit-učení, můžete k použití Hyperopt použít i pro distribuované školicí algoritmy. V případě těchto funkcí Hyperopt vygeneruje zkušební verze s různými nastaveními parametrů v uzlu ovladače a každá zkušební verze se vyhodnocuje pomocí algoritmů distribuovaného školení, které využívají úplný cluster. To platí pro všechny algoritmy nebo knihovny pro distribuované strojové učení, včetně Apache Spark MLlib a HorovodRunner.

HorovodRunner je obecné rozhraní API, které se používá ke spouštění distribuovaných úloh hloubkového učení u datacihlů. HorovodRunner integruje Horovod s režimem bariéry Sparku, aby poskytoval vyšší stabilitu pro dlouhotrvající úlohy školicích kurzů na Spark.

V Hyperopt se zkušební verze vyhodnocují sekvenčně v uzlu ovladače Spark. Naproti tomu HorovodRunner se spustí v uzlu ovladače Spark a distribuuje školicí úlohy do uzlů Spark Worker. HorovodRunner shromažďuje návratové hodnoty do uzlu ovladače a pak je předává do Hyperopt.

Poznámka

Azure Databricks nepodporuje automatické protokolování do MLflow s Trials třídou. V HorovodRunner nepoužíváte SparkTrials třídu a musíte ručně volat MLflow na testy protokolů pro Hyperopt.

Příklad ladění parametrů pro distribuované školení pomocí Hyperopt s HorovodRunner najdete v těchto tématech:

Hyperopt a HorovodRunner distribuovaný školicí notebook

Získat poznámkový blok