Início topics aprendizado zero shot O que é aprendizado zero-shot?
Explore a plataforma de IA da IBM Inscreva-se para receber atualizações de IA
Ilustração com colagem de pictogramas de nuvens, gráfico de pizza, pictogramas de gráficos

Publicado: 24 de janeiro de 2024
Colaboradores: Dave Bergmann

O que é aprendizado zero-shot?

O aprendizado zero-shot (ZSL) é um cenário de aprendizado de máquina no qual um modelo de IA é treinado para reconhecer e categorizar objetos ou conceitos sem ter visto nenhum exemplo dessas categorias ou conceitos com antecedência.

A maioria dos modelos de deep learning de ponta para classificação ou regressão são treinados por meio de aprendizado supervisionado, que exige muitos exemplos rotulados de classes de dados relevantes. Os modelos "aprendem" fazendo previsões em um conjunto de dados de treinamento rotulados; os rótulos de dados fornecem o intervalo de respostas possíveis e as respostas corretas (ou verdade absoluta) para cada exemplo de treinamento. "Aprender", aqui, significa ajustar os pesos do modelo para minimizar a diferença entre as previsões do modelo e essa verdade absoluta. Esse processo requer amostras rotuladas suficientes para muitas rodadas de treinamento e atualizações. 

Embora poderoso, o aprendizado supervisionado é impraticável em alguns cenários do mundo real. A anotação de grandes quantidades de amostras de dados é dispendiosa e demorada e, em casos como doenças raras e espécies recentemente descobertas, os exemplos podem ser escassos ou inexistentes. Consideremos tarefas de reconhecimento de imagem: de acordo com um estudo, os humanos podem reconhecer aproximadamente 30.000 categorias de objetos individualmente distinguíveis.1 Não é viável, em termos de tempo, custo e recursos computacionais, que os modelos de inteligência artificial se aproximem remotamente das capacidades humanas se tiverem de ser explicitamente treinados em dados rotulados para cada classe.

A necessidade de modelos de aprendizado de máquina serem capazes de generalizar rapidamente para um grande número de categorias semânticas com sobrecarga mínima de treinamento deu origem ao aprendizado n-shot: um subconjunto do aprendizado de máquina que também inclui o aprendizado few-shot  (FSL) e o aprendizado one-shot. O aprendizado few-shot normalmente usa métodos baseados em aprendizado de transferência e meta-aprendizadopara treinar modelos para reconhecer rapidamente novas classes com apenas alguns exemplos de treinamento rotulados ou, no aprendizado one-shot, um único exemplo rotulado.

O aprendizado zero-shot, como todo aprendizado n-shot, não se refere a nenhum algoritmo específico ou arquitetura de rede neural, mas à natureza do próprio problema de aprendizado: no ZSL, o modelo não é treinado em nenhum exemplo rotulado das classes invisíveis para as quais ele é solicitado a fazer previsões após o treinamento.

Essa configuração do problema não leva em consideração se essa classe estava presente (embora não rotulada) nos dados de treinamento. Por exemplo, alguns grandes modelos de linguagem (LLMs) são adequados para tarefas ZSL, pois são pré-treinados por meio de aprendizado autossupervisionado em um enorme corpus de texto que pode conter referências incidentais ou conhecimento sobre classes de dados invisíveis. Sem exemplos rotulados para se basear, todos os métodos ZSL dependem do uso desse conhecimento auxiliar para fazer previsões.

Dada a sua versatilidade e ampla gama de casos de uso, o aprendizado zero-shot tornou-se uma área de pesquisa cada vez mais notável em ciência de dados, particularmente nos campos de Computer Vision e processamento de linguagem natural (NLP).

Aprendizado zero-shot generalizado (GSZL)

Em uma configuração ZSL convencional, o modelo é testado em um conjunto de dados contendo amostras de classes de dados não vistas. Embora seja útil para desenvolver e validar metodologias zero-shot, não reflete as condições mais comuns do mundo real: oaprendizado zero-shot generalizado (GSZL) se refere ao problema específico de aprendizado zero-shot no qual os pontos de dados que o modelo tem a tarefa de classificar podem pertencer a classes não vistas ou a classes vistas: classes que o modelo já "aprendeu" a partir de exemplos rotulados.

