Pular para o conteúdo principal

horovod.spark: aprendizagem profunda distribuída com o Horovod

important

Horovod e HorovodRunner estão obsoletos. As versões posteriores à 15.4 LTS ML não terão esse pacote pré-instalado. Para a aprendizagem profunda distribuída, a Databricks recomenda usar o TorchDistributor para treinamento distribuído com o PyTorch ou a API tf.distribute.Strategy para treinamento distribuído com o TensorFlow.

Saiba como usar o pacote horovod.spark para realizar o treinamento distribuído do modelo de aprendizado de máquina.

horovod.spark no Databricks

Databricks suporta o pacote horovod.spark, que fornece um estimador API que o senhor pode usar no pipeline ML com Keras e PyTorch. Para obter detalhes, consulte Horovod no Spark, que inclui uma seção sobre Horovod no Databricks.

nota
  • O Databricks instala o pacote horovod com dependências. Se você atualizar ou reduzir essas dependências, pode haver problemas de compatibilidade.
  • Ao usar o site horovod.spark com retornos de chamada personalizados no Keras, o senhor deve salvar os modelos no formato SavedModel do TensorFlow.
    • Com o TensorFlow 2.x, use o sufixo .tf no nome do arquivo.
    • Com o TensorFlow 1.x, defina a opção save_weights_only=True.

Requisitos

Databricks Runtime ML 7.4 ouacima.

nota

horovod.spark não é compatível com as versões 11.0 e acima do pyarrow (consulte o GitHub problema relevante em ). O Databricks Runtime 15.0 ML inclui a versão 14.0.1 do pyarrow. Para usar horovod.spark com Databricks Runtime 15.0 ML ou acima, o senhor deve instalar manualmente o pyarrow, especificando uma versão abaixo 11.0.

Exemplo: Função de treinamento distribuído

Aqui está um exemplo básico para executar uma função de treinamento distribuído usando horovod.spark:

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

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

Exemplo de notebook: Horovod Spark estimadores usando Keras e PyTorch

O seguinte Notebook demonstra como usar o Horovod Spark Estimator API com Keras e PyTorch.

Horovod Spark Estimator Keras Notebook

Open notebook in new tab

Horovod Spark Estimator PyTorch Notebook

Open notebook in new tab