Aprendizado de máquina no Azure Databricks
O Azure Databricks fornece um ambiente abrangente e baseado em nuvem para o desenvolvimento de modelos de aprendizado de máquina. O Machine Learning é uma disciplina que envolve a colaboração entre cientistas de dados, que analisam e modelam os dados, e engenheiros de aprendizado de máquina, que implantam e gerenciam modelos. O Azure Databricks permite que os cientistas de dados realizem tarefas de ingestão, exploração e preparação de dados, bem como tarefas de treinamento, avaliação e gerenciamento de modelos.
Runtimes de aprendizado de máquina do Databricks
Ao criar um cluster em um workspace do Azure Databricks, você pode especificar o runtime do Databricks a ser instalado no cluster. O Azure Databricks inclui alguns runtimes do Databricks otimizados para aprendizado de máquina. Eles incluem suporte para bibliotecas que são normalmente usadas em cargas de trabalho de aprendizado de máquina, incluindo estruturas de aprendizado de máquina e utilitários para gerenciar operações de aprendizado de máquina.
Se você estiver implementando soluções de aprendizado de máquina, crie um cluster com um dos runtimes de ML. Você pode escolher um runtime baseado em CPU para cenários clássicos de aprendizado de máquina ou um runtime baseado em GPU se precisar criar redes neurais complexas com estruturas de aprendizado profundo, que podem aproveitar a capacidade do GPU de processar dados baseados em matriz e vetor.
Estruturas de aprendizado de máquina no Azure Databricks
O Azure Databricks é criado no Apache Spark, uma plataforma altamente escalonável para processamento de dados distribuídos. No Spark, cientistas de dados e engenheiros de aprendizado de máquina geralmente trabalham em notebooks interativos nos quais o código para preparar dados e usá-los para treinar modelos de aprendizado de máquina é escrito no PySpark (uma variante do Python otimizada para Spark). No ecossistema do Python, há muitas estruturas de aprendizado de máquina usadas com frequência, incluindo:
- Scikit-Learn: uma estrutura popular para aprendizado de máquina que fornece uma ampla variedade de algoritmos e outras bibliotecas para ajudar você a treinar e avaliar modelos preditivos.
- Spark MLlib: biblioteca de aprendizado de máquina criada especificamente para o Spark. A MLlib fornece duas maneiras de treinar e avaliar modelos de aprendizado de máquina:
- Classes baseadas na estrutura RDD (conjunto de dados distribuído resiliente) do Spark.
- Classes baseadas na estrutura de dataframe do Spark. Essa estrutura (normalmente conhecida como ML do Spark) é a preferencial para usar MLlib.
- PyTorch: uma estrutura de aprendizado profundo usada para criar modelos de rede neural para cargas de trabalho complexas de previsão, Pesquisa Visual Computacional e processamento de linguagem natural.
- TensorFlow: outra estrutura de aprendizado profundo usada com frequência.
Você pode usar qualquer uma dessas estruturas (e muito mais) no Azure Databricks para treinar e avaliar modelos de aprendizado de máquina.