Modelos Multimodais Grandes (LMMs): Um Salto Gigantesco no Mundo da IA

Modelos Multimodais Grandes (LMMs): Um Salto Gigantesco no Mundo da IA

Explore o impacto transformador dos Modelos Multimodais Grandes (LMMs) como CLIP e Flamingo, que podem processar e gerar diversas modalidades de dados, como texto e imagens. Descubra direções de pesquisa de ponta, incluindo a incorporação de novas modalidades, melhoria da eficiência de treinamento e geração de saídas multimodais, com potencial para revolucionar indústrias e as interações dos usuários com a IA.

Contexto

Por muito tempo, os modelos de machine learning operavam em um modo de dados: texto para tradução e modelagem de linguagem, imagem para detecção e classificação de objetos, áudio para reconhecimento de fala. No entanto, a inteligência humana não se limita a apenas uma modalidade. Lemos e escrevemos texto, interpretamos imagens e vídeos, ouvimos música para relaxar e confiamos em sons para detectar perigos. Para funcionar de forma eficaz no mundo real, a IA também deve ser capaz de lidar com dados multimodais.

Reconhecendo isso, a OpenAI enfatizou a importância de incorporar modalidades adicionais, como imagens, em Grandes Modelos de Linguagem (LLMs), marcando uma fronteira crucial na pesquisa e desenvolvimento de IA. Essa integração de modalidades adicionais transforma LLMs em Modelos Multimodais Grandes (LMMs). No ano passado, os principais laboratórios de pesquisa introduziram uma enxurrada de novos LMMs, como Flamingo do DeepMind, BLIP da Salesforce, KOSMOS-1 da Microsoft, PaLM-E do Google e Macaw-LLM da Tencent. Até mesmo chatbots como ChatGPT e Gemini se enquadram na categoria de LMMs.

No entanto, nem todos os sistemas multimodais são LMMs. Modelos como Midjourney, Stable Diffusion e DALL-E podem processar múltiplas modalidades, mas carecem de um componente de modelo de linguagem. Sistemas multimodais podem abranger uma variedade de cenários: onde entrada e saída são de modalidades diferentes (ex.: texto-para-imagem, imagem-para-texto), onde as entradas são multimodais (ex.: processar tanto texto quanto imagens) ou onde as saídas são multimodais (ex.: gerar tanto texto quanto imagens).

O que é Multimodal

Multimodal pode significar um ou mais dos seguintes:

  1. Entrada e saída são de modalidades diferentes (ex.: texto-para-imagem, imagem-para-texto)
  2. As entradas são multimodais (ex.: um sistema que pode processar tanto texto quanto imagens)
  3. As saídas são multimodais (ex.: um sistema que pode gerar tanto texto quanto imagens)

Por que multimodal

A multimodalidade é indispensável em vários casos de uso, particularmente em indústrias que lidam com uma mistura de modalidades de dados, incluindo saúde, robótica, e-commerce, varejo, jogos e muito mais.

De fato, integrar dados de múltiplas modalidades pode melhorar significativamente o desempenho do modelo. É razoável supor que um modelo capaz de aprender com texto e imagens teria um desempenho superior àquele limitado a apenas uma modalidade.

Sistemas multimodais oferecem uma interface mais adaptável, permitindo que os usuários interajam com eles de várias maneiras, dependendo de suas preferências ou circunstâncias. Imagine poder fazer uma pergunta digitando, falando ou simplesmente apontando uma câmera para um objeto.

Modalidades de dados

Diferentes modalidades de dados incluem texto, imagem, áudio, dados tabulares e mais. Cada modalidade pode ser traduzida ou aproximada para outra forma:

  • O áudio pode ser representado como imagens, como espectrogramas de mel.
  • A fala pode ser transcrita em texto, embora essa conversão possa perder nuances como volume, entonação e pausas.
  • Uma imagem pode ser convertida em um vetor, que pode então ser achatado e representado como uma sequência de tokens de texto.
  • Os vídeos consistem em sequências de imagens combinadas com áudio. No entanto, os modelos atuais de ML normalmente tratam os vídeos apenas como sequências de imagens, ignorando a importância do som. Essa limitação é notável, já que o som contribui significativamente para a experiência do vídeo, como evidenciado por 88% dos usuários do TikTok que enfatizam sua importância.
  • O texto pode ser capturado como uma imagem simplesmente tirando uma fotografia dele.
  • Tabelas de dados podem ser transformadas em gráficos, que são essencialmente imagens.

