Inteligência artificial
AnomalyGPT: Detecção de Anomalias Industriais usando LVLMs

Recentemente, Large Vision Language Models (LVLMs) como LLava e MiniGPT-4 demonstraram a capacidade de entender imagens e alcançar alta precisão e eficiência em várias tarefas visuais. Embora os LVLMs sejam excelentes em reconhecer objetos comuns devido aos seus conjuntos de dados de treinamento extensivos, eles carecem de conhecimento específico de domínio e têm uma compreensão limitada de detalhes localizados dentro das imagens. Isso limita sua eficácia em tarefas de Detecção de Anomalias Industriais (IAD). Por outro lado, os frameworks de IAD existentes só podem identificar fontes de anomalias e exigem configurações de limiar manual para distinguir entre amostras normais e anômalas, o que restringe sua implementação prática.
A principal finalidade de um framework de IAD é detectar e localizar anomalias em cenários industriais e imagens de produtos. No entanto, devido à imprevisibilidade e raridade de amostras de imagens do mundo real, os modelos são treinados apenas com dados normais. Eles diferenciam amostras anômalas de normais com base em desvios dos exemplos típicos. Atualmente, os frameworks e modelos de IAD fornecem principalmente pontuações de anomalia para amostras de teste. Além disso, distinguir entre instâncias normais e anômalas para cada classe de itens requer a especificação manual de limiares, o que os torna inadequados para aplicações do mundo real.

Para explorar o uso e a implementação de Large Vision Language Models nos desafios impostos pelos frameworks de IAD, foi introduzido o AnomalyGPT, uma abordagem de IAD baseada em LVLM. O AnomalyGPT pode detectar e localizar anomalias sem a necessidade de configurações de limiar manual. Além disso, o AnomalyGPT também pode oferecer informações pertinentes sobre a imagem para interagir interativamente com os usuários, permitindo que eles façam perguntas adicionais com base na anomalia ou em suas necessidades específicas.
Detecção de Anomalias Industriais e Large Vision Language Models
Os frameworks de IAD existentes podem ser categorizados em duas categorias.
- IAD baseado em Reconstrução.
- IAD baseado em Incorporação de Recursos.
Em um framework de IAD baseado em Reconstrução, o objetivo principal é reconstruir amostras de anomalias para suas respectivas amostras normais, e detectar anomalias por meio do cálculo do erro de reconstrução. SCADN, RIAD, AnoDDPM e InTra utilizam diferentes frameworks de reconstrução, desde Redes Adversárias Generativas (GAN) e autoencoders, até modelos de difusão e transformadores.
Por outro lado, em um framework de IAD baseado em Incorporação de Recursos, o objetivo principal é se concentrar na modelagem da incorporação de recursos de dados normais. Métodos como PatchSSVD tentam encontrar uma hipersfera que possa encapsular amostras normais firmemente, enquanto frameworks como PyramidFlow e Cfl projetam amostras normais em uma distribuição gaussiana usando fluxos normalizadores. Os frameworks CFA e PatchCore estabelecem um banco de memória de amostras normais a partir de incorporações de patches e usam a distância entre a incorporação da amostra de teste e a incorporação normal para detectar anomalias.
Ambos os métodos seguem o paradigma de aprendizado “uma classe, um modelo”, que exige uma grande quantidade de amostras normais para aprender as distribuições de cada classe de objetos. A necessidade de uma grande quantidade de amostras normais torna isso impraticável para categorias de objetos novos e com aplicações limitadas em ambientes de produtos dinâmicos. Por outro lado, o framework AnomalyGPT utiliza um paradigma de aprendizado em contexto para categorias de objetos, permitindo que ele habilite a interferência apenas com um punhado de amostras normais.
Avançando, temos os Large Vision Language Models ou LVLMs. LLMs ou Large Language Models desfrutaram de um enorme sucesso na indústria de NLP e agora estão sendo explorados para suas aplicações em tarefas visuais. O framework BLIP-2 aproveita o Q-former para inserir recursos visuais do Vision Transformer no modelo Flan-T5. Além disso, o framework MiniGPT conecta o segmento de imagem do framework BLIP-2 e o modelo Vicuna com uma camada linear e realiza um processo de ajuste fino em duas etapas usando dados de imagem-texto. Essas abordagens indicam que os frameworks LLM podem ter algumas aplicações para tarefas visuais. No entanto, esses modelos foram treinados em dados gerais e carecem da expertise específica de domínio necessária para aplicações generalizadas.
Como Funciona o AnomalyGPT?
O AnomalyGPT em sua essência é um modelo de IAD conversacional e de visão de linguagem grande projetado principalmente para detectar anomalias industriais e apontar sua localização exata usando imagens. O framework AnomalyGPT utiliza um LLM e um codificador de imagem pré-treinado para alinhar imagens com suas descrições textuais correspondentes usando dados de anomalias estimuladas. O modelo introduz um módulo decodificador e um módulo de aprendizado de prompts para melhorar o desempenho dos sistemas de IAD e alcançar saídas de localização de nível de pixel.
Arquitetura do Modelo

