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.
- Navegue até a página principal da sua conta do Azure e selecione
Create a resource
.
- Na caixa de pesquisa, procure por
Custom Vision
e insira o Azure Marketplace. SelecioneCreate Custom Vision
para abrir a janela de diálogo na página Criar Visão Personalizada.
- Na página da caixa de diálogo da Visão Personalizada, escolha o seguinte:
- Selecione os recursos
Training
ePrediction
. - 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
ePrediction
, defina o local como (US) Leste dos EUA e o tipo de preço como Free FO.
- Pressione
Review + create
para implantar os recursos da Visão Personalizada. A implantação dos recursos pode levar alguns minutos.
Criar um projeto na Visão Personalizada
Agora que você criou o recurso, crie o projeto de treinamento na Visão Personalizada.
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.Selecione
New Project
para abrir uma caixa de diálogo de novo projeto.
- Crie um projeto conforme o descrito abaixo:
Name
: FoodClassification.Description
: classificação de diferentes tipos de alimentos.Resource
: mantenha o recursoClassificationApp [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.
- Depois de preencher a caixa de diálogo, selecione
Create 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.
Selecione o seu projeto
FoodClassification
para abrir a interface baseada na Web do site da Visão Personalizada.Selecione o botão
Add images
e escolhaBrowse local files
.
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 selecioneopen
. A opção de marcação será aberta.Insira
vegetable-fruit
no campoMy Tags
e pressioneUpload
.
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.
- 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.
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.
- 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.
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%.
- 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. PressioneTrain
para iniciar o processo de treinamento.
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
.
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.
Testar o modelo
Antes de exportar o modelo, você pode testar o seu desempenho.
- Selecione
Quick Test
no canto superior direito da barra de menus superior para abrir uma janela de teste.
Nessa janela, você pode fornecer a URL da imagem a ser testada ou selecionar Browse local files
para usar uma imagem armazenada localmente.
- 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 pastafruit-vegetable
e pressioneopen
.
O resultado do teste vai aparecer na tela. Em nosso teste, o modo classificou com sucesso a imagem com 99,8% de certeza.
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.
- Selecione a guia
Performance
e escolhaExport
para abrir a janela de exportação.
- Selecione
ONNX
para exportar seu modelo no formato ONNX.
- Se for necessário, você pode escolher a opção float
ONNX 16
, mas neste tutorial não precisamos alterar nenhuma configuração. SelecioneExport and Download
.
- 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.