O GSZL precisa superar um desafio adicional: a tendência dos classificadores de fazer previsões tendenciosas em relação às classes que viram no treinamento, em detrimento de classes não vistas às quais ainda não foram expostos. Dessa forma, o GSZL geralmente requer técnicas adicionais para atenuar esse viés.

Por que a governança da IA é um imperativo empresarial para dimensionar a IA empresarial

Saiba mais sobre as barreiras à adoção de IA, especialmente a falta de soluções de governança de IA e gerenciamento de riscos.

Conteúdo relacionado

Cadastre-se para receber o guia sobre modelos de base

Como funciona o aprendizado zero-shot?

Na ausência de exemplos rotulados das categorias que o modelo está sendo treinado para aprender, os problemas do aprendizado zero-shot fazem uso de informações auxiliares: descrições textuais, atributos, representações incorporadas ou outras informações semânticas relevantes para a tarefa em questão.

Em vez de modelar diretamente os limites de decisão entre as classes, as técnicas de aprendizado zero-shot geralmente produzem um vetor de probabilidade, que representa a probabilidade de uma determinada entrada pertencer a certas classes. Os métodos GSZL podem adicionar um discriminador preliminar que primeiro determina se a amostra pertence a uma classe vista ou a uma nova classe e, em seguida, procede de acordo.

Compreensão dos rótulos

No aprendizado supervisionado, bem como no aprendizado few-shot (FSL), o modelo aprende a reconhecer diferentes classes observando diretamente um ou mais exemplos rotulados de cada classe. Sem essas anotações explícitas para guiá-los, o aprendizado zero-shot requer uma compreensão mais fundamental do significado do rótulo. 

Para uma analogia simples, imagine que uma criança quer aprender como é um pássaro. Em um processo semelhante ao aprendizado supervisionado ou FSL, a criança aprende olhando para imagens rotuladas como "pássaro" em um livro de imagens de animais. Daqui para a frente, ela reconhecerá um pássaro porque se assemelha às imagens de pássaros que já viu. Mas, em um cenário ZSL, nenhum desses exemplos rotulados está disponível. Em vez disso, a criança pode ler um verbete de enciclopédia sobre pássaros e aprender que eles são animais de pequeno ou médio porte com penas, bicos e asas que podem voar pelo ar. Ela, então, será capaz de reconhecer um pássaro no mundo real, mesmo que nunca tenha visto um antes, porque aprendeu o conceito de um pássaro.

Conforme mencionado anteriormente, os LLMs demonstraram potencial natural para ZSL, derivado de sua capacidade de entender fundamentalmente o significado das palavras usadas para nomear classes de dados.

Transferir aprendizado

Para minimizar o tempo e os recursos necessários para o treinamento, bem como a quantidade de informações auxiliares necessárias para identificar classes não vistas, o ZSL geralmente aproveita o aprendizado por transferência—a reutilização de um modelo treinado para uma nova tarefa—em vez de treinar modelos a partir do zero. 

O aprendizado por transferência é usado de forma proeminente nos métodos de ZSL que representam classes e amostras como incorporações semânticas. Por exemplo, um modelo que executa a classificação de texto zero-shot pode usar um modelo baseado em transformador, como o BERT, já pré-treinado em um enorme corpus de dados de idioma, para converter palavras em incorporações vetoriais. Da mesma forma, um modelo de classificação de imagens zero-shot pode reaproveitar uma rede neural convolucional (CNN) pré-treinada, como uma ResNet ou U-Net, pois ela já terá aprendido pesos de filtro que conduzem à identificação de recursos importantes das imagens que poderiam informar a classificação.

O aprendizado por transferência é particularmente importante para o GSZL, no qual o conhecimento do modelo de classes vistas pode ser usado como informação auxiliar sobre classes invisíveis.  Por exemplo, imagine que um modelo de detecção de objetos já tenha aprendido a reconhecer ursos pardos. Em vez de treiná-lo para reconhecer também os ursos polares, fornecendo-lhe exemplos rotulados de ursos polares, ele pode ser treinado para entender que os ursos polares se parecem com ursos pardos com pelo branco.

