Obter e preparar dados

Concluído

Os dados são a base de machine learning. Tanto a quantidade como a qualidade dos dados afetam a precisão do modelo.

Para treinar um modelo de machine learning, você precisa:

  • Identificar a fonte de dados e o formato.
  • Escolher como fornecer dados.
  • Criar uma solução de ingestão de dados.

Para obter e preparar os dados usados para treinar o modelo de machine learning, você precisa extrair dados de uma fonte e disponibilizá-los para o serviço do Azure que você deseja usar para treinar modelos ou fazer previsões.

Identificar a fonte de dados e o formato

Primeiro, você precisa identificar a fonte e o formato de dados atual.

Identificar o Exemplos
Fonte de dados Por exemplo, os dados podem ser armazenados em um sistema de gerenciamento de relacionamento com o cliente (CRM), em um banco de dados transacional como um banco de dados SQL, ou gerados por um dispositivo da Internet das Coisas (IoT).
Formato de dados Você precisa entender o formato atual dos dados, que podem ser dados tabulares ou estruturados, dados semiestruturados ou dados não estruturados.

Em seguida, você precisa decidir quais dados você precisa para treinar o seu modelo e em que formato deseja que esses dados sejam servidos ao modelo.

Criar uma solução de ingestão de dados

Em geral, é uma prática recomendada extrair os dados da respectiva fonte antes de analisá-los. Se você estiver usando os dados para engenharia de dados, análise de dados ou ciência de dados, você deseja extrair os dados da fonte, transformá-los e carregá-los em uma camada de serviço. Este processo também é chamado de Extração, Transformação e Carregamento (ETL) ou Extração, Carregamento e Transformação (ELT). A camada de serviço disponibiliza os dados para o serviço que você usa para processamento de dados adicionais, como treinamento de modelos de machine learning.

Para mover e transformar dados, você pode usar um pipeline de ingestão de dados. Um pipeline de ingestão de dados é uma sequência de tarefas que movem e transformam os dados. Ao criar um pipeline, você pode optar por disparar as tarefas manualmente ou agendar o pipeline quando quiser que as tarefas sejam automatizadas. Esses pipelines podem ser criados com serviços do Azure, como o Azure Synapse Analytics, o Azure Databricks e também o Azure Machine Learning.

Uma abordagem comum para uma solução de ingestão de dados é:

  1. Extrair dados brutos da respectiva fonte (como um sistema CRM ou dispositivo IoT).
  2. Copiar e transformar dados com o Azure Synapse Analytics.
  3. Armazenar os dados preparados em um Armazenamento de Blobs do Azure.
  4. Treinar o modelo com o Azure Machine Learning.

Diagrama mostrando um exemplo de um pipeline de ingestão de dados.

Explorar um exemplo

Imagine que você queira treinar um modelo de previsão do tempo. Você prefere uma tabela na qual todas as medidas de temperatura de cada minuto são combinadas. Você deseja criar agregações dos dados e ter uma tabela da temperatura média por hora. Para criar a tabela, você deseja transformar em dados tabulares os dados semiestruturados ingeridos do dispositivo IoT que mede a temperatura em intervalos.

Diagrama mostrando um exemplo de dados JSON convertidos em uma tabela.

Por exemplo, para criar um conjunto de dados que possam ser usados para treinar o modelo de previsão, você pode:

  1. Extrair medidas de dados como objetos JSON dos dispositivos IoT.
  2. Converter os objetos JSON em uma tabela.
  3. Transformar os dados para obter a temperatura por computador por minuto.

Em seguida, vamos explorar os serviços que podemos usar para treinar modelos de machine learning.