Escolha o seu cenário e prepare os dados

Concluído

Nesta unidade, você aprenderá sobre como escolher um cenário, selecionar um ambiente de treinamento e preparar seus dados para treinamento no Construtor de Modelos.

Iniciar o processo de formação

Para iniciar o processo de treinamento, você precisa adicionar um novo item Modelo de Aprendizado de Máquina (ML.NET) a um aplicativo .NET novo ou existente.

Gorjeta

A portabilidade é um dos benefícios que as bibliotecas de classes oferecem. As bibliotecas de classes facilitam a referência a quaisquer modelos que façam parte dela a partir do console, da área de trabalho, da Web e de qualquer outro tipo de aplicativo .NET. Recomendamos que você adicione itens do Modelo de Aprendizado de Máquina (ML.NET) a uma biblioteca de classes.

O item Modelo de Aprendizado de Máquina (ML.NET) adiciona um arquivo ao seu projeto com a extensão de arquivo .mbconfig . Os arquivos que usam a extensão .mbconfig são arquivos de configuração do Construtor de Modelos criados em JSON. Estes ficheiros permitem-lhe:

  • Forneça um nome para o seu modelo.
  • Colabore com outras pessoas da sua equipe por meio do controle do código-fonte.
  • Estado de persistência. Se em algum momento do processo de treinamento você precisar fechar o Model Builder, seu estado será salvo e você poderá continuar de onde parou.

Escolha um cenário

O primeiro passo para treinar um modelo de aprendizado de máquina é decidir qual cenário e tarefa de aprendizado de máquina são os mais adequados, dado o que você está tentando prever.

O que é um cenário?

Um cenário descreve o problema que você está tentando resolver usando seus dados. Os cenários comuns incluem os listados na unidade anterior:

  • Categorização de dados: Organize artigos de notícias por tópico.
  • Previsão de um valor numérico: Estimar o preço de uma casa.
  • Agrupamento de itens com características semelhantes: Segmentar clientes.
  • Classificação de imagens: marque uma imagem com base no seu conteúdo.
  • Recomendando itens: Recomende filmes.
  • Detetar objetos numa imagem: detete peões e bicicletas num cruzamento.

Os cenários são mapeados para tarefas de aprendizado de máquina. Uma tarefa de aprendizado de máquina é o tipo de previsão ou inferência que está sendo feita, com base no problema ou pergunta que está sendo feita e nos dados disponíveis.

As tarefas de aprendizado de máquina tendem a se enquadrar em duas categorias:

  • Supervisionado
  • Sem supervisão

A principal diferença entre eles é se o rótulo, ou o valor que você está tentando prever, é conhecido ou não.

Para tarefas supervisionadas, o rótulo é conhecido. Exemplos de tarefas supervisionadas de aprendizado de máquina incluem:

  • Classificação
    • Binário (duas categorias)
    • Multiclasse (duas ou mais categorias)
    • Image
  • Regressão

Para tarefas não supervisionadas, o rótulo é desconhecido. Exemplos de tarefas de aprendizado de máquina não supervisionadas incluem:

  • Clustering
  • Deteção de anomalias

Cenários suportados no Construtor de Modelos

O Construtor de Modelos suporta os seguintes cenários mapeados para tarefas de aprendizado de máquina:

Cenário Tarefa de aprendizado de máquina Caso de utilização
Classificação de dados Classificação binária e multiclasse Organize os artigos por tema.
Previsão de valor Regressão linear Preveja o preço de uma casa com base nas características da casa.
Classificação de imagens Classificação de imagens (deep learning) Organize imagens por espécie animal com base no conteúdo de uma imagem.
Recomendação Recomendação Recomende filmes com base nas preferências de utilizadores semelhantes.
Deteção de objetos Deteção de objetos (deep learning) Identifique danos físicos em uma imagem.

Escolhendo um cenário para manutenção preditiva

Dependendo da aparência dos seus dados, o problema de manutenção preditiva pode ser modelado através de diferentes tarefas. Para seu caso de uso, como o rótulo é um valor binário (0 ou 1) que descreve se uma máquina está quebrada ou não, o cenário de classificação de dados é apropriado.

Escolha o seu ambiente

Agora que você selecionou a classificação de dados, é hora de escolher o ambiente onde deseja treinar seu modelo de aprendizado de máquina. Os ambientes descrevem os recursos de computação que você usará para treinar seu modelo de aprendizado de máquina.

Ambientes suportados no Construtor de Modelos

O Construtor de Modelos suporta as seguintes opções de ambiente:

Cenário Local CPU Local GPU Azure GPU
Classificação de dados ✔️
Previsão de valor ✔️
Classificação de imagens ✔️ ✔️ ✔️
Recomendação ✔️
Deteção de objetos ✔️

Dependendo do seu caso de uso, há vários motivos pelos quais você pode escolher um ambiente local ou do Azure.

Ambientes locais

Os motivos pelos quais você pode considerar ambientes de computação locais incluem:

  • Treinar localmente não custa nada porque você está usando os recursos do seu computador.
  • Não quer que os seus dados saiam do seu computador ou centro de dados.

Ambientes do Azure

Cenários como classificação de imagens e deteção de objetos consomem muitos recursos. O uso de uma GPU pode muitas vezes acelerar o processo de treinamento. Se você não tiver uma GPU ou um computador com CPU ou RAM suficientes, descarregar o processo de treinamento para o Azure pode aliviar a carga em seu sistema.

Carregue e prepare os seus dados