Aqui estão as várias modalidades da novita.ai:

A novita.ai é uma plataforma completa para criatividade ilimitada que oferece acesso a mais de 100 APIs. Desde geração de imagens e processamento de linguagem até melhoria de áudio e manipulação de vídeo, com pagamento conforme o uso barato, ela libera você das dores de cabeça da manutenção de GPU enquanto cria seus próprios produtos. Experimente gratuitamente.

Tarefas do Multimodal

Para entender sistemas multimodais, examinar as tarefas que eles abordam é esclarecedor. Essas tarefas variam amplamente, e sua organização pode assumir várias formas. Na literatura, as tarefas de visão-linguagem são frequentemente categorizadas em dois grupos principais: geração e compreensão visão-linguagem (VLU), que abrange tarefas que não envolvem geração. No entanto, vale notar que a distinção entre esses grupos é um tanto ambígua, pois a capacidade de gerar respostas envolve inerentemente também a compreensão.

Geração

Em tarefas generativas, a saída pode ser unimodal (como texto, imagem ou renderização 3D) ou multimodal. Embora saídas unimodais sejam predominantes em modelos atuais, o desenvolvimento de saídas multimodais ainda está em andamento. Abordaremos saídas multimodais no final deste post.

Geração de imagem (síntese texto-para-imagem)

Esta categoria de tarefa é direta. Exemplos: Dall-E, Stable Diffusion e Midjourney.

Geração de texto

Uma tarefa prevalente em geração de texto é a resposta visual a perguntas (VQA), onde o modelo recebe texto e imagens para derivar contexto. Isso permite cenários onde os usuários podem usar suas câmeras para fazer perguntas como: “O que há de errado com meu carro?” ou “Como preparo este prato?”.

Da mesma forma, a legenda de imagens serve como outra aplicação comum. Pode ser integrada em sistemas de recuperação de imagens baseados em texto utilizados por organizações que possuem vastas bibliotecas de imagens compostas por imagens de produtos, gráficos, designs, fotos de equipe, materiais promocionais e muito mais. Ao gerar automaticamente legendas e metadados, a IA simplifica o processo de localizar imagens específicas dentro dessas coleções.

Compreensão visão-linguagem

Vamos focar em dois tipos de tarefas: classificação e recuperação de imagens baseada em texto (TBIR).

Classificação

Modelos de classificação são limitados a produzir saídas que se enquadram em uma lista predefinida de classes. Isso é adequado quando o objetivo é discernir entre um número definido de resultados potenciais. Por exemplo, em um sistema de Reconhecimento Óptico de Caracteres (OCR), a tarefa é simplesmente prever se um visual corresponde a um dos caracteres reconhecidos, como um dígito ou uma letra.

Uma tarefa intimamente relacionada à classificação é a recuperação imagem-para-texto: dada uma imagem e um conjunto de textos predefinidos, o objetivo é identificar o texto com maior probabilidade de corresponder à imagem. Esta aplicação pode ser particularmente útil para pesquisas de imagens de produtos, como recuperar avaliações de produtos com base em uma determinada imagem.

Processamento de documentos com GPT-4V. O erro do modelo está destacado em vermelho.

Recuperação de imagens baseada em texto (pesquisa de imagem)

A pesquisa de imagem é importante não apenas para mecanismos de busca, mas também para empresas que desejam vasculhar suas imagens e documentos internos. Alguns se referem à recuperação de imagens baseada em texto como “recuperação texto-para-imagem”.

Existem várias abordagens para a recuperação de imagens baseada em texto. Dois métodos notáveis incluem:

  1. Gerar legendas e metadados para cada imagem, manual ou automaticamente (como visto na legenda de imagens dentro da geração de texto). Dada uma consulta de texto, o objetivo é identificar imagens cujas legendas ou metadados correspondam de perto à consulta.
  2. Treinar um espaço de embedding conjunto para imagens e texto. Nesta abordagem, uma consulta de texto gera um embedding, e o objetivo é localizar imagens cujos embeddings sejam mais semelhantes ao embedding da consulta.

A última abordagem oferece maior flexibilidade e espera-se que tenha adoção mais ampla. Ela depende do estabelecimento de um espaço de embedding conjunto robusto tanto para visão quanto para linguagem, semelhante ao desenvolvido pelo CLIP da OpenAI.