A imagem acima ilustra a arquitetura do AnomalyGPT. O modelo primeiro passa a imagem de consulta para o codificador de imagem congelado. Em seguida, o modelo extrai recursos de nível de patch das camadas intermediárias e os alimenta em um decodificador de imagem para calcular sua semelhança com textos anormais e normais para obter os resultados de localização. O aprendedor de prompts então os converte em incorporações de prompts que são adequadas para serem usadas como entradas no LLM, juntamente com as entradas de texto do usuário. O modelo LLM então aproveita as incorporações de prompts, entradas de imagem e entradas de texto fornecidas pelo usuário para detectar anomalias, apontar sua localização e criar respostas finais para o usuário.
Decodificador
Para alcançar a localização de anomalias de nível de pixel, o modelo AnomalyGPT implanta um decodificador de imagem baseado em correspondência de recursos leve que suporta tanto frameworks de IAD de poucos disparos quanto frameworks de IAD não supervisionados. O design do decodificador usado no AnomalyGPT é inspirado nos frameworks WinCLIP, PatchCore e APRIL-GAN. O modelo divide o codificador de imagem em 4 estágios e extrai os recursos de nível de patch intermediários a cada estágio.
No entanto, esses recursos intermediários não passaram pela alinhamento final de imagem-texto, o que os torna impossíveis de serem comparados diretamente com recursos. Para resolver esse problema, o modelo AnomalyGPT introduz camadas adicionais para projetar os recursos intermediários e alinhá-los com recursos de texto que representam semântica normal e anormal.
Aprendedor de Prompts
O framework AnomalyGPT introduz um aprendedor de prompts que tenta transformar o resultado de localização em incorporações de prompts para aproveitar a semântica de grãos finos das imagens e manter a consistência semântica entre as saídas do decodificador e do LLM. Além disso, o modelo incorpora incorporações de prompts aprendíveis, não relacionadas às saídas do decodificador, no aprendedor de prompts para fornecer informações adicionais para a tarefa de IAD. Finalmente, o modelo alimenta as incorporações e as informações de imagem originais no LLM.
O aprendedor de prompts consiste em incorporações de prompts base aprendíveis e uma rede neural convolucional. A rede converte o resultado de localização em incorporações de prompts e forma um conjunto de incorporações de prompts que são então combinadas com as incorporações de imagem no LLM.
Simulação de Anomalias
O modelo AnomalyGPT adota o método NSA para simular dados anômalos. O método NSA usa a técnica de corte e cola pelo método de edição de imagem de Poisson para aliviar a descontinuidade introduzida pela cola de segmentos de imagem. A técnica de corte e cola é comumente usada em frameworks de IAD para gerar imagens de anomalias simuladas.
A técnica de corte e cola envolve cortar uma região de bloco de uma imagem aleatoriamente e colá-la em uma localização aleatória em outra imagem, criando assim uma porção de anomalia simulada. Essas amostras de anomalias simuladas podem melhorar o desempenho dos modelos de IAD, mas há uma desvantagem, pois elas podem produzir descontinuidades notáveis. O método de edição de Poisson visa clonar suavemente um objeto de uma imagem para outra, resolvendo as equações diferenciais parciais de Poisson.

