arrow_back

Como classificar imagens de nuvens no Cloud com o AutoML Images

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Como classificar imagens de nuvens no Cloud com o AutoML Images

Lab 1 hora universal_currency_alt 5 créditos show_chart Intermediário
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP223

Laboratórios autoguiados do Google Cloud

Visão geral

O AutoML ajuda desenvolvedores com pouca experiência em ML a treinar modelos de alta qualidade para reconhecimento de imagens. Depois de fazer upload de imagens para a interface do AutoML, você pode gerar previsões a partir de um modelo pré-treinado com uma API REST fácil de usar.

Neste laboratório, você vai aprender a fazer upload de imagens no Cloud Storage e a usá-las para treinar um modelo personalizado que reconheça diferentes tipos de nuvens: cumulus, cumulonimbus etc.

Conteúdo

Veja abaixo as atividades que você vai fazer neste laboratório:

  • Fazer upload de um conjunto de dados rotulado no Cloud Storage e conectá-lo ao AutoML com um arquivo CSV de rótulos.
  • Gerar previsões a partir de um modelo pré-treinado

Configuração e requisitos

Antes de clicar no botão Start Lab

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.

Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.

Confira os requisitos para concluir o laboratório:

  • Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Observação: não use seu projeto ou conta do Google Cloud neste laboratório para evitar cobranças extras na sua conta.

Como iniciar seu laboratório e fazer login no console do Google Cloud

  1. Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você verá o seguinte:

    • O botão Abrir Console do Cloud
    • Tempo restante
    • As credenciais temporárias que você vai usar neste laboratório
    • Outras informações se forem necessárias
  2. Clique em Abrir Console do Google. O laboratório ativa recursos e depois abre outra guia com a página Fazer login.

    Dica: coloque as guias em janelas separadas lado a lado.

    Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
  3. Caso seja preciso, copie o Nome de usuário no painel Detalhes do laboratório e cole esse nome na caixa de diálogo Fazer login. Clique em Avançar.

  4. Copie a Senha no painel Detalhes do laboratório e a cole na caixa de diálogo Olá. Clique em Avançar.

    Importante: você precisa usar as credenciais do painel à esquerda. Não use suas credenciais do Google Cloud Ensina. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
  5. Acesse as próximas páginas:

    • Aceite os Termos e Condições.
    • Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
    • Não se inscreva em testes gratuitos.

Depois de alguns instantes, o console do GCP vai ser aberto nesta guia.

Observação: para ver uma lista dos produtos e serviços do Google Cloud, clique no Menu de navegação no canto superior esquerdo. Ícone do menu de navegação

Ativar o Cloud Shell

O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.

  1. Clique em Ativar o Cloud Shell Ícone "Ativar o Cloud Shell" na parte de cima do console do Google Cloud.