Componente Chave do Treinamento Multimodal

Em um nível amplo, um sistema multimodal compreende os seguintes componentes:

  1. Codificadores para cada modalidade de dados, encarregados de gerar embeddings específicos para essa modalidade.
  2. Mecanismos para alinhar embeddings de diferentes modalidades dentro de um espaço de embedding multimodal unificado.
  3. Para modelos generativos, um modelo de linguagem é necessário para gerar respostas de texto. Dado que as entradas podem incluir tanto texto quanto visuais, técnicas inovadoras são necessárias para permitir que o modelo de linguagem baseie suas respostas não apenas no texto, mas também nos visuais.

Idealmente, o maior número possível desses componentes deve ser pré-treinado e reutilizável para aumentar a eficiência e versatilidade.

Introdução aos Sistemas Multimodais Existentes

Selecionar quais sistemas multimodais focar neste post foi um desafio devido à abundância de opções notáveis disponíveis. Eventualmente, optei por destacar dois modelos: CLIP (2021) e Flamingo (2022). Essas escolhas foram baseadas em sua importância, bem como na disponibilidade e clareza das informações públicas.

O CLIP fez história como o primeiro modelo capaz de generalizar para múltiplas tarefas de classificação de imagens usando técnicas de aprendizado zero-shot e few-shot. Por outro lado, embora o Flamingo não tenha sido o primeiro modelo multimodal grande capaz de gerar respostas abertas (o BLIP da Salesforce o precedeu em 3 meses), seu desempenho impressionante levou muitos a considerá-lo como o momento definidor, semelhante ao GPT-3 no domínio multimodal.

Apesar de serem modelos mais antigos, as técnicas empregadas pelo CLIP e Flamingo permanecem relevantes hoje. Eles servem como pilares fundamentais para compreender modelos mais recentes no cenário multimodal em rápida evolução, onde inúmeras ideias inovadoras estão sendo continuamente desenvolvidas.

Clip: Pré-treinamento Contrastivo Linguagem-Imagem

O grande avanço do CLIP reside em sua capacidade de mapear dados de diferentes modalidades — texto e imagens — em um espaço de embedding compartilhado. Esse espaço de embedding multimodal compartilhado simplifica significativamente tarefas como texto-para-imagem e imagem-para-texto.

Além disso, o treinamento desse espaço de embedding multimodal resultou em um codificador de imagem robusto dentro do CLIP. Consequentemente, o CLIP demonstra desempenho zero-shot competitivo em várias tarefas de classificação de imagens. A força deste codificador de imagem se estende a outras aplicações, incluindo geração de imagens, resposta visual a perguntas e recuperação de imagens baseada em texto. Notavelmente, Flamingo e LLaVA aproveitam o CLIP como seu codificador de imagem, enquanto o DALL-E utiliza o CLIP para reordenar imagens geradas. No entanto, não está claro se o GPT-4V incorpora o CLIP em sua arquitetura.

O CLIP utilizou técnicas de supervisão de linguagem natural e aprendizado contrastivo, permitindo que o modelo escalasse seus dados e aumentasse a eficiência do treinamento.

Arquitetura de alto nível do CLIP

Na arquitetura do CLIP, tanto os codificadores quanto as matrizes de projeção são treinados conjuntamente do zero. O objetivo do treinamento é maximizar as pontuações de similaridade dos pares corretos (imagem, texto) enquanto minimiza as pontuações de similaridade dos pares incorretos, uma técnica conhecida como aprendizado contrastivo.

Aplicações do CLIP

Classificação

Atualmente, o CLIP serve como uma linha de base robusta pronta para uso em inúmeras tarefas de classificação de imagens, seja utilizado em sua forma original ou ajustado para aplicações específicas.

Recuperação de imagens baseada em texto

Dado que o processo de treinamento do CLIP compartilha semelhanças conceituais tanto com a recuperação imagem-para-texto quanto com a recuperação texto-para-imagem, ele possui um potencial significativo para aplicações amplas, como recuperação ou pesquisa de imagens. No entanto, seu desempenho em relação ao estado da arte geral é notavelmente inferior em tarefas de recuperação de imagens.

Foram feitos esforços para aproveitar o CLIP para recuperação de imagens. Por exemplo, o pacote clip-retrieval funciona da seguinte forma:

  1. Gerar embeddings CLIP para todas as imagens e armazená-los em um banco de dados vetorial.
  2. Gerar um embedding CLIP para cada consulta de texto.
  3. Consultar o banco de dados vetorial para todas as imagens cujos embeddings correspondam de perto ao embedding da consulta de texto.