A imagem acima ilustra a comparação entre a edição de Poisson e a técnica de corte e cola. Como pode ser visto, há descontinuidades visíveis na técnica de corte e cola, enquanto os resultados da edição de Poisson parecem mais naturais.
Conteúdo de Perguntas e Respostas
Para realizar o ajuste de prompts no Large Vision Language Model, o modelo AnomalyGPT gera uma consulta textual correspondente com base na imagem de anomalia. Cada consulta consiste em duas partes principais. A primeira parte da consulta consiste em uma descrição da imagem de entrada que fornece informações sobre os objetos presentes na imagem, juntamente com seus atributos esperados. A segunda parte da consulta é para detectar a presença de anomalias dentro do objeto ou verificar se há uma anomalia na imagem.
O LVLM primeiro responde à consulta sobre se há uma anomalia na imagem? Se o modelo detectar anomalias, ele continua a especificar a localização e o número de áreas anômalas. O modelo divide a imagem em uma grade de 3×3 de regiões distintas para permitir que o LVLM indique verbalmente a posição das anomalias, como mostrado na figura abaixo.

O modelo LVLM é alimentado com o conhecimento descritivo da entrada com conhecimento fundamental da imagem de entrada que ajuda a compreensão do modelo dos componentes da imagem.
Conjuntos de Dados e Métricas de Avaliação
O modelo realiza seus experimentos principalmente nos conjuntos de dados VisA e MVTec-AD. O conjunto de dados MVTech-AD consiste em 3629 imagens para treinamento e 1725 imagens para teste, divididas em 15 categorias diferentes, o que o torna um dos conjuntos de dados mais populares para frameworks de IAD. As imagens de treinamento apresentam apenas imagens normais, enquanto as imagens de teste apresentam imagens normais e anômalas. Por outro lado, o conjunto de dados VisA consiste em 9621 imagens normais e cerca de 1200 imagens anômalas, divididas em 12 categorias diferentes.
Avançando, assim como os frameworks de IAD existentes, o modelo AnomalyGPT emprega a AUC ou Área Sob a Curva de Característica de Operação do Receptor como sua métrica de avaliação, com AUC de nível de pixel e AUC de nível de imagem usados para avaliar o desempenho de localização de anomalias e detecção de anomalias, respectivamente. No entanto, o modelo também utiliza a precisão de nível de imagem para avaliar o desempenho de sua abordagem proposta, pois isso permite determinar a presença de anomalias sem a necessidade de configurar limiares manualmente.
Resultados
Resultados Quantitativos
Detecção de Anomalias Industriais de Poucos Disparos
O modelo AnomalyGPT compara seus resultados com frameworks de IAD de poucos disparos anteriores, incluindo PaDiM, SPADE, WinCLIP e PatchCore, como linhas de base.

A figura acima compara os resultados do modelo AnomalyGPT em comparação com frameworks de IAD de poucos disparos. Em ambos os conjuntos de dados, o método seguido pelo AnomalyGPT supera as abordagens adotadas por modelos anteriores em termos de AUC de nível de imagem e também retorna boa precisão.
Detecção de Anomalias Industriais Não Supervisionada
Em um ambiente de treinamento não supervisionado com um grande número de amostras normais, o AnomalyGPT treina um único modelo em amostras obtidas de todas as classes dentro de um conjunto de dados. Os desenvolvedores do AnomalyGPT optaram pelo framework UniAD porque ele é treinado sob o mesmo conjunto e atuará como uma linha de base para comparação. Além disso, o modelo também compara com os frameworks JNLD e PaDim usando o mesmo conjunto unificado.

A figura acima compara o desempenho do AnomalyGPT em comparação com outros frameworks.
Resultados Qualitativos

A imagem acima ilustra o desempenho do modelo AnomalyGPT no método de detecção de anomalias não supervisionado, enquanto a figura abaixo demonstra o desempenho do modelo no método de aprendizado de contexto de 1 disparo.

O modelo AnomalyGPT é capaz de indicar a presença de anomalias, marcar sua localização e fornecer resultados de localização de nível de pixel. Quando o modelo está no método de aprendizado de contexto de 1 disparo, o desempenho de localização do modelo é ligeiramente menor em comparação com o método de aprendizado não supervisionado devido à falta de treinamento.
Conclusão
AnomalyGPT é um modelo de IAD conversacional e de visão de linguagem grande projetado para aproveitar as poderosas capacidades dos large vision language models. Ele não apenas pode identificar anomalias em uma imagem, mas também apontar sua localização exata. Além disso, o AnomalyGPT facilita diálogos de várias voltas focados na detecção de anomalias e apresenta um desempenho notável no aprendizado de contexto de poucos disparos. O AnomalyGPT explora as aplicações potenciais dos LVLMs na detecção de anomalias, introduzindo novas ideias e possibilidades para a indústria de IAD.