Esse processo de transferência do conhecimento aprendido para novas tarefas e classes diferentes também é chamado de adaptação de domínio.

Métodos baseados em atributos

Os métodos de aprendizado zero-shot baseados em atributos usam lógica semelhante à do aprendizado supervisionado convencional. Em vez de treinar diretamente um classificador em exemplos rotulados de cada classe de dados, os classificadores são treinados em recursos rotulados de determinadas classes de dados, como cor, forma ou outras características-chave.

Embora as classes-alvo não sejam vistas diretamente no treinamento, o rótulo de uma classe invisível pode ser inferido se seus atributos se assemelharem às classes de atributos presentes nos dados de treinamento.

Depois que o classificador tiver aprendido todos os recursos relevantes, ele poderá utilizar descrições semânticas de diferentes classes. Essa abordagem é particularmente útil quando os exemplos rotulados de uma classe-alvo não estão disponíveis, mas os exemplos rotulados de seus recursos característicos são relativamente abundantes. Por exemplo, um modelo pode aprender "listras" com imagens de tigres e zebras; pode aprender "amarelo" com imagens de canários e "inseto voador" com imagens de moscas. O modelo agora pode realizar a classificação zero-shot de abelhas, apesar da ausência de imagens de abelhas no conjunto de treinamento, porque pode entendê-las como uma combinação de características aprendidas: "insetos voadores listrados e amarelos".

Embora versáteis e úteis nas circunstâncias certas, os métodos ZSL baseados em atributos têm desvantagens importantes:

  • Eles dependem da suposição-chave de que cada classe pode ser descrita com um único vetor de atributos, o que nem sempre é o caso. Mall, Hariharan e Bala citam os exemplos do American Goldfinch — cujos padrões de cor e plumagem variam de acordo com gênero, idade e status de criação — e de quadras de badminton ao ar livre, que variam muito em termos de cor, superfície e presença (ou ausência) de linhas formais.2
  • Anotar exemplos de atributos individuais pode ser tão caro e demorado quanto anotar exemplos de uma determinada classe.
  • Os métodos baseados em atributos não podem ser generalizados para classes cujos atributos são desconhecidos ou não estão presentes nas amostras disponíveis.
Métodos baseados em incorporação

Muitos métodos ZSL representam ambas as classes e amostras como incorporações semânticas: representações vetoriais que podem ser utilizadas para refletir os recursos ou o significado de (e o relacionamento entre) diferentes pontos de dados. Então, a classificação é determinada medindo a semelhança entre a incorporação semântica de uma determinada amostra e as incorporações das diferentes classes nas quais ela pode ser categorizada.

Uma vez que os pontos de dados tenham sido representados como incorporações, a classificação é determinada usando princípios semelhantes aos dos algoritmos de  K-ésimos vizinhos mais próximos: alguma métrica de distância, como similaridade cossenoidal, distância euclidiana ou distância de Wasserstein, é usada para medir a proximidade da incorporação dos dados de entrada às incorporações para cada classe potencial. Quanto mais próxima (ou mais semelhante) for a incorporação dessa amostra de dados da incorporação de uma determinada classe, maior a probabilidade de ela pertencer a essa classe.

Essas incorporações podem ser geradas de várias maneiras. Por exemplo:

  • Modelos e algoritmos pré-treinados como BERT, word2vec ou GloVe (Global Vectors) podem prontamente produzir incorporações vetoriais para palavras (como os nomes dos rótulos de classes).

  • Da mesma forma, as redes de codificadores de CNNs pré-treinadas, como ResNet (ou codificadores de imagens baseados em transformadores, como ViT), podem fazer o mesmo com imagens.

  • Os autocodificadores podem aprender representações latentes — codificações comprimidas e de dimensões mais baixas que isolam as variáveis mais distintas de uma determinada entrada de dados — de amostras ou classes.

  • Em vez de transferir aprendizado, uma variedade de arquiteturas de rede neural pode ser treinada a partir do zero em dados de treinamento relevantes, como amostras de classes de dados relevantes para as quais exemplos rotulados estão disponíveis, para produzir incorporações eficazes.
     