Geração de Imagens

Os embeddings conjuntos de imagem-texto do CLIP oferecem suporte valioso para tarefas de geração de imagens. Por exemplo, o DALL-E (2021) utiliza o CLIP para reordenar uma infinidade de visuais gerados com base em um prompt de texto, apresentando aos usuários os visuais mais bem classificados.

Em 2022, a OpenAI introduziu o unCLIP, um modelo de síntese texto-para-imagem condicionado a latentes do CLIP. Ele compreende dois componentes principais:

  1. O CLIP é treinado e mantido fixo. O modelo CLIP pré-treinado pode produzir embeddings tanto para texto quanto para imagens no mesmo espaço de embedding.
  2. Durante a geração de imagens, duas etapas ocorrem: a. Utilizar o CLIP para gerar embeddings para o texto fornecido. b. Empregar um decodificador de difusão para gerar imagens condicionadas a esses embeddings.

Geração de Texto

Os autores do CLIP exploraram a criação de um modelo de geração de texto. Uma variante que experimentaram é conhecida como LM RN50. No entanto, embora este modelo pudesse gerar respostas de texto, seu desempenho ficava consistentemente cerca de 10% abaixo do modelo CLIP de melhor desempenho em todas as tarefas de compreensão visão-linguagem avaliadas.

Embora o CLIP em si não seja utilizado diretamente para geração de texto hoje, seu codificador de imagem frequentemente serve como base para Modelos Multimodais Grandes (LMMs) capazes de gerar texto.

Flamingo: o amanhecer dos LMMs

Em contraste com o CLIP, o Flamingo tem a capacidade de produzir respostas de texto. Em termos simplificados, o Flamingo pode ser visto como o CLIP combinado com um modelo de linguagem, incorporando técnicas adicionais para permitir que o modelo de linguagem gere tokens de texto condicionados tanto a entradas visuais quanto de texto.

O Flamingo pode gerar respostas de texto condicionadas tanto a texto quanto a imagens

Arquitetura de alto nível do Flamingo

O Flamingo pode ser dividido em dois componentes principais:

  1. Codificador de visão: Este aspecto envolve treinar um modelo semelhante ao CLIP usando aprendizado contrastivo. Em seguida, o codificador de texto do modelo é descartado, deixando o codificador de visão congelado para integração no modelo principal.
  2. Modelo de linguagem: O Flamingo refina o Chinchilla através de ajuste fino para produzir tokens de texto condicionados tanto a entradas visuais quanto textuais. Este processo envolve o uso de perda de modelo de linguagem e a incorporação de dois componentes adicionais: o Perceiver Resampler e as camadas GATED XATTN-DENSE.

Conjunto de dados

O Flamingo usou 4 conjuntos de dados: 2 conjuntos de pares (imagem, texto), 1 conjunto de pares (vídeo, texto) e 1 conjunto de dados intercalados de imagem e texto.

Modelo de linguagem do Flamingo

No Flamingo, o Chinchilla atua como o modelo de linguagem, com foco específico em congelar as 9 camadas pré-treinadas do Chinchilla LM. Diferente de um modelo de linguagem tradicional, que prevê o próximo token de texto baseado apenas nos tokens de texto anteriores.

O Flamingo estende isso prevendo o próximo token de texto considerando tanto os tokens de texto anteriores quanto os tokens visuais. Essa capacidade de gerar texto condicionado tanto a entradas de texto quanto visuais é facilitada pela integração do Perceiver Resampler e das camadas GATED XATTN-DENSE.

CLIP vs. Flamingo

Direções Futuras para LMMs

O CLIP existe há 3 anos, e o Flamingo está se aproximando de seu segundo aniversário. Embora suas arquiteturas forneçam uma base sólida para entender a construção de Modelos Multimodais Grandes (LMMs), inúmeros avanços ocorreram neste campo.

Várias direções no espaço multimodal são particularmente intrigantes para mim, embora esta lista não seja de forma alguma exaustiva. A extensão deste post e minha exploração contínua do assunto contribuem para sua incompletude. Se você tiver algum insight ou recomendação, eu agradeceria imensamente!

Incorporando mais modalidades de dados

