Revelando a Tecnologia de Difusão Estável: A Tecnologia por Trás da Geração de Imagens a Partir de Texto

xx
2024-11-08
Share :

A Difusão Estável é um modelo de aprendizado profundo para a geração de imagens a partir de texto que se baseia na tecnologia de difusão, introduzido pela primeira vez em 2022. Essa tecnologia de inteligência artificial generativa é o produto insignia da Stability AI e é considerada parte do atual boom da IA. O que é exatamente? Vamos mergulhar nesta tecnologia que transforma texto em imagens e explorar seus princípios fundamentais e sua importância.

O Que É a Difusão Estável?

A Difusão Estável é uma estrutura de aprendizado de máquina de código aberto que gera imagens únicas e realistas com base nas mensagens de texto e imagens do usuário. Desde seu lançamento em 2022, não só gerou imagens estáticas, mas também se tornou capaz de criar vídeos e animações. Combinando autoencoders variacionais com modelos de difusão, essa tecnologia pode converter texto em representações visuais complexas, representando um avanço significativo no campo da IA generativa. Criadores, designers e desenvolvedores encontraram uma ferramenta gratuita e aberta para a criação de imagens, permitindo-lhes criar tudo, desde fotos realistas até obras de arte de diferentes estilos, com simples mensagens de texto. image.png

Como Funciona a Difusão Estável?

Como um modelo de difusão, a Difusão Estável difere de muitos outros modelos de geração de imagens. Idealmente, o modelo de difusão usa ruído gaussiano para codificar imagens e, em seguida, utiliza preditores de ruído e processos de difusão reversa para reconstruir as imagens. A singularidade da Difusão Estável reside em sua utilização do espaço latente em vez do espaço de pixels para as imagens.

O fundamento para isso é que uma imagem colorida com resolução de 512x512 possui 786.432 valores possíveis. Em contraste, as imagens comprimidas utilizadas pela Difusão Estável possuem apenas 16.384 valores, resultando em uma redução de aproximadamente 48 vezes nos requisitos de processamento. Isso significa que você pode utilizar a Difusão Estável sem problemas em um desktop equipado com uma GPU NVIDIA de 8 GB de RAM. Esse espaço latente menor é eficaz porque imagens naturais não são aleatórias. A Difusão Estável utiliza arquivos de autoencoder variacional (VAE) no decodificador para renderizar características detalhadas, como os olhos.

O conjunto de dados de treinamento para o modelo é coletado do LAION e do Common Crawl, incluindo o conjunto de dados de imagens LAION-Aesthetics v2.6, que contém imagens com pontuações estéticas de 6 ou mais.

Qual É a Importância da Difusão Estável?

A importância da Difusão Estável reside em sua acessibilidade e facilidade de uso. Ela pode ser executada em placas gráficas de consumo, permitindo que qualquer pessoa baixe o modelo e gere imagens personalizadas pela primeira vez. Os usuários podem controlar hiperparâmetros-chave, como o número de etapas de desruído e a quantidade de ruído aplicada. Além disso, o processo de criação de imagens é muito simples, sem a necessidade de informações adicionais. Além disso, a comunidade de usuários da Difusão Estável é muito ativa, fornecendo uma gama de documentos e tutoriais relacionados aos quais se pode fazer referência. A versão do software é gerenciada pela licença Creative ML OpenRail-M, permitindo que os usuários usem, modifiquem e redistribuam o software modificado.

Que Arquitetura Utiliza a Difusão Estável?

Os principais componentes arquiteturais da Difusão Estável incluem o autoencoder variacional, a difusão para frente e para trás, o preditor de ruído e a condicional de texto.

Autoencoder Variacional (VAE)

O VAE na arquitetura da Difusão Estável é usado para aprender a distribuição das imagens de treinamento. Ele codifica as imagens de entrada em um espaço latente de baixa dimensão para capturar suas características essenciais. Esse processo de codificação permite que o modelo gere novas imagens amostrando do espaço latente, aprendendo efetivamente a reproduzir a diversidade e a complexidade dos dados de entrada. O VAE é crucial para a capacidade do modelo de gerar imagens de alta qualidade e diversas.

Difusão para Frente

No processo de difusão para frente, a Difusão Estável adiciona gradualmente ruído gaussiano à imagem até que a imagem final consista apenas em ruído aleatório. A imagem original não pode ser reconhecida a partir da saída repleta de ruído. Através do controle fino desse processo, o modelo aprende e entende a estrutura subjacente das imagens.

Difusão para Trás

Durante a fase de difusão para trás, a Difusão Estável realiza a inversão do processo da difusão para frente, começando do ruído aleatório e eliminando gradualmente o ruído para sintetizar uma imagem que corresponda à mensagem de texto fornecida. Essa fase é crucial, pois utiliza a representação aprendida para guiar a reconstrução do ruído em conteúdo visual coerente. Por meio de uma série de iterações, o modelo ajusta detalhes, cores, formas e texturas, garantindo que os resultados gerados sejam consistentes com a descrição textual.

