Glossário de machine learning: modelos de imagem

Nesta página, você encontra os termos do glossário de modelos de imagem. Para ver todos os termos do glossário, clique aqui.

A

realidade aumentada

#image

Uma tecnologia que se sobrepõe a uma imagem gerada por computador na visão de um usuário do mundo real, fornecendo, assim, uma visão composta.

codificador automático

#language
#image

Um sistema que aprende a extrair as informações mais importantes da entrada. Codificadores automáticos são uma combinação de codificador e decodificador. Os codificadores automáticos dependem do processo de duas etapas a seguir:

  1. O codificador mapeia a entrada para um formato de baixa dimensão (intermediário) com perdas.
  2. O decodificador cria uma versão com perda da entrada original, mapeando o formato de baixa dimensão para o original de maior dimensão.

Os codificadores automáticos são treinados de ponta a ponta, fazendo com que o decodificador tente reconstruir a entrada original do formato intermediário do codificador da melhor maneira possível. Como o formato intermediário é menor (de menor dimensão) que o formato original, o codificador automático é forçado a aprender quais informações na entrada são essenciais, e a saída não será perfeitamente idêntica à entrada.

Exemplo:

  • Se os dados de entrada forem um gráfico, a cópia não exata será semelhante ao gráfico original, mas um pouco modificada. Talvez a cópia não exata remova o ruído do gráfico original ou preencha alguns pixels ausentes.
  • Se os dados de entrada forem texto, um codificador automático vai gerar um novo texto que imite o texto original, mas não seja idêntico ao original.

Consulte também codificadores automáticos variáveis.

modelo autoregressivo

#language
#image
IA generativa

Um model que infere uma previsão com base nas próprias previsões anteriores. Por exemplo, os modelos de linguagem autorregressivos preveem o próximo token com base nos tokens previstos anteriormente. Todos os modelos de linguagem grandes baseados em Transformer são autorregressivos.

Por outro lado, os modelos de imagem baseados em GAN geralmente não são autorregressivos, porque geram uma imagem em uma única passagem direta e não de maneira iterativa em etapas. No entanto, alguns modelos de geração de imagens são autorregressivos porque geram uma imagem em etapas.

B

caixa delimitadora

#image

Em uma imagem, as coordenadas (x, y) de um retângulo em torno de uma área de interesse, como o cachorro na imagem abaixo.

Fotografia de um cachorro sentado em um sofá. Uma caixa delimitadora verde
          com coordenadas superior esquerda de (275, 1271) e coordenadas inferior
          direita de (2954, 2761) circunscreve o corpo do cachorro

C

convolução

#image

Na matemática, falando casualmente, uma mistura de duas funções. Em machine learning, uma convolução combina o filtro convolucional e a matriz de entrada para treinar pesos.

O termo "convolução" no machine learning é geralmente uma forma abreviada de se referir a operação convolucional ou à camada convolucional.

Sem as convoluções, um algoritmo de machine learning teria que aprender um peso separado para cada célula em um tensor grande. Por exemplo, um algoritmo de aprendizado de máquina que treina em imagens 2K x 2K seria forçado a encontrar 4 milhões de pesos separados. Graças às convoluções, um algoritmo de machine learning só precisa encontrar pesos para cada célula no filtro convolucional, o que reduz drasticamente a memória necessária para treinar o modelo. Quando o filtro convolucional é aplicado, ele é simplesmente replicado nas células de modo que cada uma seja multiplicada pelo filtro.

filtro convolucional

#image

Um dos dois atores em uma operação convolucional. O outro ator é uma fração de uma matriz de entrada. Um filtro convolucional é uma matriz que tem a mesma classificação da matriz de entrada, mas com um formato menor. Por exemplo, considerando uma matriz de entrada de 28 x 28, o filtro pode ser qualquer matriz 2D menor que 28 x 28.

Na manipulação fotográfica, todas as células em um filtro convolucional costumam ser definidas com um padrão constante de 1 e 0. No machine learning, os filtros convolucionais são normalmente propagados com números aleatórios e, em seguida, a rede treina os valores ideais.

camada convolucional

#image

Uma camada de uma rede neural profunda na qual um filtro convolucional passa ao longo de uma matriz de entrada. Por exemplo, pense no seguinte filtro convolucional de 3x3:

Uma matriz 3x3 com estes valores: [[0,1,0], [1,0,1], [0,1,0]]

