Aprendizagem profunda (Pré-visualização)

O Apache Spark no Azure Synapse Analytics permite o aprendizado de máquina com big data, fornecendo a capacidade de obter informações valiosas de grandes quantidades de dados estruturados, não estruturados e em rápida movimentação. Há várias opções ao treinar modelos de aprendizado de máquina usando o Azure Spark no Azure Synapse Analytics: Apache Spark MLlib, Azure Machine Learning e várias outras bibliotecas de código aberto.

Aviso

  • A visualização acelerada da GPU está limitada aos tempos de execução do Azure Synapse 3.1 (sem suporte) e Apache Spark 3.2 (Fim do suporte anunciado).
  • O Azure Synapse Runtime for Apache Spark 3.1 chegou ao fim do suporte em 26 de janeiro de 2023, com o suporte oficial descontinuado a partir de 26 de janeiro de 2024 e sem mais endereçamento de tíquetes de suporte, correções de bugs ou atualizações de segurança além dessa data.
  • O Azure Synapse Runtime for Apache Spark 3.2 chegou ao fim do suporte em 8 de julho de 2023, sem mais correções de bugs ou recursos, mas as correções de segurança podem ser retroportadas com base na avaliação de risco e serão desativadas e desabilitadas a partir de 8 de julho de 2024.

Pools Apache Spark habilitados para GPU

Para simplificar o processo de criação e gerenciamento de pools, o Azure Synapse cuida da pré-instalação de bibliotecas de baixo nível e da configuração de todos os requisitos complexos de rede entre nós de computação. Essa integração permite que os usuários comecem a usar pools acelerados por GPU em apenas alguns minutos. Para saber mais sobre como criar um pool acelerado por GPU, visite o início rápido sobre como criar um pool acelerado por GPU.

Nota

  • Pools acelerados por GPU podem ser criados em espaços de trabalho localizados no Leste dos EUA, Leste da Austrália e Norte da Europa.
  • Os pools acelerados por GPU só estão disponíveis com o tempo de execução do Apache Spark 3.1 (não suportado) e 3.2.
  • Talvez seja necessário solicitar um aumento de limite para criar clusters habilitados para GPU.

Ambiente GPU ML

O Azure Synapse Analytics fornece suporte interno para infraestrutura de aprendizagem profunda. Os tempos de execução do Azure Synapse Analytics para Apache Spark 3 incluem suporte para as bibliotecas de aprendizagem profunda mais comuns, como TensorFlow e PyTorch. O tempo de execução do Azure Synapse também inclui bibliotecas de suporte como Petastorm e Horovod, que são comumente usadas para treinamento distribuído.

TensorFlow

O TensorFlow é uma estrutura de aprendizado de máquina de código aberto para todos os desenvolvedores. Ele é usado para implementar aplicativos de aprendizado de máquina e aprendizado profundo.

Para obter mais informações sobre o Tensorflow, você pode visitar a documentação da API do Tensorflow.

PyTorch

PyTorch é uma biblioteca tensor otimizada para aprendizagem profunda usando GPUs e CPUs.

Para obter mais informações sobre o PyTorch, você pode visitar a documentação do PyTorch.

Horovod

Horovod é uma estrutura de treinamento de aprendizagem profunda distribuída para TensorFlow, Keras e PyTorch. O Horovod foi desenvolvido para tornar a aprendizagem profunda distribuída rápida e fácil de usar. Com essa estrutura, um script de treinamento existente pode ser dimensionado para ser executado em centenas de GPUs em apenas algumas linhas de código. Além disso, o Horovod pode ser executado sobre o Apache Spark, tornando possível unificar o processamento de dados e o treinamento de modelos em um único pipeline.

Para saber mais sobre como executar trabalhos de treinamento distribuídos no Azure Synapse Analytics, você pode visitar os seguintes tutoriais: - Tutorial: Treinamento distribuído com Horovod e PyTorch - Tutorial: Treinamento distribuído com Horovod e Tensorflow

Para obter mais informações sobre Horovod, você pode visitar a documentação Horovod,

Petastorm

Petastorm é uma biblioteca de acesso a dados de código aberto que permite o treinamento distribuído ou de nó único de modelos de aprendizagem profunda. Esta biblioteca permite o treinamento diretamente de conjuntos de dados no formato Apache Parquet e conjuntos de dados que já foram carregados como um Apache Spark DataFrame. Petastorm suporta estruturas de treinamento populares como Tensorflow e PyTorch.

Para obter mais informações sobre o Petastorm, você pode visitar a página do Petastorm GitHub ou a documentação da API do Petastorm.

Próximos passos

Este artigo fornece uma visão geral das várias opções para treinar modelos de aprendizado de máquina em pools do Apache Spark no Azure Synapse Analytics. Você pode aprender mais sobre o treinamento de modelo seguindo o tutorial abaixo: