Este blog irá discutir como o “ Apagamento aleatório ”O método funciona no PyTorch.
Por que o método “Random Erasing” é usado no PyTorch?
A remoção aleatória de dados das imagens representa um problema para o treinamento de modelos de análise de imagens porque eles são forçados a se adaptar a dados insuficientes. Isto prepara um modelo para tarefas do mundo real onde os dados completos nem sempre estão presentes. O modelo torna-se muito melhor ao ser capaz de fazer inferências a partir de todos os tipos de dados e conseguir exibir resultados. A seleção de pixels para remoção é aleatória, portanto não há introdução de viés e a imagem resultante é usada como dados de entrada durante o treinamento.
Como funciona o método de “apagamento aleatório” no PyTorch?
O método Random Erasing é usado para tornar um modelo de aprendizado profundo mais bem equipado para lidar com aplicações reais. Siga as etapas abaixo para aprender como usá-lo em seus projetos PyTorch para aumentar o gerenciamento de dados e melhorar os recursos de inferência:
Etapa 1: configurar o IDE colaborativo
O Google Colab é a escolha ideal para o desenvolvimento de modelos de IA usando a estrutura PyTorch. Navegue até o Colaborador local na rede Internet e lançar um “ Novo caderno ”:
Etapa 2: importe as bibliotecas necessárias
Use o ' !pip ”Instalador de pacote fornecido pelo Python para instalar bibliotecas e usar o“ importar ”Comando para importá-los para o projeto:
importar tochaimportar visão da tocha. transforma como ts
de PIL importar Imagem
importar matplotlib. pyplot como plt
A descrição do código fornecido é a seguinte:
- Importe o “ tocha ”biblioteca usando o“ importar ” comando.
- O ' torchvision.transformações ”O pacote contém as transformações para Apagamento Aleatório.
- “ PIL ”é a biblioteca de imagens python e contém a funcionalidade para processamento de imagens.
- O ' matplotlib.pyplot ”A biblioteca é usada para visualizar as imagens originais e transformadas:
Etapa 3: faça upload da imagem de entrada
Faça upload da imagem na seção Arquivos:
Em seguida, carregue a imagem de entrada usando o “ abrir() ”Método do módulo “Imagem”:
imagem = Imagem. abrir ( 'a2.jpeg' )Etapa 4: Especifique a transformação para realizar transformações
Agora, defina um “ Apagamento aleatório ”Transformador que transformará a imagem selecionando sua região retangular aleatória e apagando seus pixels. Além disso, converta a imagem de entrada para o sensor da tocha usando o “ ToTensor() ”Se for uma imagem PIL e, em seguida, converta-a de volta para a imagem PIL por meio do“ ToPILImage() ”:
transformar = ts. Compor ( [ ts. ToTensor ( ) , ts. Apagamento aleatório ( p = 0,5 , escala = ( 0,02 , 0,33 ) , razão = ( 0,3 , 3.3 ) , valor = 0 , no lugar = Falso ) , ts. ToPILImage ( ) ] )Os parâmetros usados acima “ Apagamento aleatório ”Transformador são explicados abaixo:
- p: Representa a probabilidade de que a operação de aumento aleatório seja alcançada.
- escala: Indica o intervalo da área apagada de uma imagem de entrada.
- razão: Denota a proporção da região apagada.
- valor: Especifica o valor de apagamento que é “0” por padrão. Se for um único número inteiro, removerá todos os pixels, e se for uma tupla com três números inteiros, removerá os canais R, G e B, respectivamente.
- no lugar: É um valor “booleano” que torna o transformador de apagamento aleatório fornecido no lugar. Por padrão, é “falso”.
Etapa 5: use a compreensão do dicionário para obter imagens de saída
Use o conceito de compreensão de dicionário para obter as quatro imagens de saída:
imagens = [ transformar ( imagem ) para _ em faixa ( 4 ) ]Etapa 6: apresente as quatro imagens de saída
Por último, exiba as quatro imagens de saída com a ajuda do bloco de código indicado abaixo:
Figo = plt. figura ( tamanho do figo = ( 7 , 4 ) )linhas , colunas = 2 , 2
para j em faixa ( 0 , apenas ( imagens ) ) :
Figo. add_subplot ( linhas , colunas , j+ 1 )
plt. mostrar ( imagens [ j ] )
plt. xtiques ( [ ] )
plt. caramba ( [ ] )
plt. mostrar ( )
A descrição do código acima é a seguinte:
- Aplicar o ' plt.figura() ”Método para plotar as quatro imagens de largura e altura especificadas.
- Em seguida, especifique linhas e colunas específicas para ajustar as quatro imagens.
- Depois disso, inicialize um loop “for” que aplica o “ subtrama() ”para definir a subtrama, o método “show()” para mostrar as imagens e o método “ plt.xticks() ' assim como ' plt.yticks() ”Para definir a localização atual do tick e os rótulos dos eixos x e y.
- Por último, use o “ plt.show() ”Método para imprimir as imagens para saída:
Observação : Os usuários podem acessar nosso Colab Notebook usando o fornecido link .
Dica profissional
Um uso importante do “ Apagamento aleatório ”O método em projetos PyTorch é a segurança. Ele pode ser usado para remover pixels de imagens confidenciais, como aquelas que contêm alguns segredos comerciais ou qualquer outra coisa de valor. A função aleatória específica para esse apagamento seria conhecida apenas pelo usuário original e somente o usuário seria capaz de restaurar as imagens apagadas de volta à sua versão original.
Sucesso! Mostramos como funciona o método de apagamento aleatório no PyTorch.
Conclusão
O ' Apagamento aleatório ”O método no PyTorch funciona removendo pixels aleatórios de uma imagem e imitando um cenário do mundo real para treinar melhor o modelo. Isto tornará o modelo mais apto a lidar com diferentes tipos de dados para tirar inferências de qualidade a partir de dados incompletos. Ilustramos como usar o “ Apagamento aleatório ”Método no PyTorch.