Identificar a fonte e o formato dos dados
Os dados são a entrada mais importante para seus modelos de aprendizado de máquina. Você precisará de acesso aos dados ao treinar modelos de aprendizado de máquina, e o modelo treinado precisa de dados como entrada para gerar previsões.
Imagine que você é um cientista de dados e foi convidado a treinar um modelo de aprendizado de máquina.
Você pretende passar pelas seis etapas a seguir para planejar, treinar, implantar e monitorar o modelo:
- Definir o problema: Decida o que o modelo deve prever e quando é bem-sucedido.
- Obter os dados: encontre fontes de dados e obtenha acesso.
- Preparar os dados: explore os dados. Limpe e transforme os dados com base nos requisitos do modelo.
- Treinar o modelo: Escolha um algoritmo e valores de hiperparâmetros com base em tentativa e erro.
- Integrar o modelo: implante o modelo em um ponto de extremidade para gerar previsões.
- Monitore o modelo: acompanhe o desempenho do modelo.
Nota
O diagrama é uma representação simplificada do processo de aprendizagem automática. Normalmente, o processo é iterativo e contínuo. Por exemplo, ao monitorar o modelo, você pode decidir voltar e treinar novamente o modelo.
Para obter e preparar os dados que você usará para treinar o modelo de aprendizado de máquina, você precisará extrair dados de uma fonte e disponibilizá-los para o serviço do Azure que deseja usar para treinar modelos ou fazer previsões.
Em geral, é uma prática recomendada extrair dados de sua fonte antes de analisá-los. Se você estiver usando os dados para engenharia de dados, análise de dados ou ciência de dados, convém extrair os dados de sua fonte, transformá-los e carregá-los em uma camada de serviço. Esse processo também é conhecido como Extrair, Transformar e Carregar (ETL) ou Extrair, Carregar e Transformar (ELT). A camada de serviço disponibiliza seus dados para o serviço que você usará para processamento adicional de dados, como treinamento de modelos de aprendizado de máquina.
Antes de poder projetar o processo ETL ou ELT, você precisará identificar sua fonte de dados e formato de dados.
Identificar a fonte de dados
Quando você começar com um novo projeto de aprendizado de máquina, primeiro identifique onde os dados que você deseja usar estão armazenados.
Os dados necessários para o seu modelo de aprendizado de máquina já podem estar armazenados em um banco de dados ou ser gerados por um aplicativo. Por exemplo, os dados podem ser armazenados em um sistema de Customer Relationship Management (CRM), em um banco de dados transacional como um banco de dados SQL, ou ser gerados por um dispositivo de Internet das Coisas (IoT).
Em outras palavras, sua organização já pode ter processos de negócios em vigor, que geram e armazenam os dados. Se não tiver acesso aos dados de que necessita, existem métodos alternativos. Você pode coletar novos dados implementando um novo processo, adquirir novos dados usando conjuntos de dados disponíveis publicamente ou comprar conjuntos de dados com curadoria.
Identificar o formato dos dados
Com base na fonte dos seus dados, os seus dados podem ser armazenados num formato específico. Você precisa entender o formato atual dos dados e determinar o formato necessário para suas cargas de trabalho de aprendizado de máquina.
Comumente, referimo-nos a três formatos diferentes:
Dados tabulares ou estruturados : Todos os dados têm os mesmos campos ou propriedades, que são definidos em um esquema. Os dados tabulares geralmente são representados em uma ou mais tabelas onde as colunas representam recursos e as linhas representam pontos de dados. Por exemplo, um arquivo Excel ou CSV pode ser interpretado como dados tabulares:
Identificação do doente Pregnancies Pressão arterial diastólica BMI Diabetes Pedigree Antiguidade Diabéticos 1354778 0 80 43.50973 1.213191 21 0 1147438 8 93 21.24058 0.158365 23 1 Dados semiestruturados : nem todos os dados têm os mesmos campos ou propriedades. Em vez disso, cada ponto de dados é representado por uma coleção de pares chave-valor. As chaves representam os recursos e os valores representam as propriedades do ponto de dados individual. Por exemplo, aplicativos em tempo real, como dispositivos de Internet das Coisas (IoT), geram um objeto JSON:
{ "deviceId": 29482, "location": "Office1", "time":"2021-07-14T12:47:39Z", "temperature": 23 }
Dados não estruturados : arquivos que não obedecem a nenhuma regra quando se trata de estrutura. Por exemplo, documentos, imagens, arquivos de áudio e vídeo são considerados dados não estruturados. Armazená-los como arquivos não estruturados garante que você não precise definir nenhum esquema ou estrutura, mas também significa que você não pode consultar os dados no banco de dados. Você precisará especificar como ler esse arquivo ao consumir os dados.
Gorjeta
Saiba mais sobre os principais conceitos de dados no Learn
Identificar o formato de dados desejado
Ao extrair os dados de uma fonte, convém transformá-los para alterar o formato de dados e torná-los mais adequados para treinamento de modelos.
Por exemplo, você pode querer treinar um modelo de previsão para executar a manutenção preditiva em uma máquina. Você deseja usar recursos como a temperatura da máquina para prever um problema com a máquina. Se você receber um alerta de que um problema está surgindo, antes que a máquina quebre, você pode economizar custos corrigindo o problema logo no início.
Imagine que a máquina tem um sensor que mede a temperatura a cada minuto. Cada minuto, cada medida ou entrada pode ser armazenada como um objeto ou arquivo JSON.
Para treinar o modelo de previsão, você pode preferir uma tabela na qual todas as medições de temperatura de cada minuto são combinadas. Você pode querer criar agregados dos dados e ter uma tabela da temperatura média por hora. Para criar a tabela, convém transformar os dados semiestruturados ingeridos do dispositivo IoT em dados tabulares.
Para criar um conjunto de dados que você pode usar para treinar o modelo de previsão, você pode:
- Extraia medições de dados como objetos JSON dos dispositivos IoT.
- Converter os objetos JSON em uma tabela.
- Transforme os dados para obter a temperatura por máquina por minuto.
Depois de identificar a fonte de dados, o formato de dados original e o formato de dados desejado, você pode pensar em como deseja servir os dados. Em seguida, você pode projetar um pipeline de ingestão de dados para extrair e transformar automaticamente os dados necessários.