Preditora de Ruído (U-Net)

A preditora de ruído é a chave para o desruído das imagens. A Difusão Estável usa um modelo U-Net para esse processo de desruído. O U-Net foi originalmente projetado para a segmentação de imagens biomédicas, e a Difusão Estável emprega um modelo de rede neural residual (ResNet) desenvolvido no campo da visão por computador. O U-Net pode lidar de forma eficaz tanto com a estrutura geral quanto com detalhes finos, garantindo que as imagens geradas se ajustem de perto às exigências do usuário.

Condicional de Texto

O condicional de texto é a forma mais comum de ajuste de mensagens. O tokenizador CLIP analisa cada palavra na mensagem de texto e incorpora os dados em um vetor de 768 valores. Até 75 tokens podem ser utilizados na mensagem. A Difusão Estável transfere essas mensagens do codificador de texto para a preditora de ruído U-Net por meio de um transformador de texto. Ao definir a semente com um gerador de números aleatórios, diferentes imagens podem ser geradas no espaço latente, garantindo que as saídas não sejam meramente aleatórias, mas estejam intimamente relacionadas aos temas, conteúdos e estilos da descrição textual de entrada.

O Que a Difusão Estável Pode Fazer?

Em termos de geração de texto para imagem, a Difusão Estável representa um avanço tecnológico significativo. Comparado a outros modelos de texto para imagem, a Difusão Estável é mais aberta e exige menos capacidades de processamento. Suas funções incluem:

  • Geração de Texto para Imagem: Este é o uso mais comum da Difusão Estável. Os usuários simplesmente inserem mensagens de texto para gerar imagens e podem criar diferentes efeitos ajustando a semente do gerador aleatório ou modificando o cronograma de desruído.
  • Geração de Imagem para Imagem: Ao combinar uma imagem de entrada e mensagens de texto, os usuários podem gerar novas imagens baseadas nas existentes, geralmente começando com um esboço.
  • Criação de Gráficos, Ilustrações e Logotipos: Com diversas mensagens, os usuários podem criar ilustrações e logotipos em vários estilos. Embora os esboços possam guiar a criação, a saída final pode ser imprevisível.
  • Edição e Restauração de Imagens: A Difusão Estável também pode ser utilizada para a edição e restauração de imagens. Após carregar imagens em um editor de IA, os usuários podem cobrir partes que desejam modificar com uma ferramenta de borracha, e então usar mensagens geradas para definir os alvos de edição ou redesenho, como restaurar fotos antigas, remover objetos de imagens, alterar características de sujeitos e adicionar novos elementos.
  • Criação de Vídeos: Com funcionalidades como Deforum, a Difusão Estável também pode criar clipes curtos de vídeo e animações, inclusive adicionando diferentes estilos a filmes. Criar animações a partir de imagens estáticas simulando efeitos de movimento (como água fluindo) é outra aplicação.

Por Que Treinar Seu Próprio Modelo?

Ajustar o modelo base da Difusão Estável pode permitir que você gere imagens mais especializadas adaptadas a necessidades ou estilos específicos, permitindo personalização e refinamento. Um método comumente utilizado para ajustar o modelo é o Dreambooth, onde você pode treinar o modelo base usando conjuntos de dados suplementares focados em temas específicos (como vida selvagem), permitindo que o modelo ajustado gere imagens que se alinham de perto com os resultados esperados com um esforço mínimo, alcançando maior precisão e consistência de estilo.

Esse processo de ajuste transforma o modelo base geral em um modelo dedicado que pode compreender e reproduzir estilos visuais ou temas específicos com alta fidelidade. Técnicas avançadas para criar modelos ajustados (como a atenção local do LoRA e LyCORIS) afinam ainda mais o foco do modelo para gerar imagens com estilos muito específicos. Por exemplo, os usuários podem injetar personagens de ficção em visuais, modificar trajes de personagens, adicionar elementos específicos ao fundo ou incorporar objetos como carros e edifícios. Jake Dahn demonstrou como usar LoRA para ajustar o modelo com imagens que ele mesmo capturou, gerando autorretratos detalhados em diversos estilos. image.png

Use XXAI para Otimizar Sua Infraestrutura de IA

XXAI pode automatizar a gestão de recursos e a orquestração, reduzindo o custo da infraestrutura necessária para treinar modelos de linguagem de grande escala (LLM) e outros modelos intensivos em cálculo. Com o XXAI, os usuários podem executar automaticamente qualquer número de experimentos intensivos em recursos conforme necessário. Na próxima atualização do produto, o XXAI continuará a integrar 13 modelos populares de IA, incluindo Perplexity e Grok 2, com base em 5 modelos de IA existentes, enquanto mantém o preço inalterado (tão baixo quanto $9,99 por mês), permitindo que os usuários resolvam vários problemas de forma integrada, melhorando ainda mais a experiência do usuário e as capacidades de resolução de problemas. Essa capacidade integrada oferecerá mais opções e flexibilidade aos usuários, permitindo que sejam mais ágeis em ambientes complexos de aprendizado de máquina.