A animação a seguir mostra uma camada convolucional que consiste em 9 operações convolucionais envolvendo a matriz de entrada 5x5. Cada operação convolucional funciona em uma fração 3x3 diferente da matriz de entrada. A matriz 3x3 resultante (à direita) consiste nos resultados das nove operações convolucionais:

Uma animação mostrando duas matrizes. A primeira é a de 5x5: [[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179], [31,74], [31,7].
          A segunda matriz é a 3x3: [[181.303.618], [115.338.605], [169.351.560]].
          A segunda matriz é calculada aplicando o filtro convolucional [[0, 1, 0], [1, 0, 1], [0, 1, 0]] em diferentes subconjuntos 3x3 da matriz 5x5.

rede neural convolucional

#image

Uma rede neural em que pelo menos uma camada é uma camada convolucional. Uma rede neural convolucional típica consiste em uma combinação das seguintes camadas:

As redes neurais convolucionais tiveram grande sucesso em certos tipos de problemas, como o reconhecimento de imagens.

operação convolucional

#image

Esta operação matemática de duas etapas:

  1. Multiplicação por elemento do filtro convolucional e uma fatia de uma matriz de entrada. A fatia da matriz de entrada tem a mesma classificação e tamanho que o filtro convolucional.
  2. Soma de todos os valores na matriz de produtos resultante.

Por exemplo, considere a seguinte matriz de entrada de 5x5:

A matriz 5x5: [[128,97,53,201,198], [35,22,25,200,195],
          [37,24,28,197,182], [33,28,92,195,179], [31,40,100,100]

Agora imagine o seguinte filtro convolucional 2x2:

A matriz 2x2: [[1, 0], [0, 1]]

Cada operação convolucional envolve uma única fatia 2 x 2 da matriz de entrada. Por exemplo, suponha que usemos a fatia 2x2 no canto superior esquerdo da matriz de entrada. Portanto, a operação de convolução nessa fatia tem a seguinte aparência:

Aplicando o filtro convolucional [[1, 0], [0, 1]] à seção 2x2 superior esquerda da matriz de entrada, que é [[128,97], [35,22]].
          O filtro convolucional deixa o 128 e o 22 intactos, mas zera os 97 e 35. Consequentemente, a operação de convolução gera o valor 150 (128+22).

Uma camada convolucional consiste em uma série de operações convolucionais, cada uma agindo em uma fração diferente da matriz de entrada.

D

aumento de dados

#image

Aumento artificial do intervalo e do número de exemplos de treinamento transformando os exemplos atuais para criar outros exemplos. Por exemplo, suponha que imagens sejam um dos seus recursos, mas seu conjunto de dados não contém exemplos de imagens suficientes para que o modelo aprenda associações úteis. O ideal é adicionar imagens rotuladas suficientes ao conjunto de dados para que o modelo seja treinado corretamente. Se isso não for possível, a ampliação de dados pode girar, esticar e refletir cada imagem para produzir muitas variantes do imagem original, possivelmente produzindo dados rotulados suficientes para permitir um excelente treinamento.

rede neural convolucional separável em profundidade (sepCNN)

#image

Uma arquitetura de rede neural convolucional baseada no Inception, mas em que os módulos do Inception são substituídos por convoluções separáveis em profundidade. Também conhecido como Xception.

Uma convolução separável em profundidade (também abreviada como separável) determina uma convolução 3D padrão em duas operações de convolução diferentes que são mais eficientes em termos computacionais: a primeira, uma convolução em profundidade, com profundidade de 1 (n x n ∕ 1), e a segunda, uma convolução pontual, com comprimento e largura de 1 (1 × 1).

Para saber mais, consulte Xception: aprendizado profundo com convoluções separadas de profundidade.

redução de amostragem

#image

Termo sobrecarregado que pode significar um dos seguintes casos:

  • Reduzir a quantidade de informações em um recurso para treinar um modelo com mais eficiência. Por exemplo, antes de treinar um modelo de reconhecimento de imagem, reduza a amostragem de imagens de alta resolução para um formato de resolução mais baixa.
  • treinar em uma porcentagem desproporcionalmente baixa de exemplos de classe sobre-representados para melhorar o treinamento de modelos em classes sub-representadas. Por exemplo, em um conjunto de dados desequilibrado de classes, os modelos tendem a aprender muito sobre a classe principal e não o suficiente sobre a classe secundária. O downsampling ajuda a equilibrar a quantidade de treinamento nas classes majoritárias e minoritárias.

F)

ajuste

#language
#image
IA generativa

Um segundo passe de treinamento específico para a tarefa realizado em um modelo pré-treinado para refinar os parâmetros dele para um caso de uso específico. Por exemplo, a sequência de treinamento completa para alguns modelos de linguagem grandes é a seguinte:

  1. Pré-treinamento:treine um modelo de linguagem grande em um conjunto de dados geral vasto, como todas as páginas da Wikipédia em inglês.
  2. Ajuste:treine o modelo pré-treinado para executar uma tarefa específica, como responder a consultas médicas. Normalmente, o ajuste envolve centenas ou milhares de exemplos focados na tarefa específica.

Como outro exemplo, a sequência de treinamento completa para um modelo de imagem grande é a seguinte:

  1. Pré-treinamento:treine um modelo de imagem grande em um conjunto de dados geral vasto, como todas as imagens no Wikimedia commons.
  2. Ajuste:treine o modelo pré-treinado para executar uma tarefa específica, como gerar imagens de orcas.

O ajuste pode envolver qualquer combinação das seguintes estratégias:

  • Modificar todos os parâmetros existentes do modelo pré-treinado. Às vezes, isso é chamado de ajuste completo.
  • Modificar apenas alguns dos parâmetros atuais do modelo pré-treinado (geralmente as camadas mais próximas da camada de saída), mantendo outros parâmetros inalterados (normalmente, as camadas mais próximas à camada de entrada). Consulte ajuste da eficiência de parâmetros.
  • Adição de mais camadas, normalmente sobre as camadas existentes mais próximas da camada de saída.

O ajuste é uma forma de aprendizado por transferência. Assim, o ajuste pode usar uma função de perda ou um tipo de modelo diferentes dos usados para treinar o modelo pré-treinado. Por exemplo, é possível ajustar um modelo de imagem grande pré-treinado para produzir um modelo de regressão que retorne o número de pássaros em uma imagem de entrada.

Compare e contraste o ajuste com os seguintes termos:

G

a IA generativa

#language
#image
IA generativa

Um campo transformador emergente sem definição formal. Dito isso, a maioria dos especialistas concorda que os modelos de IA generativa podem criar ("gerar") conteúdo que seja:

  • complexo
  • coerentes
  • original

Por exemplo, um modelo de IA generativa pode criar ensaios ou imagens sofisticadas.

Algumas tecnologias anteriores, incluindo LSTMs e RNNs, também podem gerar conteúdo original e coerente. Alguns especialistas veem essas tecnologias anteriores como IA generativa, enquanto outros acreditam que a verdadeira IA generativa exige um resultado mais complexo do que as tecnologias anteriores podem produzir.

Contraste com o ML preditivo.

I

Reconhecimento de imagem

#image

Um processo que classifica objetos, padrões ou conceitos em uma imagem. O reconhecimento de imagens também é conhecido como classificação de imagens.

Para mais informações, consulte Prática de ML: classificação de imagens.

Interseção sobre união (IoU, na sigla em inglês)

#image

A interseção de dois conjuntos divididos pela união. Em tarefas de detecção de imagens de machine learning, a IoU é usada para medir a precisão da caixa delimitadora prevista do modelo em relação à caixa delimitadora de informações empíricas. Nesse caso, a IoU das duas caixas é a proporção entre a área sobreposta e a área total, e o valor varia de 0 (sem sobreposição de caixa delimitadora prevista e de informações empíricas) a 1 (a caixa delimitadora prevista e a caixa delimitadora de informações empíricas têm exatamente as mesmas coordenadas).

Por exemplo, na imagem abaixo:

  • A caixa delimitadora prevista (as coordenadas que delimitam onde o modelo prevê que a mesa noturna na pintura está localizada) é destacada em roxo.
  • A caixa delimitadora de informações empíricas (as coordenadas que delimitam onde a tabela noturna na pintura está realmente localizada) é destacada em verde.

A pintura "Vincent's Room in Arles" de Van Gogh, com duas caixas delimitadoras
          diferentes ao redor da mesa de cabeceira ao lado da cama. A caixa delimitadora de informações empíricas (em verde) circunscreve perfeitamente a tabela noturna. A
          caixa delimitadora prevista (em roxo) está deslocada 50% para baixo e para a direita
          da caixa delimitadora de informações empíricas. Ela abrange o quarto inferior direito
          da tabela noturna, mas perde o restante da tabela.

Aqui, a interseção das caixas delimitadoras para previsão e informações empíricas (abaixo, à esquerda) é 1, e a união das caixas delimitadoras para previsão e informações empíricas (abaixo à direita) é 7, de modo que a IoU é \(\frac{1}{7}\).

Mesma imagem acima, mas com cada caixa delimitadora dividida em quatro quadrantes. Há sete quadrantes no total, porque o quadrante inferior direito
          da caixa delimitadora de informações empíricas e o quadrante superior esquerdo
          da caixa delimitadora prevista se sobrepõem. Essa seção sobreposta (destacada em verde) representa a interseção e tem uma área de 1. Mesma imagem acima, mas com cada caixa delimitadora dividida em quatro quadrantes. Há sete quadrantes no total, porque o quadrante inferior direito
          da caixa delimitadora de informações empíricas e o quadrante superior esquerdo
          da caixa delimitadora prevista se sobrepõem.
          Todo o interior circundado por ambas as caixas delimitadoras (destacados em verde) representa a união e tem uma área de 7.

K

pontos-chave

#image

As coordenadas de recursos específicos em uma imagem. Por exemplo, para um modelo de reconhecimento de imagem que distingue espécies de flores, os pontos-chave podem ser o centro de cada pétala, o caule, o estame e assim por diante.

L

pontos de referência

#image

Sinônimo de keypoints.

M

MNIST

#image

Um conjunto de dados de domínio público compilado por LeCun, Cortes e Burges contendo 60.000 imagens, cada uma mostrando como um humano escreveu manualmente um determinado dígito de 0 a 9. Cada imagem é armazenada como uma matriz de 28 x 28 de números inteiros, em que cada número inteiro é um valor em escala de cinza entre 0 e 255, inclusive.

O MNIST é um conjunto de dados canônico para machine learning, frequentemente usado para testar novas abordagens de machine learning. Para mais detalhes, consulte O banco de dados MNIST de dígitos escritos à mão.

P

pool

#image

Reduzir uma matriz (ou matrizes) criada por uma camada convolucional anterior para uma matriz menor. O pooling geralmente envolve o valor máximo ou médio da área junta. Por exemplo, suponha que temos a seguinte matriz 3x3:

A matriz 3x3 [[5,3,1], [8,2,5], [9,4,3]].

Assim como a operação convolucional, uma operação de pooling divide essa matriz em fatias e, em seguida, desliza essa operação convolucional em strides (link em inglês). Por exemplo, suponha que a operação de pool divida a matriz convolucional em fatias 2x2 com um salto de 1x1. Conforme ilustrado no diagrama a seguir, ocorrem quatro operações de pooling. Imagine que cada operação de pooling escolha o valor máximo dos quatro nessa fatia:

A matriz de entrada é 3x3 com os valores: [[5,3,1], [8,2,5], [9,4,3]].
          A submatriz 2x2 no canto superior esquerdo da matriz de entrada é [[5,3], [8,2]]. Portanto, a operação de pool no canto superior esquerdo gera o valor 8 (que é o máximo de 5, 3, 8 e 2). A submatriz 2x2 no canto superior direito da matriz de entrada é [[3,1], [2,5]]. Portanto, a operação de pooling no canto superior direito gera o valor 5. A submatriz 2x2 no canto inferior esquerdo da matriz de entrada é [[8,2], [9,4]]. Portanto, a operação de pool no canto inferior esquerdo gera o valor 9. A submatriz 2x2 no canto inferior direito da matriz de entrada é
          [[2,5], [4,3]]. Portanto, a operação de pool no canto inferior direito gera o valor
          5. Em resumo, a operação de pooling produz a matriz 2x2 [[8,5], [9,5]].

O pool ajuda a aplicar a invariância translacional (link em inglês) na matriz de entrada.

O pool para aplicativos de visão é conhecido mais formalmente como pooling espacial. Os aplicativos de série temporal geralmente se referem ao pooling como pool temporal. De forma menos formal, o agrupamento é frequentemente chamado de subamostragem ou redução de amostragem.

pré-treinado

#language
#image
IA generativa

Modelos ou componentes do modelo (como um vetor de incorporação) que já foram treinados. Às vezes, você alimentará vetores de embedding pré-treinados em uma rede neural (link em inglês). Outras vezes, o modelo treinará os próprios vetores de embedding, em vez de depender de embeddings pré-treinados.

O termo modelo de linguagem pré-treinado se refere a um modelo de linguagem grande que passou por pré-treinamento.

pré-treinamento

#language
#image
IA generativa

Treinamento inicial de um modelo em um grande conjunto de dados. Alguns modelos pré-treinados são gigantes desajeitados e normalmente precisam ser refinados com outros treinamentos. Por exemplo, os especialistas em ML podem pré-treinar um modelo de linguagem grande em um vasto conjunto de dados de texto, como todas as páginas em inglês na Wikipédia. Após o pré-treinamento, o modelo resultante pode ser refinado ainda mais com qualquer uma destas técnicas:

R

invariância rotacional

#image

Em um problema de classificação de imagens, a capacidade de um algoritmo de classificar imagens mesmo quando a orientação delas muda. Por exemplo, o algoritmo ainda pode identificar uma raquete de tênis se ela está apontando para cima, de lado ou para baixo. A invariância rotacional nem sempre é desejável. Por exemplo, um 9 de cabeça para baixo não deve ser classificado como 9.

Consulte também invariância translacional e invariância de tamanho.

S

invariância de tamanho

#image

Em um problema de classificação de imagens, a capacidade de um algoritmo de classificar imagens com sucesso, mesmo quando o tamanho delas muda. Por exemplo, o algoritmo ainda pode identificar um gato consumindo 2 milhões ou 200 mil pixels. Mesmo os melhores algoritmos de classificação de imagens ainda têm limites práticos de invariância de tamanho. Por exemplo, é improvável que um algoritmo (ou humano) classifique corretamente uma imagem de gato que consome apenas 20 pixels.

Consulte também invariância translacional e invariância rotacional.

pool espacial

#image

Consulte pooling.

stride

#image

Em uma operação convolucional ou pooling, o delta em cada dimensão da próxima série de frações de entrada. Por exemplo, a animação a seguir demonstra um salto (1,1) durante uma operação convolucional. Portanto, a próxima fatia de entrada começa uma posição à direita da fatia de entrada anterior. Quando a operação atinge a borda direita, a próxima fatia está totalmente à esquerda, mas uma posição para baixo.

Uma matriz de entrada 5x5 e um filtro convolucional 3x3. Como o salto é (1,1), um filtro convolucional é aplicado nove vezes. A primeira fração convolucional avalia a submatriz 3x3 do canto superior esquerdo da matriz de entrada. A segunda fração avalia a submatriz 3x3 do meio superior. A terceira fração convolucional avalia a submatriz 3x3 no canto superior direito.  A quarta fatia avalia a submatriz 3x3 da esquerda média.
     A quinta fatia avalia a submatriz do meio 3x3. A sexta fatia avalia a submatriz 3x3 da direita média. A sétima fatia avalia
     a submatriz 3x3 no canto inferior esquerdo.  A oitava fatia avalia a submatriz 3x3 da parte inferior da tela. A Nona fração avalia a submatriz 3x3
     do canto inferior direito.

O exemplo anterior demonstra um salto bidimensional. Se a matriz de entrada for tridimensional, o salto também será tridimensional.

subamostragem

#image

Consulte pooling.

T

temperatura

#language
#image
IA generativa

Um hiperparâmetro que controla o grau de aleatoriedade da saída de um modelo. Temperaturas mais altas resultam em uma saída mais aleatória, enquanto temperaturas mais baixas resultam em menos saídas aleatórias.

A escolha da melhor temperatura depende do aplicativo específico e das propriedades desejadas da saída do modelo. Por exemplo, você provavelmente aumentaria a temperatura ao criar um aplicativo que gera resultados criativos. Por outro lado, você provavelmente diminuiria a temperatura ao criar um modelo que classifica imagens ou texto para melhorar a precisão e consistência do modelo.

A temperatura geralmente é usada com o softmax (em inglês).

invariância translacional

#image

Em um problema de classificação de imagens, a capacidade de um algoritmo de classificar imagens com sucesso, mesmo quando a posição dos objetos dentro delas muda. Por exemplo, o algoritmo ainda pode identificar um cachorro, seja no centro ou na extremidade esquerda do frame.

Consulte também invariância de tamanho e invariância rotacional.