horovod.spark: distribuované hluboké učení pomocí Horovodu

Naučte se používat horovod.spark balíček k provádění distribuovaného trénování modelů strojového učení.

horovod.spark v Azure Databricks

Azure Databricks podporuje horovod.spark balíček, který poskytuje rozhraní API pro odhadce, které můžete použít v kanálech ML s Kerasem a PyTorchem. Podrobnosti najdete v tématu Horovod ve Sparku, který obsahuje část Horovod v Databricks.

Poznámka:

  • Azure Databricks nainstaluje horovod balíček se závislostmi. Pokud upgradujete nebo downgradujete tyto závislosti, můžou se zde vyskytovat problémy s kompatibilitou.
  • Při použití horovod.spark s vlastními zpětnými voláními v Kerasu je nutné uložit modely ve formátu TensorFlow SavedModel.
    • S TensorFlow 2.x použijte příponu .tf v názvu souboru.
    • U TensorFlow 1.x nastavte možnost save_weights_only=True.

Požadavky

Databricks Runtime ML 7.4 nebo novější

Poznámka:

horovod.spark nepodporuje pyarrow verze 11.0 a vyšší (viz relevantní problém GitHubu). Databricks Runtime 15.0 ML obsahuje pyarrow verze 14.0.1. Pokud chcete databricks Runtime 15.0 ML nebo novější použít horovod.spark , musíte ručně nainstalovat pyarrow a určit verzi nižší než 11.0.

Příklad: Distribuovaná trénovací funkce

Tady je základní příklad spuštění distribuované trénovací funkce pomocí horovod.spark:

def train():
  import horovod.tensorflow as hvd
  hvd.init()

import horovod.spark
horovod.spark.run(train, num_proc=2)

Ukázkové poznámkové bloky: Estimátory Horovod Sparku s využitím Kerasu a PyTorchu

Následující poznámkové bloky ukazují, jak používat rozhraní API estimátoru Horovod Spark s Kerasem a PyTorchem.

Poznámkový blok Kerasu pro Estimátor Sparku Horovod

Získat poznámkový blok

Poznámkový blok PyTorch pro Estimator Sparku Horovod

Získat poznámkový blok