Espaço de incorporação conjunta
Como os métodos baseados em incorporação normalmente processam informações auxiliares e incorporações de espaço vetorial de diferentes formas (ou modalidades) de dados, como incorporações de palavras que descrevem um rótulo de classe e a incorporação de imagem de uma fotografia que pode pertencer a essa classe, eles exigem uma maneira de facilitar a comparação entre incorporações de diversos tipos de dados.

Para serem comparadas, as incorporações vetoriais de diferentes tipos e tamanhos devem ser normalizadas e projetadas em um espaço semântico compartilhado de alta dimensão, conhecido como espaço de incorporação conjunta, onde podem ser comparadas em um ambiente semelhante. Em termos abstratos, isso funciona de forma semelhante ao conceito de encontrar o mínimo denominador comum para comparar frações diferentes. Um mapeamento forte e correlativo entre diferentes fontes de incorporação é essencial para o desempenho da generalização de um modelo.3

Alguns modelos de aprendizado zero-shot também usam o aprendizado contrastante para alinhar melhor as incorporações semânticas de diferentes modelos ou algoritmos: usando pares de incorporações semânticas, o aprendizado contrastante treina modelos para minimizar a distância entre pares "positivos" (como a incorporação de uma imagem de um cachorro e o da palavra "cachorro") e maximizar a distância entre pares "negativos" (não correspondentes).
 

Treinamento conjunto de ponta a ponta
Uma maneira eficaz de garantir o alinhamento entre incorporações de diversos modelos é treinar esses modelos lado a lado. Por exemplo, o modelo Contrastive Language-Image Pre-training (CLIP) da OpenAI foi treinado em um enorme conjunto de dados não rotulado de mais de 400 milhões de pares de imagem retirados da internet.4

Esses pares foram usados para treinar conjuntamente um codificador de imagens e um codificador de texto a partir do zero, usando perda contrastante para maximizar a semelhança cossenoidal entre incorporações de imagens e incorporações para suas legendas correspondentes. Isso gerou uma capacidade natural para a classificação zero-shot: sem ajuste fino, o CLIP demonstrou um forte desempenho de classificação em 27 conjuntos de dados de classificação de imagens diferentes.

Métodos baseados na IA generativa

A IA generativa oferece uma solução alternativa para o problema de aprendizado zero-shot: usar informações auxiliares para gerar dados de amostra.

Os métodos baseados na IA generativa podem aproveitar as representações semânticas de classes invisíveis para gerar amostras que, uma vez rotuladas, podem ser usadas para converter o problema de aprendizado em aprendizado supervisionado padrão. Embora amostras não rotuladas (ou representações de classes vistas estreitamente relacionadas) possam ajudar na síntese de amostras, em uma configuração zero-shot, esse processo geralmente depende principalmente de descrições semânticas.

Os LLMs podem reduzir o trabalho necessário para produzir descrições de alta qualidade: no documento de lançamento de seu modelo de geração de texto para imagens DALL-E 3, a OpenAI observou que as legendas sintéticas até melhoraram o desempenho do modelo em relação às legendas da "verdade absoluta".5
 

Autocodificadores variacionais
Autocodificadores variacionais (VAEs) são modelos generativos autossupervisionados que aprendem representações latentes de dados de treinamento como uma distribuição parametrizada de variáveis latentes. Em outras palavras, eles aprendem a codificar uma classe de dados não como uma incorporação semântica estática, mas como uma distribuição de probabilidades no espaço latente. O decodificador pode, então, ser usado para gerar uma amostra aleatória a partir desse espaço latente. Os VAEs condicionais (CVAEs) podem restringir as propriedades de amostras sintetizadas ao maximizar a probabilidade das variáveis escolhidas.
 

Redes adversárias generativas (GANS)
As GANs consistem em duas redes neurais, treinadas em conjunto em um jogo adversário de soma zero: um gerador, que usa atributos semânticos e ruído gaussiano para sintetizar amostras, e um discriminador, que determina se as amostras são reais ou "falsas" (ou seja, sintetizadas pelo gerador ). O feedback do discriminador é usado para treinar o gerador até que o discriminador não consiga mais distinguir entre amostras reais e falsas. Desde o artigo original do GAN, em 2014, várias modificações foram desenvolvidas para refinar e estabilizar esse processo.
 