No reino dos sistemas multimodais, o foco atual gira predominantemente em torno de texto e imagens. No entanto, é apenas uma questão de tempo até que surja a necessidade de sistemas capazes de integrar outras modalidades, como vídeos, música e dados 3D. A perspectiva de ter um espaço de embedding unificado acomodando todas as modalidades de dados é realmente empolgante.

Alguns trabalhos notáveis nesta área incluem:

  1. ULIP: Learning a Unified Representation of Language, Images, and Point Clouds for 3D Understanding (Xue et al., dezembro de 2022)
  2. ImageBind: One Embedding Space To Bind Them All (Girdhar et al., maio de 2023)
  3. NExT-GPT: Any-to-Any Multimodal Large Language Model (Wu et al., setembro de 2023)

Além disso, o ambicioso projeto Pathways de Jeff Dean (2021) visa “permitir modelos multimodais que abrangem compreensão de visão, audição e linguagem simultaneamente.”

Treinamento multimodal mais eficiente

Embora o Flamingo tenha utilizado 9 camadas pré-treinadas e congeladas do Chinchilla, ele exigiu pré-treinar seu codificador de visão, Perceiver Resampler e camadas GATED XATTN-DENSE do zero. Treinar esses módulos do zero pode ser computacionalmente intensivo. Consequentemente, muitos trabalhos recentes focaram no desenvolvimento de métodos mais eficientes para inicializar sistemas multimodais com treinamento reduzido do zero.

Alguns desses trabalhos mostram resultados promissores. Por exemplo, o BLIP-2 superou o Flamingo-80B em 8,7% no VQA-v2 zero-shot com 54 vezes menos parâmetros treináveis.

Trabalhos notáveis neste domínio incluem:

  1. BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models
  2. [LAVIN] Cheap and Quick: Efficient Vision-Language Instruction Tuning for Large Language Models
  3. LLaMA-Adapter V2: Parameter-Efficient Visual Instruction Model

As imagens abaixo são provenientes do tutorial de Modelos Multimodais Grandes de Chunyuan Li no CVPR 2023, que é altamente recomendado por sua cobertura abrangente do assunto.

Gerando saídas multimodais

À medida que modelos capazes de processar entradas multimodais se tornam cada vez mais prevalentes, o desenvolvimento de capacidades de saída multimodal ainda está atrasado. Muitos cenários práticos exigem saídas multimodais. Por exemplo, ao solicitar uma explicação do ChatGPT sobre RLHF, uma resposta eficaz pode implicar a inclusão de gráficos, equações e até animações básicas.

Para gerar saídas multimodais, um modelo deve primeiro produzir uma saída intermediária compartilhada. Uma consideração crítica é a natureza dessa saída intermediária.

Uma abordagem para a saída intermediária é o texto, que subsequentemente orienta a geração ou síntese de outras ações.

Por exemplo, o CM3 (Aghajanyan et al., 2022) produz marcação HTML, que pode ser compilada em páginas da web contendo não apenas texto, mas também formatação, links e imagens. O GPT-4V gera código LaTeX, que pode então ser reconstruído em tabelas de dados.

Conclusão

A evolução de sistemas de IA unimodais para multimodais marca um avanço significativo na pesquisa e desenvolvimento de inteligência artificial. Modelos como CLIP e Flamingo pavimentaram o caminho para Modelos Multimodais Grandes (LMMs), capazes de processar e gerar diversas modalidades de dados, como texto, imagens e mais. À medida que o campo continua a progredir, os pesquisadores estão explorando novas fronteiras, incluindo a incorporação de modalidades adicionais como vídeos e dados 3D, melhoria da eficiência de treinamento e desenvolvimento de métodos para gerar saídas multimodais. Esses avanços possuem uma promessa imensa para revolucionar várias indústrias e melhorar as interações dos usuários com sistemas de IA.

novita.ai, a plataforma completa para criatividade ilimitada que oferece acesso a mais de 100 APIs. Desde geração de imagens e processamento de linguagem até melhoria de áudio e manipulação de vídeo, com pagamento conforme o uso barato, ela libera você das dores de cabeça da manutenção de GPU enquanto cria seus próprios produtos. Experimente gratuitamente.

Leitura recomendada

Qual é a diferença entre LLM e GPT

Previsões do LLM Leaderboard 2024 Reveladas

Motor de Inferência LLM da Novita AI: o maior throughput e a inferência mais barata disponível