Partilhar via


Treine o seu modelo com a Visão Personalizada

Na etapa anterior deste tutorial, abordamos os pré-requisitos para a criação do aplicativo e do modelo do Windows Machine Learning e baixamos um conjunto de imagens. Nesta etapa, vamos aprender como usar a interface da Visão Personalizada baseada na Web para transformar o conjunto de imagens em um modelo de classificação de imagem.

A Visão Personalizada do Azure é um serviço de reconhecimento de imagem que permite criar, implantar e aprimorar os próprios identificadores de imagem. O Serviço de Visão Personalizada está disponível como um conjunto de SDKs nativos e por meio de uma interface baseada na Web no site da Visão Personalizada.

Criar os recursos e o projeto de Visão Personalizada

Criar recursos de Visão Personalizada

Para usar o Serviço de Visão Personalizada, você vai precisar criar os recursos da Visão Personalizada no Azure.

  1. Navegue até a página principal da sua conta do Azure e selecione Create a resource.

Azure resources selection

  1. Na caixa de pesquisa, procure por Custom Vision e insira o Azure Marketplace. Selecione Create Custom Vision para abrir a janela de diálogo na página Criar Visão Personalizada.

Packages selection

  1. Na página da caixa de diálogo da Visão Personalizada, escolha o seguinte:
  • Selecione os recursos Training e Prediction.
  • Selecione a assinatura para gerenciar os recursos implantados. Se a sua assinatura do Azure não aparecer no menu, saia e reabra a conta do Azure usando as mesmas credenciais com as quais você abriu a sua conta.
  • Crie um grupo de recursos e dê um nome a ele. Neste tutorial, ele será chamado de MLTraining, mas fique à vontade para escolher outro nome ou usar o grupo de recursos existente, se você já tiver um.
  • Dê um nome ao seu projeto. Neste tutorial, ele será chamado de classificationApp, mas você pode usar qualquer nome de sua escolha.
  • Para os recursos Training e Prediction, defina o local como (US) Leste dos EUA e o tipo de preço como Free FO.
  1. Pressione Review + create para implantar os recursos da Visão Personalizada. A implantação dos recursos pode levar alguns minutos.

Deploy a new Custom Vision resource

Criar um projeto na Visão Personalizada

Agora que você criou o recurso, crie o projeto de treinamento na Visão Personalizada.

  1. No navegador da Web, navegue até a página Visão Personalizada e selecione Sign in. Entre com a mesma conta usada para entrar no portal do Azure.

  2. Selecione New Project para abrir uma caixa de diálogo de novo projeto.

Create a new project

  1. Crie um projeto conforme o descrito abaixo:
  • Name: FoodClassification.
  • Description: classificação de diferentes tipos de alimentos.
  • Resource: mantenha o recurso ClassificationApp [F0] que você abriu anteriormente.
  • Project Types: classification
  • Classification Types: Multilabel (Multiple tags per image)
  • Domains: Food (compact).
  • Export Capabilities: Basic platforms (Tensorflow, CoreML, ONNX, ...)

Observação

Para exportar para o formato ONNX, certifique-se de escolher o domínio Food (compact). Os domínios não compactados não podem ser exportados para ONNX.

Importante

Se a sua conta conectada estiver associada a uma conta do Azure, a lista suspensa Grupo de Recursos exibirá todos os seus Grupos de Recursos do Azure que contêm um Recurso do Serviço de Visão Personalizada. Se nenhum grupo de recursos estiver disponível, confirme se você fez o logon em customvision.ai com a mesma conta que foi usada para fazer logon no portal do Azure.

  1. Depois de preencher a caixa de diálogo, selecione Create project.

Finalize your project

Carregue o conjunto de dados de treinamento

Agora que você criou o projeto, carregue o conjunto de dados preparado previamente com as imagens de alimentos do Kaggle Open Datasets.

  1. Selecione o seu projeto FoodClassification para abrir a interface baseada na Web do site da Visão Personalizada.

  2. Selecione o botão Add images e escolha Browse local files.

Add images dialog

  1. Navegue até o local do conjunto de dados de imagem e selecione a pasta de treinamento vegetable-fruit. Selecione todas as imagens na pasta e selecione open. A opção de marcação será aberta.

  2. Insira vegetable-fruit no campo My Tags e pressione Upload.

Upload images

