Contexto: o que é um modelo generativo?

O que significa "generativo" no nome "Gerativa Adversarial Network"? "Generativo" descreve uma classe de modelos estatísticos que contrasta com modelos discriminativos.

Internamente:

  • Modelos generativos podem gerar novas instâncias de dados.
  • Modelos discriminantes discriminam entre tipos diferentes de instâncias de dados.

Um modelo generativo pode gerar novas fotos de animais que parecem animais reais, enquanto um modelo discriminatório pode diferenciar um cachorro de um gato. GANs são apenas um tipo de modelo generativo.

Mais formalmente, considerando um conjunto de instâncias de dados X e um conjunto de rótulos Y:

  • Os modelos generativos capturam a probabilidade conjunta p(X, Y) ou apenas p(X) se não houver rótulos.
  • Modelos discriminantes capturam a probabilidade condicional p(Y | X).

Um modelo generativo inclui a distribuição dos próprios dados e informa a probabilidade de um determinado exemplo. Por exemplo, os modelos que preveem a próxima palavra em uma sequência normalmente são modelos generativos (geralmente muito mais simples que os GANs) porque podem atribuir uma probabilidade a uma sequência de palavras.

Um modelo discriminatório ignora a pergunta se uma determinada instância é provável e apenas informa a probabilidade de um rótulo ser aplicado à instância.

Essa é uma definição muito geral. Existem muitos tipos de modelos generativos. GANs são apenas um tipo de modelo generativo.

Probabilidades de modelagem

Nenhum dos tipos de modelo precisa retornar um número que represente uma probabilidade. Você pode modelar a distribuição de dados imitando essa distribuição.

Por exemplo, um classificador discriminatório como uma árvore de decisões pode rotular uma instância sem atribuir uma probabilidade a esse rótulo. Esse classificador ainda seria um modelo porque a distribuição de todos os rótulos previstos modelaria a distribuição real de rótulos nos dados.

Da mesma forma, um modelo generativo pode modelar uma distribuição produzindo dados convincentes de "fake" que parecem ter sido extraídos dessa distribuição.

Modelos generativos são complicados

Modelos generativos enfrentam uma tarefa mais difícil do que modelos discriminatórios análogos. Os modelos generativos precisam modelar mais.

Um modelo generativo para imagens pode capturar correlações como "quot;coisas que parecem que os barcos provavelmente aparecerão perto de coisas que parecem água',"e "olhos não devem aparecer na testa." Essas são distribuições muito complicadas.

Por outro lado, um modelo discriminatório pode aprender a diferença entre "quot;sailboat" ou "not boalboat" ao procurar apenas alguns padrões de contagem." Ele pode ignorar muitas das correlações que o modelo generativo precisa acertar.

Os modelos discriminativos tentam desenhar limites no espaço de dados, enquanto os modelos generativos tentam modelar como os dados são colocados em todo o espaço. Por exemplo, o diagrama a seguir mostra modelos discriminatórios e generativos de dígitos manuscritos:

Dois gráficos, um rotulado como 'modelo discrimativo'
          e o outro rotulado como 'modelo generativo'. Os dois gráficos mostram os mesmos quatro pontos de dados. Cada ponto é rotulado com a imagem
          do dígito escrito à mão que ele representa. No gráfico
          discriminatório, há uma linha pontilhada que separa dois pontos de dados dos
          outros dois. A região acima da linha pontilhada é identificada como ##9;y=0' e
          a região abaixo da linha é identificada como 'y=1' No gráfico generativo, dois círculos de linha pontilhada são desenhados ao redor dos dois pares de pontos. O
          círculo superior é rotulado como 'y=0' e o círculo inferior é rotulado 'y=1

Figura 1: modelos discriminatórios e generativos de dígitos escritos à mão.

O modelo discriminatório tenta diferenciar entre 0&s 3 escrito à mão e 1's traçando uma linha no espaço de dados. Se a linha estiver correta, é possível distinguir 0's 1's sem ter que modelar exatamente onde as instâncias são colocadas no espaço de dados em qualquer lado da linha.

Por outro lado, o modelo generativo tenta produzir 1's e 0's convincentes gerando dígitos que se aproximam dos pares reais deles no espaço de dados. Ela precisa modelar a distribuição em todo o espaço de dados.

As GANs oferecem uma maneira eficaz de treinar esses modelos avançados para se assemelhar a uma distribuição real. Para entender como eles funcionam, precisamos entender a estrutura básica de uma GAN.

Verifique seu conhecimento: modelos generativos versus discriminativos

Você tem pontuações IQ para 1.000 pessoas. Você modela a distribuição de pontuações de IQ com o seguinte procedimento:
  1. Lance três dados de seis lados.
  2. Multiplicar a jogada por uma constante w.
  3. Repita 100 vezes e veja a média de todos os resultados.
Você tenta diferentes valores para w até que o resultado do seu procedimento seja igual à média das pontuações reais de IQ. Seu modelo é um modelo generativo ou discriminatório?
Modelo generativo
Correto: em cada jogada, você está gerando o IQ de uma pessoa imaginária. Além disso, seu modelo generativo captura o fato de que as pontuações de IQ são distribuídas normalmente (ou seja, em uma curva de sino).
Modelo discriminatório
Incorreto: um modelo discriminatório analógico tentaria diferenciar entre diferentes tipos de pontuações de IQ. Por exemplo, um modelo discriminatório pode tentar classificar um IQ como falso ou real.
Não há informações suficientes para fornecer.
Esse modelo realmente se encaixa na definição de um dos nossos dois tipos de modelo.
Um modelo retorna uma probabilidade quando ele recebe uma instância de dados. Este modelo é generativo ou discriminatório?
Modelo generativo
Um modelo generativo pode estimar a probabilidade da instância e a probabilidade de um identificador de classe.
Modelo discriminatório
Um modelo discriminatório pode estimar a probabilidade de uma instância pertencer a uma classe.
Não há informações suficientes para fornecer.
Os modelos generativos e discriminatórios podem estimar probabilidades, mas não precisam fazer isso.