Depois de se conectar, vai notar que sua conta já está autenticada, e que o projeto está configurado com seu PROJECT_ID. A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.

  1. (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
  1. Clique em Autorizar.

  2. A saída será parecida com esta:

Saída:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project

Saída:

[core] project = <project_ID>

Exemplo de saída:

[core] project = qwiklabs-gcp-44776a13dea667a6 Observação: para conferir a documentação completa da gcloud, acesse o guia com informações gerais sobre a gcloud CLI no Google Cloud.

Tarefa 1: configure o AutoML

O AutoML oferece uma interface para todas as etapas do treinamento de um modelo de classificação de imagens e da geração de previsões nesse modelo. Para começar, ative a API Cloud AutoML.

  1. No menu de navegação, selecione APIs e serviços > Biblioteca.

  2. Na barra de pesquisa, digite "Cloud AutoML".

  3. Observe que a API Cloud AutoML mostra a mensagem API ativada.

  4. Em um novo navegador, abra a interface do AutoML.

Crie um bucket de armazenamento

  1. Execute o comando a seguir para criar um bucket de armazenamento:
gsutil mb -p $GOOGLE_CLOUD_PROJECT \ -c standard \ -l us \ gs://$GOOGLE_CLOUD_PROJECT-vcm/
  1. No console do Google Cloud, abra o menu de navegação e clique em Cloud Storage para abri-lo.

Clique em Verificar meu progresso para conferir o objetivo.

Crie um bucket do Cloud Storage

Tarefa 2: faça o upload das imagens de treinamento para o Cloud Storage

Para treinar um modelo que classifique imagens de nuvens, você precisa enviar dados de treinamento rotulados. Assim, o modelo pode entender melhor as características da imagem associadas aos diferentes tipos de nuvens. Neste exemplo, o modelo aprenderá a identificar três tipos de nuvens: cirrus, cumulus e cumulonimbus. Para usar o AutoML, você precisa colocar as imagens de treinamento no Cloud Storage.

  1. Antes de adicionar imagens de nuvens, crie uma variável de ambiente com o nome do bucket.

Execute o comando a seguir no Cloud Shell:

export BUCKET=$GOOGLE_CLOUD_PROJECT-vcm

As imagens de treinamento ficam disponíveis publicamente em um bucket do Cloud Storage.

  1. Use o utilitário de linha de comando do Cloud Storage gsutil para copiar as imagens de treinamento no bucket:
gsutil -m cp -r gs://spls/gsp223/images/* gs://${BUCKET}
  1. Quando a cópia das imagens estiver concluída, clique no botão Atualizar na parte superior do navegador do Cloud Storage e clique no nome do bucket. Você verá três pastas de fotos para cada um dos tipos de nuvens que serão classificadas.

Ao clicar nos arquivos de imagem em cada pasta, você verá as fotos que serão usadas no treinamento do modelo para cada tipo de nuvem.

Tarefa 3: crie um conjunto de dados

Agora que os dados de treinamento estão no Cloud Storage, o AutoML precisa ter acesso a eles. Crie um arquivo CSV em que cada linha contém um URL para uma imagem de treinamento e o rótulo associado à imagem. Esse arquivo CSV já foi criado, você só precisa atualizá-lo com o nome do seu bucket.

  1. Execute este comando para copiar o arquivo na sua instância do Cloud Shell:
gsutil cp gs://spls/gsp223/data.csv .
  1. Atualize o CSV com os arquivos que estão no projeto:
sed -i -e "s/placeholder/${BUCKET}/g" ./data.csv
  1. Agora faça upload desse arquivo no bucket do Cloud Storage:
gsutil cp ./data.csv gs://${BUCKET}
  1. Quando o comando terminar, clique no botão Atualizar na parte superior do navegador do Storage. Verifique se o arquivo data.csv está no bucket.

  2. Abra a guia Conjunto de dados da Vertex AI. A página vai ser parecida com esta:

Console do Google Cloud, página &quot;Conjuntos de dados&quot;

  1. Clique em + Criar na parte de cima do console.

  2. Digite "clouds" para o nome do conjunto de dados.

  3. Selecione Classificação de imagens (rótulo único).

Observação: nos seus projetos, use a classificação multiclasse.
  1. Clique em Criar.

  2. Escolha a opção Selecionar arquivos de importação do Cloud Storage e adicione o nome do arquivo ao URL que você acabou de enviar: nome-do-bucket/data.csv

Para conseguir esse link facilmente, volte ao console do Cloud, clique no arquivo data.csv e vá até o campo "URI".

  1. Clique em Continuar.

Poderá levar de 2 a 5 minutos para que as imagens sejam importadas. Quando a importação for concluída, será aberta uma página com todas as imagens do conjunto de dados.

Clique em Verificar meu progresso para conferir o objetivo.

Crie um conjunto de dados

Tarefa 4: inspecione as imagens

Quando a importação terminar, a guia Procurar será aberta, exibindo as imagens transferidas.

Blocos de imagens na página de imagens com guias

Filtre pelos rótulos no menu à esquerda. Por exemplo, clique em "cumulus" para analisar as imagens de treinamento.

Observação: se quiser criar um modelo de produção, serão necessárias pelo menos cem imagens por rótulo para garantir alta acurácia. Esta é apenas uma demonstração, então usamos somente 20 imagens para que o treinamento do modelo seja rápido.

Caso alguma imagem tenha sido rotulada incorretamente, clique nela para alterar o rótulo:

Imagem 12 de 50

Observação: para trabalhar com um conjunto de dados ainda não rotulado, o AutoML conta com um serviço manual interno de rotulagem.

Tarefa 5: gere previsões

As previsões podem ser geradas de várias maneiras. Neste laboratório, você vai usar a interface para fazer upload de imagens e entender como seu modelo classifica essas duas imagens (a primeira é uma nuvem cirrus, e a segunda é uma nuvem cumulonimbus).

  1. Volte ao terminal do Cloud Shell.

  2. Faça o download das imagens para o computador.

gsutil cp gs://spls/gsp223/examples/* .
  1. Confira o arquivo de exemplo CLOUD1-JSON:
cat CLOUD1-JSON

Exemplo de resposta:

{ "instances": [{ "content": "YOUR_IMAGE_BYTES" }], "parameters": { "confidenceThreshold": 0.5, "maxPredictions": 5 } }
  1. Copie o valor de "Endpoint" em uma variável de ambiente.
ENDPOINT=$(gcloud run services describe automl-service --platform managed --region {{{project_0.default_region | REGION}}} --format 'value(status.url)')
  1. Digite este comando para solicitar uma previsão:
curl -X POST -H "Content-Type: application/json" $ENDPOINT/v1 -d "@${INPUT_DATA_FILE}" | jq A chamada acima solicita uma previsão ao AutoML. Mas os dados de entrada não foram especificados, então a solicitação vai falhar. O código de erro HTTP 400 indica que os dados esperados não estão presentes.

Saída esperada:

{ "error": { "code": 400, "message": "Empty instances.", "status": "INVALID_ARGUMENT" } }

Tarefa 6: teste rápido

Responda a este pequeno teste sobre os tópicos do laboratório para avaliar sua compreensão do AutoML. Use o que você aprendeu no laboratório para gerar previsões.

imagem de nuvem 1

Verifique se o modelo consegue prever o tipo de nuvem na imagem:

  1. Defina CLOUD1-JSON como o arquivo de entrada.
INPUT_DATA_FILE=CLOUD1-JSON
  1. Digite este comando para solicitar uma previsão:
curl -X POST -H "Content-Type: application/json" $ENDPOINT/v1 -d "@${INPUT_DATA_FILE}" | jq

imagem de nuvem 2

Verifique se o modelo consegue prever o tipo de nuvem na imagem:

  1. Defina CLOUD2-JSON como o arquivo de entrada.
INPUT_DATA_FILE=CLOUD2-JSON
  1. Digite este comando para solicitar uma previsão:
curl -X POST -H "Content-Type: application/json" $ENDPOINT/v1 -d "@${INPUT_DATA_FILE}" | jq

Parabéns!

Você aprendeu a treinar seu próprio modelo de machine learning personalizado e a gerar previsões nele por meio da interface do usuário da Web. Agora você tem tudo que precisa para treinar um modelo com seu próprio conjunto de dados de imagens.

Você:

  • Fez o upload das imagens de treinamento no Cloud Storage e criou um CSV para o AutoML encontrá-las.
  • Gerou previsões sobre novas imagens de nuvens.

Termine a Quest

Este laboratório autoguiado faz parte das Quests Machine Learning APIs e Intro to ML: Image Processing. Uma Quest é uma série de laboratórios relacionados que formam um programa de aprendizado. Ao concluir uma Quest, você ganha um selo como reconhecimento da sua conquista. É possível publicar os selos e incluir um link para eles no seu currículo on-line ou nas redes sociais. Inscreva-se nesta Quest ou em outra que tenha este laboratório para receber os créditos de conclusão imediatamente. Consulte o catálogo do Google Cloud Ensina para ver todas as Quests disponíveis.

Comece o próximo laboratório

Continue sua Quest com o laboratório Detectar rótulos, rostos e pontos de referência em imagens com a API Cloud Vision ou confira estas sugestões:

Próximas etapas / Saiba mais

Treinamento e certificação do Google Cloud

Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.

Manual atualizado em 20 de outubro de 2023

Laboratório testado em 20 de outubro de 2023

Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.