Decifrando os Modelos de Difusão: A magia por trás da Geração de Imagens

Decifrando os Modelos de Difusão: A magia por trás da Geração de Imagens

O campo da inteligência artificial está crescendo; a geração de imagens é um dos domínios mais proeminentes. Há muitos concorrentes no mercado, como Stable Diffusion, Midjourney e DALL-E. Todos esses produtos são baseados na abordagem de redes de difusão. Ao contrário dos modelos de difusão GPT, muitas vezes vistos como abstrusos, o objetivo desta história é desmistificar a complexidade dos modelos de difusão e explicar como eles funcionam de uma forma fácil, mas abrangente. Vamos lá!

O básico

As redes de difusão são redes neurais artificiais que permitem que você resolva várias tarefas de geração. A aplicação mais conhecida é a geração de imagens. Nesta história, vamos nos concentrar apenas neste tipo de geração. Existem inúmeros tipos de tarefas de geração: image2image, image2video, text2vide, video+image2video, etc. Mas todas elas são baseadas em uma estrutura semelhante.

A rede de difusão é composta por 3 blocos de construção (redes neurais):

  1. Processo de difusão: processo de geração de imagem;
  2. Condicionamento: uma maneira de restringir a geração a um determinado sujeito;
  3. Espaço latente: um truque que torna o modelo viável para execução em determinadas restrições de hardware.

Processo de Difusão

O conceito de processos de difusão vem da física, que descreve a maneira como as partículas se espalham em um meio ao longo do tempo. No contexto do aprendizado de máquina, um modelo de difusão aprende a "refinar" progressivamente um vetor de ruído em dados significativos, revertendo um conjunto de treinamento de processo semelhante a difusão criado a partir de imagens, adicionando gradualmente mais e mais ruído a cada imagem.

Processo para frente e para trás

Para amostrar/gerar a partir deste modelo, aplicamos a rede várias vezes para minimizar o ruído e recuperar a imagem (denoising). Diferentes modelos de difusão usam diferentes números de etapas e diferentes abordagens para gerar ruído.

Condicionamento

O condicionamento introduz uma dependência em informações adicionais (prompts de texto no nosso caso). Isso nos permitirá gerar amostras que atendem a restrições específicas.

Temos que converter o prompt de texto para incorporação para capturar a semântica do nosso prompt ("por exemplo: astronauta andando de bicicleta").

Treinamos a redução de ruído para aderir mais de perto à semântica textual da nossa semântica.

Espaço Latente

O último bloco de construção é o espaço latente. Normalmente, modelos generativos operam no espaço de pixels. No entanto, a inferência no espaço de pixels é cara, e o espaço de pixels é escasso. A solução é comprimir nossa imagem inicial em uma representação mais compacta, que exibe melhores propriedades de escala com relação à dimensionalidade espacial.

Como funciona o VAE

Esta compressão é obtida usando VAE (modelos de autocodificação variacional). Este tipo de codificação difere dos autocodificadores "vanilla"; ele codifica imagens para uma distribuição com permissores μ e σ. Esta abordagem permite a introdução de propriedades generativas para o espaço latente. Não explicarei os detalhes aqui. Confira esta postagem para mais detalhes.

O processo de difusão é conduzido no espaço latente.

Juntando tudo

Agora, estudamos todos os componentes-chave. É hora de juntar tudo.

Todo o processo passo a passo:

  1. Recebemos o nosso prompt "astronauta andando de bicicleta".
  2. O prompt é compactado para incorporar representação; esta representação condicionará a geração.
  3. O processo de redução de ruído é realizado no espaço latente em relação à condição.
  4. O último estado de etapa no espaço latente é decodificado para o espaço de pixel.
  5. Finalmente conseguimos nossa foto!

Espero que este artigo tenha ajudado a desmistificar a complexidade dos modelos de difusão e a entender melhor como eles funcionam. A geração de imagens é apenas um dos muitos campos em que esses modelos estão sendo aplicados, e estou ansioso para ver o que o futuro reserva para essa tecnologia emocionante.

Conteúdo Relacionado

Gemini 1.5 Flash-8B da Google: Revolucionando a Inteligência Artificial Acessível
A Google acaba de anunciar o lançamento da versão...
O Futuro das entrevistas de Emprego: Avaliando habilidades em vez de personalidade
O mundo do trabalho está passando por uma transformação...
O Futuro da Governança Generativa: Integrando Tecnologia e Valores Humanos
Na era do declínio do império dos Estados Unidos...
Crescente demanda de Energia da IA: Como as empresas de tecnologia estão agindo
A explosão de interesse em IA, particularmente IA generativa,...
Como a IA está revolucionando a pesquisa de dados
No mundo atual, orientado por dados, a recuperação de...
Reimaginando Rev-Ops com Gen AI: Marketing de Precisão
GenAI no Marketing: Transformando as Operações de Receita em...
Testando o DApp de reconhecimento facial ICP: o resultado final vai te surpreender
Nos últimos anos, os modelos de IA centralizados baseados...
Robôs conversacionais e Crianças: Oportunidades e Riscos
A emergência de robôs conversacionais desenvolvidos especificamente para crianças,...
IA está tomando seu emprego? O que você pode fazer sobre isso
Em qualquer lugar da internet, as pessoas reclamam que...
O futuro fala: agentes de voz de IA em tempo real com latência ultrabaixa
O modo de voz rapidamente se tornou um recurso...
Transformadores Eficientes: Impulsionando a próxima geração de IA Generativa
A IA Generativa (também conhecida como GenAI) está transformando...
Análise de Vídeo com Embeddings Vetoriais
Com o avanço da inteligência artificial (IA), uma das...
O futuro da segurança de aplicativos: capacitando desenvolvedores na era da IA
Em uma era em que vulnerabilidades de software podem...
Linguagem de Programação Java para Inteligência Artificial
A Inteligência Artificial (IA) está modernizando as indústrias ao...
Como usar o langchaingo para construir aplicativos de IA generativos em Go
Graças ao langchaingo, é possível construir aplicativos de IA...
Integrando Engenharia de Dados em Inteligência Artificial
Os dados são frequentemente chamados de a força vital...
Como os desenvolvedores podem abraçar a inteligência artificial
Como desenvolvedores, muitos de nós somos céticos em relação...
O Spring é forte o suficiente para IA?
Nos últimos anos, houve um aumento significativo na adoção...
Voltar para o blog

Deixe um comentário

Os comentários precisam ser aprovados antes da publicação.