VAEGANs
Tanto os VAEs quanto os GANs têm desvantagens:

  • Os VAEs são estáveis, mas tendem a gerar imagens borradas devido à natureza de como as amostras são reconstruídas a partir do espaço latente.

  • Os GANs aprendem a gerar imagens de alta qualidade, mas são propensos à desestabilização porque devem convergir dois processos de treinamento separados e distintos.

Embora uma série de modificações tenha sido desenvolvida para refinar e estabilizar ambos os processos, a combinação das duas arquiteturas de modelos produziu resultados promissores em uma configuração zero-shot.6
 

Grandes modelos de linguagem (LLMs)
Os LLMs também podem ser usados para sintetizar amostras rotuladas: por exemplo, usando um modelo de autorregressão como o Llama 2 para gerar amostras que podem ser usadas para treinar um modelo de linguagem bidirecional como o Sentence-BERT para tarefas de classificação de texto.

Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente IA generativa, modelos de base e recursos de aprendizado de máquina com facilidade, além de criar aplicativos de IA em uma fração do tempo com uma fração dos dados.

Explore o watsonx.ai

Serviços de consultoria de IA

Reinvente sua forma de trabalhar com a IA: nossa equipe global diversificada de mais de 20 mil especialistas em IA pode ajudar você a projetar e escalar a IA e a automação de forma rápida e confiável em toda a sua empresa, trabalhando com nossa própria tecnologia IBM watsonx e um ecossistema aberto de parceiros para oferecer qualquer modelo de IA, em qualquer nuvem, orientado por ética e confiança.

Explore os serviços de consultoria em IA da IBM

IBM watsonx.data

Dimensione a análise de dados e a IA com todos os seus dados, onde quer que residam, com formatos abertos para acessar todos os seus dados por meio de um único ponto de entrada e uma interface de conversação impulsionada por IA generativa para encontrar, aumentar e visualizar dados com facilidade e liberar novos insights de dados.

 

Explore o IBM Watsonx.data
Recursos de aprendizado zero-shot Exemplo de solicitações de modelos de base para tarefas comuns

Não há uma maneira certa de solicitar modelos de base. Mas padrões confiáveis foram encontrados no meio acadêmico e na indústria. Use as amostras deste tutorial para desenvolver suas habilidades e sua intuição sobre engenharia de prompts, inclusive para tarefas zero-shot, por meio de experimentação.

O que é aprendizado autossupervisionado?

O aprendizado autossupervisionado é usado no treinamento de uma variedade de arquiteturas sofisticadas de deep learning para uma variedade de tarefas, desde LLMs baseados em transformadores, como BERT e GPT, até modelos de síntese de imagens, como autocodificadores variacionais (VAEs) e redes adversárias generativas (GANs), modelos de Computer Vision, como SimCLR e Momentum Contrast (MoCo).

O treinamento solicitado por multitarefa permite a generalização de tarefas zero-shot

Os LLMs demonstram uma generalização razoável em um conjunto diversificado de tarefas. Foi levantada a hipótese de que isso é uma consequência do aprendizado multitarefa implícito no treinamento. Em vez disso, a generalização zero-shot pode ser induzida diretamente pelo aprendizado multitarefa explícito? Testamos essa pergunta em escala.

Dê o próximo passo

Treine, valide, ajuste e implemente IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de próxima geração para construtores de IA. Crie aplicações de IA em menos tempo com menos dados.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

Todos os links estão fora do ibm.com
1 "Recognition-by-components: A theory of human image understanding", Psychological Review vol. " 94 (pp. 115–147), 1987.
2 "Zero-shot Learning Using Multimodal Descriptions," Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, 2022.
3 "Data-Efficient Language-Supervised Zero-Shot Learning with Self-Distillation," arXiv, 18 de abril de 2021.
4 "CLIP: Connecting text and images," OpenAI, 5 de janeiro de
2021. 5 "Improving Image Generation with Better Captions," OpenAI, 2023.
6 "Zero-VAE-GAN: Generating Unseen Features for Generalized and Transductive Zero-Shot Learning," PubMed, 13 de janeiro de 2023.