O que é o Construtor de modelo?
O machine learning é uma técnica que usa matemática e estatísticas para identificar padrões em dados sem ser explicitamente programado. O Model Builder é uma extensão gráfica do Visual Studio para treinar e implantar modelos de machine learning personalizados usando ML.NET.
Por exemplo, digamos que você quer prever o preço de uma casa. Se você estiver usando um único recurso, como a área da casa em metros quadrados, para estimar o preço, você provavelmente poderia programar uma heurística correlacionando casas maiores a um preço mais alto.
No entanto, o mundo nem sempre é tão simples. Muitas variáveis influenciam o preço de uma casa. Em casos como esse em que fica difícil chegar com uma heurística simples que capture casos de borda, o machine learning pode ser uma solução melhor.
Com o machine learning, em vez de regras de programação explícitas, você usa dados históricos para identificar essas regras com base em observações reais. Os padrões encontrados usando o machine learning são então usados para criar um artefato chamado de modelo para fazer previsões usando dados novos e anteriormente não vistos.
O ML.NET é uma estrutura de machine learning de código aberto multiplataforma para .NET. Dessa forma, você pode aplicar suas habilidades em .NET e usar as ferramentas com as quais você está familiarizado (como o Visual Studio) para treinar modelos de machine learning.
Quais tipos de problemas posso resolver usando o Model Builder?
Você pode usar o Model Builder para resolver muitos problemas comuns de machine learning, como:
- Categorizar dados: organizar artigos de notícias por tópico.
- Prever um valor numérico: estimar o preço de uma casa.
- Agrupar itens com características semelhantes: segmentação de clientes.
- Recomendar itens: recomendar filmes.
- Classificar imagens: marcar uma imagem com base no seu conteúdo.
- Detectar objetos em uma imagem: detectar pedestres e bicicletas em uma interseção.
Como posso criar modelos usando o Model Builder?
Em geral, o processo de adicionar modelos de machine learning aos aplicativos consiste em duas etapas: treinamento e consumo.
Treinamento
O treinamento é o processo de aplicação de algoritmos a dados históricos para criar um modelo que capture padrões subjacentes. Você pode usar o modelo para fazer previsões em dados novos.
O Model Builder usa AutoML (machine learning automatizado) para encontrar o melhor modelo para os seus dados. O AutoML automatiza o processo de aplicar machine learning a dados. Você pode executar um experimento de AutoML em um conjunto de dados para iterar em diferentes transformações, algoritmos de machine learning e configurações para então selecionar o melhor modelo.
Não é necessário ter experiência de aprendizado de máquina para usar o Construtor de Modelo. Tudo o que você precisa é de alguns dados e um problema para resolver.
O processo de treinamento de modelo consiste nas seguintes etapas:
- Escolher um cenário: qual problema você está tentando resolver? O cenário escolhido depende dos dados e do que você está tentando prever.
- Escolher um ambiente: em que local você quer treinar o seu modelo? Dependendo dos recursos de computação disponíveis, do custo, dos requisitos de privacidade e de outros fatores, você pode optar por treinar modelos localmente no seu computador ou na nuvem.
- Carregar seus dados: carregue o conjunto de dados a ser usado para o treinamento. Defina as colunas que você deseja prever e escolha as colunas que deseja usar como entradas para sua previsão.
- Treinar o seu modelo: deixe que o AutoML escolha o melhor algoritmo para seu conjunto de dados de acordo com o cenário escolhido.
- Avaliar seu modelo: use métricas para avaliar o desempenho do seu modelo e o quão bem ele faz previsões sobre dados novos.
Consumo
Depois de treinar um modelo de machine learning, é hora de usá-lo para fazer previsões. O consumo é o processo de usar um modelo de machine learning treinado para fazer previsões sobre dados novos e anteriormente não vistos. Com o Model Builder, você pode consumir modelos de machine learning de projetos .NET novos e existentes.
Os modelos de machine learning baseados em ML.NET são serializados e salvos em um arquivo. O arquivo de modelo pode então ser carregado em qualquer aplicativo .NET e usado para fazer previsões usando as APIS ML.NET. Esses tipos de aplicativo incluem:
- API Web do ASP.NET Core
- Funções do Azure
- Blazor
- WPF (Windows Presentation Foundation) ou WinForms (Windows Forms)
- Console
- Biblioteca de classes
Na próxima unidade, você aprenderá sobre o processo de treinamento do modelo de machine learning no Model Builder.