Dela via


horovod.spark: Distribuerad djupinlärning med Horovod

Viktigt!

Horovod och HorovodRunner är nu inaktuella. Versioner efter 15.4 LTS ML kommer inte att ha det här paketet förinstallerat. För distribuerad djupinlärning rekommenderar Databricks att du använder TorchDistributor för distribuerad träning med PyTorch eller API:et tf.distribute.Strategy för distribuerad träning med TensorFlow.

Lär dig hur du använder horovod.spark paketet för att utföra distribuerad träning av maskininlärningsmodeller.

horovod.spark på Azure Databricks

Azure Databricks stöder horovod.spark paketet, som tillhandahåller ett beräknings-API som du kan använda i ML-pipelines med Keras och PyTorch. Mer information finns i Horovod på Spark, som innehåller ett avsnitt om Horovod på Databricks.

Kommentar

  • Azure Databricks installerar horovod paketet med beroenden. Om du uppgraderar eller nedgraderar dessa beroenden kan det finnas kompatibilitetsproblem.
  • När du använder horovod.spark med anpassade återanrop i Keras måste du spara modeller i TensorFlow SavedModel-format.
    • Använd suffixet .tf i filnamnet med TensorFlow 2.x.
    • Med TensorFlow 1.x anger du alternativet save_weights_only=True.

Krav

Databricks Runtime ML 7.4 eller senare.

Kommentar

horovod.spark stöder inte pyarrowversionerna 11.0 och senare (se relevant GitHub-problem). Databricks Runtime 15.0 ML innehåller pyarrow version 14.0.1. Om du vill använda horovod.spark med Databricks Runtime 15.0 ML eller senare måste du installera pyarrow manuellt och ange en version under 11.0.

Exempel: Distribuerad träningsfunktion

Här är ett grundläggande exempel för att köra en distribuerad träningsfunktion med hjälp av horovod.spark:

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

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

Exempel på notebook-filer: Horovod Spark-skattningar med Keras och PyTorch

Följande notebook-filer visar hur du använder Horovod Spark Estimator API med Keras och PyTorch.

Horovod Spark Estimator Keras notebook

Hämta notebook-fil

Horovod Spark Estimator PyTorch Notebook

Hämta notebook-fil