Aguarde até que o primeiro grupo de imagens seja carregado no projeto e pressione done. A seleção de marcação será aplicada a todo o grupo de imagens que você selecionou para carregar. É por isso que é mais fácil carregar imagens de grupos de imagens pré-criados. Você poderá alterar as marcas das imagens individuais depois que elas tiverem sido carregadas.

Image upload progress

  1. Depois que o primeiro grupo de imagens for carregado com sucesso, repita o processo duas vezes para carregar as imagens de sobremesas e de sopas. Certifique-se de etiquetá-las com marcas relevantes.

No final, você vai ter três grupos diferentes de imagens prontas para treinamento.

Image tags display

Treinar o classificador modelo

Agora você vai treinar o modelo para classificar os vegetais, as sopas e as sobremesas do conjunto de imagens que você baixou na etapa anterior.

  1. Para iniciar o processo de treinamento, selecione o botão Train no canto superior direito. O classificador vai usar as imagens para criar um modelo que identifica as qualidades visuais de cada marcação.

Train button

Há a opção para alterar o limite de probabilidade usando o controle deslizante no canto superior esquerdo. O limite de probabilidade define o nível de confiança que uma previsão precisa ter para ser considerada como correta. Se o limite de probabilidade for muito alto, você obterá uma classificação mais correta, mas uma quantidade menor será detectada. Por outro lado, se o limite de probabilidade for muito baixo, você vai detectar muito mais classificações, mas com confiança mais baixa ou com mais resultados falsos positivos.

Neste tutorial, você pode manter o limite de probabilidade em 50%.

  1. Aqui, usaremos o processo Quick Training. Advanced Training tem mais configurações e permite que você defina especificamente o tempo de treinamento, mas esse nível de controle não é necessário aqui. Pressione Train para iniciar o processo de treinamento.

Choose training type

Um processo de treinamento rápido vai levar alguns minutos para ser concluído. Durante esse tempo, as informações sobre o processo de treinamento são exibidas na guia Performance.

Training process

Avaliar e testar

Avaliar os resultados

Quando o treinamento for concluído, você vai ver o resumo da primeira iteração de treinamento. Ele inclui as estimativas de precisão e de recall do desempenho do modelo.

  • A precisão indica a fração de classificações identificadas que estão corretas. Em nosso modelo, a precisão é de 98,2%, portanto, se o modelo classificar uma imagem, é muito provável que a previsão esteja correta.
  • A recuperação indica a fração de classificações reais que foram corretamente identificadas. Em nosso modelo, o recall é de 97,5%, portanto, o modelo classifica corretamente a grande maioria das imagens apresentadas a ele.
  • AP significa desempenho adicional. Ele fornece uma métrica adicional que resume a precisão e o recall em limites diferentes.

Model training evaluation

Testar o modelo

Antes de exportar o modelo, você pode testar o seu desempenho.

  1. Selecione Quick Test no canto superior direito da barra de menus superior para abrir uma janela de teste.

Test button

Nessa janela, você pode fornecer a URL da imagem a ser testada ou selecionar Browse local files para usar uma imagem armazenada localmente.

Select image for testing

  1. Escolha Browse local files, navegue até o conjunto de dados de alimentos e abra uma pasta de validação. Escolha qualquer imagem aleatória da pasta fruit-vegetable e pressione open.

O resultado do teste vai aparecer na tela. Em nosso teste, o modo classificou com sucesso a imagem com 99,8% de certeza.

Test classification results

Você pode usar a previsão para treinamento na guia Predictions, que pode aprimorar o desempenho do modelo. Para obter mais informações, confira Como aprimorar o classificador.

Observação

Quer aprender mais sobre as APIs de Visão Personalizada do Azure? A Documentação do Serviço de Visão Personalizada tem mais informações sobre o portal da Web e o SDK da Visão Personalizada.

Exportar o modelo em ONNX

Agora que treinamos o modelo, exporte-o para ONNX.

  1. Selecione a guia Performance e escolha Export para abrir a janela de exportação.

Export button

  1. Selecione ONNX para exportar seu modelo no formato ONNX.

Choose your format

  1. Se for necessário, você pode escolher a opção float ONNX 16, mas neste tutorial não precisamos alterar nenhuma configuração. Selecione Export and Download.

Choose your platform

  1. Abra o arquivo zip baixado e extraia o arquivo model.onnx. Esse arquivo contém o modelo de classificador.

Parabéns! Você criou e exportou o modelo de classificação com sucesso.

Próximas etapas

Agora que temos um modelo de classificação, a próxima etapa é criar um aplicativo do Windows e executá-lo localmente em seu dispositivo Windows.