Treinamento de modelos de solução de - Amazon Lookout for Vision

Aviso de fim do suporte: em 31 de outubro de 2025, o suporte para o Amazon Lookout for Vision AWS será interrompido. Depois de 31 de outubro de 2025, você não poderá mais acessar o console do Lookout for Vision ou os recursos do Lookout for Vision. Para obter mais informações, visite esta postagem do blog.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Treinamento de modelos de solução de

Problemas com seu arquivo de manifesto ou imagens de treinamento podem fazer com que o treinamento do modelo falhe. Antes de treinar novamente seu modelo, verifique os seguintes possíveis problemas.

As cores dos rótulos de anomalias não correspondem à cor das anomalias na imagem da máscara

Se você estiver treinando um modelo de segmentação de imagem, a cor do rótulo de anomalia no arquivo de manifesto deve corresponder à cor que está na imagem da máscara. A JSON linha de uma imagem no arquivo de manifesto tem metadados (internal-color-map) que informam ao Amazon Lookout for Vision qual cor corresponde a um rótulo de anomalia. Por exemplo, a cor do rótulo de scratch anomalia na JSON linha a seguir é#2ca02c.

{ "source-ref": "s3://path-to-image", "anomaly-label": 1, "anomaly-label-metadata": { "class-name": "anomaly", "creation-date": "2021-10-12T14:16:45.668", "human-annotated": "yes", "job-name": "labeling-job/classification-job", "type": "groundtruth/image-classification", "confidence": 1 }, "anomaly-mask-ref": "s3://path-to-image", "anomaly-mask-ref-metadata": { "internal-color-map": { "0": { "class-name": "BACKGROUND", "hex-color": "#ffffff", "confidence": 0.0 }, "1": { "class-name": "scratch", "hex-color": "#2ca02c", "confidence": 0.0 }, "2": { "class-name": "dent", "hex-color": "#1f77b4", "confidence": 0.0 } }, "type": "groundtruth/semantic-segmentation", "human-annotated": "yes", "creation-date": "2021-11-23T20:31:57.758889", "job-name": "labeling-job/segmentation-job" } }

Se as cores na imagem da máscara não corresponderem aos valores em hex-color, o treinamento falhará e você precisará atualizar o arquivo de manifesto.

Para atualizar os valores de cor em um arquivo de manifesto
  1. Usando um editor de texto, abra o arquivo de manifesto que você usou para criar o conjunto de dados.

  2. Para cada JSON linha (imagem), verifique se as cores (hex-color) dentro do internal-color-map campo correspondem às cores dos rótulos de anomalia na imagem da máscara.

    Você pode obter a localização da imagem da máscara anomaly-mask-ref no campo. Baixe a imagem para o seu computador e use o código a seguir para obter as cores em uma imagem.

    from PIL import Image img = Image.open('path to local copy of mask file') colors = img.convert('RGB').getcolors() #this converts the mode to RGB for color in colors: print('#%02x%02x%02x' % color[1])
  3. Para cada imagem com uma atribuição de cor incorreta, atualize o hex-color campo na JSON linha da imagem.

  4. Salve o arquivo manifesto.

  5. Exclua o conjunto de dados existente do projeto.

  6. Crie um novo conjunto de dados no projeto com o arquivo de manifesto atualizado.

  7. Treine o modelo.

Como alternativa, nas etapas 5 e 6, você pode atualizar imagens individuais no conjunto de dados chamando a UpdateDatasetEntriesoperação e fornecendo JSON linhas atualizadas para as imagens que você deseja atualizar. Para ver um código demonstrativo, consulte Adicionar mais imagens (SDK).

As imagens da máscara não estão no PNG formato

Se você estiver treinando um modelo de segmentação de imagens, as imagens da máscara devem estar no PNG formato. Se você criar um conjunto de dados a partir de um arquivo de manifesto, certifique-se de que as imagens de máscara às quais você faz referência anomaly-mask-ref estejam no PNG formato. Se as imagens da máscara não estiverem em PNG formato, você precisará convertê-las em PNG formato. Não é suficiente renomear a extensão de um arquivo de imagem para.png.

As imagens de máscara que você cria no console Amazon Lookout for Vision ou com SageMaker uma tarefa do Ground Truth são criadas PNG em formato. Você não precisa alterar o formato dessas imagens.

Para corrigir imagens de máscara não PNG formatadas em um arquivo de manifesto
  1. Usando um editor de texto, abra o arquivo de manifesto que você usou para criar o conjunto de dados.

  2. Para cada JSON linha (imagem), certifique-se de que a imagem faça anomaly-mask-ref referência a uma imagem de PNG formato. Para obter mais informações, consulte Criar um arquivo de manifesto.

  3. Baixe o arquivo manifesto.

  4. Exclua o conjunto de dados existente do projeto.

  5. Crie um novo conjunto de dados no projeto com o arquivo de manifesto atualizado.

  6. Treine o modelo.

Os rótulos de segmentação ou classificação são imprecisos ou ausentes

Rótulos ausentes ou imprecisos podem fazer com que o treinamento falhe ou crie um modelo com baixo desempenho. Recomendamos que você rotule todas as imagens em seu conjunto de dados. Se você não rotular todas as imagens e o treinamento do modelo falhar ou se seu modelo tiver um desempenho ruim, adicione mais imagens.

Verifique o seguinte:

  • Se você estiver criando um modelo de segmentação, as máscaras devem cobrir rigorosamente as anomalias nas imagens do seu conjunto de dados. Para verificar as máscaras em seu conjunto de dados, visualize as imagens na galeria de conjuntos de dados do projeto. Se necessário, redesenhe as máscaras de imagem. Para obter mais informações, consulte Segmentação de imagens (console).

  • Certifique-se de que as imagens anômalas nas imagens do seu conjunto de dados sejam classificadas. Se você estiver criando um modelo de segmentação de imagens, certifique-se de que imagens anômalas tenham rótulos de anomalia e máscaras de imagem.

    É importante lembrar qual tipo de modelo (segmentação ou classificação) você está criando. Um modelo de classificação não exige máscaras de imagem em imagens anômalas. Não adicione máscaras às imagens do conjunto de dados destinadas a um modelo de classificação.

    Para atualizar os rótulos ausentes
    1. Abra a galeria de conjuntos de dados do projeto.

    2. Filtre imagens sem rótulos para ver quais imagens não têm rótulos.

    3. Execute um destes procedimentos:

      • Se você estiver criando um modelo de classificação de imagens, classifique cada imagem sem rótulo.

      • Se você estiver criando um modelo de segmentação de imagem, classifique e segmente cada imagem sem rótulo.

    4. Se você estiver criando um modelo de segmentação de imagem, adicione máscaras a qualquer imagem anômala classificada que não tenha máscaras.

    5. Treine o modelo.

Se você optar por não corrigir rótulos incorretos ou ausentes, recomendamos adicionar mais imagens rotuladas ou remover as imagens afetadas do conjunto de dados. Você pode adicionar mais do console ou usando a UpdateDatasetEntriesoperação. Para obter mais informações, consulte Adicionar imagens ao seu conjunto de dados.

Se você optar por remover as imagens, deverá recriar o conjunto de dados sem as imagens afetadas, pois não é possível excluir uma imagem de um conjunto de dados. Para obter mais informações, consulte Removendo imagens do seu conjunto de dados.