Delen via


horovod.spark: gedistribueerd deep learning met Horovod

Belangrijk

Horovod en HorovodRunner zijn nu afgeschaft. Releases na 15.4 LTS ML hebben dit pakket niet vooraf geïnstalleerd. Voor gedistribueerde deep learning raadt Databricks aan om TorchDistributor te gebruiken voor gedistribueerde training met PyTorch of de tf.distribute.Strategy API voor gedistribueerde training met TensorFlow.

Meer informatie over het gebruik van het horovod.spark pakket voor het uitvoeren van gedistribueerde training van machine learning-modellen.

horovod.spark in Azure Databricks

Azure Databricks ondersteunt het horovod.spark pakket, dat een estimator-API biedt die u kunt gebruiken in ML-pijplijnen met Keras en PyTorch. Zie Horovod in Spark, dat een sectie over Horovod op Databricks bevat voor meer informatie.

Notitie

  • Azure Databricks installeert het horovod pakket met afhankelijkheden. Als u deze afhankelijkheden bijwerken of downgraden, kunnen er compatibiliteitsproblemen zijn.
  • Wanneer u gebruikmaakt van horovod.spark aangepaste callbacks in Keras, moet u modellen opslaan in de TensorFlow SavedModel-indeling.
    • Gebruik met TensorFlow 2.x het .tf achtervoegsel in de bestandsnaam.
    • Stel met TensorFlow 1.x de optie save_weights_only=Truein.

Vereisten

Databricks Runtime ML 7.4 of hoger.

Notitie

horovod.spark biedt geen ondersteuning voor pyarrow-versies 11.0 en hoger (zie relevant GitHub-probleem). Databricks Runtime 15.0 ML bevat pyarrow versie 14.0.1. Als u wilt gebruiken horovod.spark met Databricks Runtime 15.0 ML of hoger, moet u pyarrow handmatig installeren en een versie lager dan 11.0 opgeven.

Voorbeeld: Gedistribueerde trainingsfunctie

Hier volgt een basisvoorbeeld voor het uitvoeren van een gedistribueerde trainingsfunctie met behulp van horovod.spark:

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

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

Voorbeeldnotebooks: Horovod Spark-schattingen met Keras en PyTorch

De volgende notebooks laten zien hoe u de Horovod Spark Estimator-API gebruikt met Keras en PyTorch.

Horovod Spark Estimator Keras-notebook

Notebook downloaden

Horovod Spark Estimator PyTorch-notebook

Notebook downloaden