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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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:
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.
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.