Nos últimos anos, os modelos generativos chamados “modelos de difusão” tornaram-se cada vez mais populares, e com razão.
O mundo viu do que os modelos de difusão são capazes, como superar GANs na síntese de imagens, graças a algumas poucas publicações de referência publicadas apenas nas décadas de 2020 e 2021.
Praticantes mais recentemente viram o uso de modelos de difusão em DALL-E2, modelo de criação de imagens da OpenAI que foi publicado no mês passado.
Muitos praticantes de Machine Learning estão, sem dúvida, curiosos sobre o funcionamento interno dos Modelos de Difusão, devido à recente onda de sucesso.
Neste post, veremos os fundamentos teóricos dos Modelos de Difusão, seu design, suas vantagens e muito mais. Vamos indo.
O que é o modelo de difusão?
Vamos começar descobrindo por que esse modelo é chamado de modelo de difusão.
Uma palavra relacionada à termodinâmica nas aulas de física é chamada de difusão. Um sistema não está em equilíbrio se houver uma grande concentração de um material, como um cheiro, em um local.
A difusão deve ocorrer para que o sistema entre em equilíbrio. As moléculas do perfume se difundem por todo o sistema a partir de uma região de maior concentração, tornando o sistema uniforme por toda parte.
Tudo eventualmente se torna homogêneo devido à difusão.
Os modelos de difusão são motivados por esta condição de não equilíbrio termodinâmico. Os modelos de difusão usam uma cadeia de Markov, que é uma série de variáveis em que o valor de cada variável depende do estado do evento anterior.
Tirando uma foto, adicionamos sucessivamente uma quantidade específica de ruído a ela durante toda a fase de difusão direta.
Depois de armazenar a imagem mais ruidosa, passamos a criar a imagem subsequente na série introduzindo ruído adicional.
Várias vezes, esse procedimento é feito. Uma imagem de ruído puro resulta da repetição deste método algumas vezes.
Como, então, podemos criar uma imagem a partir dessa imagem desordenada?
O processo de difusão é revertido usando um rede neural. As mesmas redes e os mesmos pesos são usados no processo de difusão reversa para criar a imagem de t para t-1.
Em vez de deixar a rede antecipar a imagem, pode-se tentar prever o ruído a cada passo, que deve ser removido da imagem, para simplificar ainda mais a tarefa.
Em qualquer cenário, o projeto de rede neural deve ser selecionado de forma a manter a dimensionalidade dos dados.
Mergulho Profundo no Modelo de Difusão
Os componentes de um modelo de difusão são um processo direto (também conhecido como processo de difusão), no qual um dado (geralmente uma imagem) é gradualmente ruidoso, e um processo reverso (também conhecido como processo de difusão reversa), no qual o ruído é convertido novamente em uma amostra da distribuição de destino.
Quando o nível de ruído é baixo o suficiente, as gaussianas condicionais podem ser usadas para estabelecer as transições da cadeia de amostragem no processo direto. Uma parametrização fácil do processo direto resulta do acoplamento desse conhecimento com a suposição de Markov:
q(x1:T |x0) := YT t=1 q(xt|xt−1), q(xt|xt−1) := N (xt; p 1 − βtxt−1, βtI)
Aqui 1…T é um esquema de variância (aprendido ou fixo) que assegura, para T suficientemente alto, que xT é virtualmente uma Gaussiana isotrópica.
O processo oposto é onde a mágica do modelo de difusão acontece. O modelo aprende a reverter esse processo de difusão durante o treinamento para produzir novos dados. O modelo aprende a distribuição conjunta como (x0:T) o resultado de começar com a equação de ruído gaussiana pura
(xT):=N(xT,0,I).
pθ(x0:T ) := p(xT ) YT t=1 pθ(xt−1|xt), pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ( xt, t))
onde os parâmetros dependentes do tempo das transições gaussianas são descobertos. Em particular, observe como a formulação de Markov afirma que uma determinada distribuição de transição de difusão reversa depende exclusivamente do passo de tempo anterior (ou passo de tempo subsequente, dependendo de como você o analisa):
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t))
Treinamento de modelo
Um modelo de Markov reverso que maximiza a probabilidade dos dados de treinamento é usado para treinar um modelo de difusão. Praticamente falando, o treinamento é análogo à redução do limite superior variacional da probabilidade logarítmica negativa.
E [− log pθ(x0)] ≤ Eq − log pθ(x0:T ) q(x1:T |x0) = Eq − log p(xT ) − X t≥1 log pθ(xt−1|xt) q (xt|xt−1) =: L
Modelos
Agora precisamos decidir como executar nosso Modelo de Difusão após estabelecer os fundamentos matemáticos de nossa função objetivo. A única decisão necessária para o processo de encaminhamento é determinar o cronograma de variação, cujos valores normalmente aumentam durante o procedimento.
Consideramos fortemente o uso da parametrização de distribuição gaussiana e arquitetura de modelo para o procedimento reverso.
A única condição de nosso projeto é que tanto a entrada quanto a saída tenham as mesmas dimensões. Isso sublinha o enorme grau de liberdade que os Modelos de Difusão fornecem.
Abaixo, vamos aprofundar essas opções.
Processo de encaminhamento
Devemos fornecer o cronograma de variação em relação ao processo de encaminhamento. Nós as definimos especificamente como constantes dependentes do tempo e desconsideramos a possibilidade de que elas possam ser aprendidas. Um cronograma cronológico de
β1 = 10−4 a βT = 0.02.
Lt torna-se uma constante em relação ao nosso conjunto de parâmetros apreensíveis devido ao cronograma de variância fixo, permitindo-nos desconsiderá-lo durante o treinamento, independentemente dos valores específicos selecionados.
Processo reverso
Passamos agora às decisões necessárias para definir o processo inverso. Lembre-se de como descrevemos as transições reversas de Markov como gaussianas:
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t))
Agora que identificamos os tipos funcionais. Apesar de existirem técnicas mais complexas para parametrizar, acabamos de definir
Σθ(xt, t) = σ 2 t I
σ2t = βt
Em outras palavras, consideramos a gaussiana multivariada como o resultado de gaussianas separadas com a mesma variância, um valor de variância que pode flutuar ao longo do tempo. Esses desvios são definidos para corresponder ao cronograma de desvios do processo de encaminhamento.
Como resultado desta nova formulação, temos:
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t)) :=N (xt−1; µθ (xt, t), σ2 t I)
Isso resulta na função de perda alternativa mostrada abaixo, que os autores descobriram que produz um treinamento mais consistente e resultados superiores:
Lsimples(θ) := Et,x0, h − θ( √ α¯tx0 + √ 1 − α¯t, t) 2
Os autores também traçam conexões entre esta formulação de modelos de difusão e modelos generativos de correspondência de pontuação baseados em Langevin. Tal como acontece com o desenvolvimento independente e paralelo da física quântica baseada em ondas e da mecânica quântica baseada em matriz, que revelou duas formulações comparáveis dos mesmos fenômenos, parece que os modelos de difusão e os modelos baseados em pontuação podem ser dois lados da mesma moeda.
Arquitetura de rede
Apesar do fato de que nossa função de perda condensada visa treinar um modelo Σθ, ainda não decidimos sobre a arquitetura deste modelo. Tenha em mente que o modelo simplesmente precisa ter as mesmas dimensões de entrada e saída.
Dada essa restrição, provavelmente não é inesperado que arquiteturas do tipo U-Net sejam frequentemente usadas para criar modelos de difusão de imagens.
Inúmeras mudanças são feitas ao longo da rota do processo reverso usando distribuições gaussianas condicionais contínuas. Lembre-se de que o objetivo do procedimento inverso é criar uma imagem composta de valores de pixels inteiros. A determinação de probabilidades discretas (log) para cada valor de pixel potencial em todos os pixels é, portanto, necessária.
Isso é feito atribuindo um decodificador discreto separado para a última transição da cadeia de difusão reversa. estimando a chance de uma determinada imagem x0 dado x1.
pθ(x0|x1) = YD i=1 Z δ+(xi 0 ) δ−(xi 0 ) N (x; µ i θ (x1, 1), σ2 1 ) dx
δ+(x) = ∞ se x = 1 x + 1 255 se x < 1 δ−(x) = −∞ se x = −1 x − 1 255 se x > −1
onde o sobrescrito I denota a extração de uma coordenada e D denota o número de dimensões nos dados.
O objetivo neste ponto é estabelecer a probabilidade de cada valor inteiro para um pixel específico dada a distribuição de valores potenciais para aquele pixel no tempo variável. t = 1.
Objetivo final
Os maiores resultados, de acordo com os cientistas, vieram da previsão do componente de ruído de uma imagem em um determinado intervalo de tempo. No final, eles empregam o seguinte objetivo:
Lsimples(θ) := Et,x0, h − θ( √ α¯tx0 + √ 1 − α¯t, t) 2
Na imagem a seguir, os procedimentos de treinamento e amostragem para nosso modelo de difusão são descritos de forma concisa:
Benefícios do Modelo de Difusão
Como já foi indicado, a quantidade de pesquisas sobre modelos de difusão se multiplicou recentemente. Os modelos de difusão agora oferecem qualidade de imagem de última geração e são inspirados pela termodinâmica de não equilíbrio.
Os Modelos de Difusão oferecem uma variedade de outras vantagens, além de terem qualidade de imagem de ponta, como não exigir treinamento de adversários.
As desvantagens do treinamento adversário são amplamente conhecidas, portanto, muitas vezes é preferível escolher alternativas não adversas com desempenho e eficácia de treinamento equivalentes.
Os modelos de difusão também oferecem as vantagens de escalabilidade e paralelização em termos de eficácia do treinamento.
Embora os Modelos de Difusão pareçam gerar resultados aparentemente do nada, a base para esses resultados é estabelecida por várias sutilezas e decisões matemáticas interessantes e ponderadas, e as melhores práticas do setor ainda estão sendo desenvolvidas.
Conclusão
Em conclusão, os pesquisadores demonstram resultados de síntese de imagens de alta qualidade utilizando modelos probabilísticos de difusão, uma classe de modelos de variáveis latentes motivados por ideias da termodinâmica de não equilíbrio.
Eles alcançaram coisas tremendas graças aos seus resultados de última geração e treinamento não adversário e, devido à sua infância, mais avanços podem ser antecipados nos próximos anos.
Particularmente, descobriu-se que os modelos de difusão são cruciais para a funcionalidade de modelos avançados como o DALL-E 2.
Aqui você pode acessar a pesquisa completa.
Deixe um comentário