Com seu cenário e ambiente de treinamento selecionados, é hora de carregar e preparar seus dados.

Os dados são o componente mais importante para a construção de modelos de aprendizado de máquina. O processo de carregamento de dados no Construtor de Modelos consiste em três etapas:

  1. Escolha o tipo de fonte de dados.
  2. Forneça a localização dos seus dados.
  3. Escolha a finalidade da coluna.

Escolha o tipo de fonte de dados

Dependendo do seu cenário, o Construtor de Modelos suporta o carregamento de dados das seguintes fontes:

  • Arquivos delimitados (vírgula, ponto-e-vírgula e tabulação)
  • Bancos de dados locais e remotos do SQL Server
  • Imagens (.jpg e .png)

Forneça a localização dos seus dados

Depois de selecionar o tipo de fonte de dados, você precisa fornecer o local onde o conjunto de dados está armazenado. Esse local pode ser um diretório, caminho de arquivo ou cadeia de conexão de banco de dados. Depende do cenário e do tipo de fonte de dados selecionado.

Quando uma fonte de dados é selecionada no Construtor de Modelos, ela analisa os dados e faz o possível para identificar:

  • Cabeçalhos e nomes de colunas
  • Separador de coluna
  • Tipos de dados de coluna
  • Finalidade da coluna
  • Separadores decimais

Depois que os dados são carregados, o Construtor de Modelos exibe uma visualização de alguns dos elementos em seu conjunto de dados.

Escolher a finalidade da coluna

Dependendo do cenário escolhido, você terá que definir a finalidade de determinadas colunas. Em cenários como classificação de dados e previsão de valor, você terá que escolher qual das suas colunas é a coluna que deseja prever (rótulo).

Por padrão, todas as outras colunas que não são o rótulo são usadas como recursos. Recursos são colunas usadas como entradas para prever o rótulo.

Opções avançadas de dados

Para personalizar a forma como os dados são carregados, o Construtor de Modelos fornece opções de dados avançadas. Essas opções permitem que você personalize as configurações que dizem respeito às suas colunas e formatação do conjunto de dados.

Para colunas, você pode escolher as seguintes configurações:

  • Finalidade: A coluna deve ser um recurso, ser um rótulo ou ser ignorada? Você pode ter apenas uma coluna selecionada como o rótulo.
  • Tipo de dados: O valor é um float de precisão única, string ou booleano?
  • Categórico: A coluna representa um valor categórico (por exemplo: baixo, médio ou alto)?

Para formatar dados, você pode escolher se os dados contêm cabeçalhos de coluna, o separador de coluna (vírgula, ponto-e-vírgula ou tabulação) e o tipo de separador decimal (ponto ou vírgula).

Noções básicas sobre o conjunto de dados de manutenção preditiva

O conjunto de dados utilizado neste módulo é o conjunto de dados de manutenção preditiva AI4I 2020. Este conjunto de dados sintético reflete dados reais de manutenção preditiva encontrados na indústria. Consiste em 10.000 pontos de dados e 14 colunas. É de:

Explainable Artificial Intelligence for Predictive Maintenance Applications, Stephan Matzka, Third International Conference on Artificial Intelligence for Industries (AI4I 2020), 2020 (no prelo), e hospedado no UCI Machine Learning Repository - Dua, D. and Graff, C. (2019). Repositório http://archive.ics.uci.edu/mlUCI Machine Learning . Irvine, CA: Universidade da Califórnia, Escola de Informação e Ciência da Computação.

Aqui está uma prévia da aparência dos dados:

IUD ID do Produto Type Temperatura do ar [K] Temperatura de processo [K] Velocidade de rotação [rpm] Binário [Nm] Desgaste da ferramenta [min] Falha da máquina TWF HDF FQP OSF RNF
1 M14860 Seg 298.1 308.6 1551 42.8 0 0 0 0 0 0 0
162 L47341 L 298.3 308.1 1412 52.3 218 1 0 0 0 1 0

As colunas são definidas da seguinte forma:

  • UDI: O índice da linha.
  • ID do produto: um identificador de produto que contém uma categoria de tipo de produto e um número de série específico da variante.
  • Tipo: Categoria de qualidade do produto. Os valores são L (baixo; 50% de todos os produtos), M (médio; 30%) ou H (alto; 20%).
  • Temperatura do ar [K], Temperatura do processo [K], Velocidade de rotação [rpm], Torque [Nm], Desgaste da ferramenta [min]: Valores coletados dos sensores.
  • Falha da máquina: rótulo binário (0 ou 1) que indica se a máquina falhou.
  • TWF, HDF, PWF, OSF, RNF: Modos independentes de falha da máquina. Um valor de 1 indica que ocorreu o respetivo modo de falha.

Para esse cenário, você não usará todas as colunas no conjunto de dados porque elas não informam a previsão ou contêm informações redundantes.

Como você quer ser capaz de prever se uma máquina falhará ou não, a coluna Falha da máquina é o rótulo. No Construtor de Modelos, para recursos, você pode usar dados da ID do Produto, Tipo e várias colunas do sensor.

Embora os modos de falha sejam úteis para diagnosticar a causa raiz de uma falha, eles não são úteis para o seu caso de uso. A razão é que você só quer saber se uma máquina falhou ou não. Além disso, informações semelhantes já são capturadas pela coluna Falha da máquina. Então, você pode ignorar essas colunas.

Prossiga para a próxima unidade para verificar seu conhecimento sobre cenários, ambientes e preparação de dados.