Antecedentes: O que é um Modelo Generativo?

O que significa “generativo” no nome “Generative Adversarial Network”? “Generativo” descreve uma classe de modelos estatísticos que contrasta modelos retirativos.

Informalmente:

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

Um modelo generativo pode gerar novas fotos de animais que se parecem com animais reais, enquanto um modelo discriminativo pode distinguir um cão de um gato. GANs são apenas um tipo de modelo generativo.

Mais formalmente, dado um conjunto de instâncias de dados X e um conjunto de etiquetas Y:

  • Modelos generativos capturam a probabilidade conjunta p(X, Y), ou apenasp(X) se não houver etiquetas.
  • Modelos discriminativos capturam a probabilidade condicional p(Y | X).

Um modelo generativo inclui a distribuição dos dados em si, e diz-lhe como é provável que um dado exemplo seja. Por exemplo, modelos que prevêem a próxima palavra em sequência são tipicamente modelos generativos (normalmente muito mais simples do que GANs) porque podem atribuir uma probabilidade a uma sequência de palavras.

Um modelo discriminativo ignora a questão de se uma dada instância é provável, e apenas lhe diz como é provável que uma etiqueta seja aplicada à substância.

Note que esta é 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 tem que retornar um número representando a aprobabilidade. Você pode modelar a distribuição de dados imitando essa distribuição.

Por exemplo, um classificador discriminativo como uma árvore de decisão pode rotular uma instância sem atribuir uma probabilidade a essa etiqueta. Tal classificador ainda seria um modelo bonito porque a distribuição de todas as etiquetas previstas modelaria a distribuição real das etiquetas nos dados.

Simplesmente, um modelo generativo pode modelar uma distribuição produzindo dados “falsos” convincentes que parecem ser extraídos dessa distribuição.

Modelos generativos são difíceis

Modelos generativos abordam uma tarefa mais difícil do que os modelos discriminatórios análogos. Modelos generativos têm que modelar mais.

Um modelo generativo para imagens pode capturar correlações como “coisas que parecem barcos provavelmente vão aparecer perto de coisas que parecem água” e “é improvável que os olhos apareçam na testa”. Estas são distribuições vericomplicadas.

Em contraste, um modelo discriminativo pode aprender a diferença entre “veleiro” ou “não veleiro”, procurando apenas alguns padrões de contos. Poderia ignorar muitas das correlações que o modelo generativo deve ter.

Modelos discriminatórios tentam traçar limites no espaço de dados, enquanto 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 manuscritos:

Dois gráficos, um rotulado 'Modelo Discriminativo' e o outro rotulado 'Modelo Generativo'. Ambos os gráficos mostram os mesmos quatro datapoints. Cada ponto é etiquetado com a imagem do dígito escrito à mão que representa. No gráfico discrimininativo há uma linha pontilhada que separa dois pontos de dados dos dois restantes. A região acima da linha pontilhada é rotulada 'y=0' e a região abaixo da linha é rotulada 'y=1'. No gráfico generativo dois círculos com linhas pontilhadas são desenhados em torno dos dois pares de pontos. O círculo superior é rotulado 'y=0' e o inferior é rotulado 'y=1

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

O modelo discriminativo tenta dizer a diferença entre os 0’areia 1’s escritos à mão desenhando uma linha no espaço de dados. Se ele acertar a linha, ele candistingue 0’s de 1’s sem nunca ter que modelar exatamente onde as substâncias são colocadas no espaço de dados de cada lado da linha.

Em contraste, o modelo generativo tenta produzir dígitos 1’s e 0’s convincentes, gerando dígitos que caem perto de seus equivalentes reais no espaço de dados. Ele tem que modelar a distribuição ao longo do espaço de dados.

GANs oferecem uma maneira eficaz de treinar modelos tão ricos para se assemelharem a uma distribuição real. Para entender como eles funcionam, precisaremos entender a estrutura básica de um GAN.

Check Your Understanding: Modelos Generativos vs. Discriminativos

Você tem pontuação de QI para 1000 pessoas. Você modela a distribuição das pontuações de QI com o seguinte procedimento:

  1. Rolar três dados de seis lados.
  2. Multiplicar o rolo por uma constante w.
  3. Repite 100 vezes e pegue a média de todos os resultados.

Você tenta valores diferentes para w até que o resultado do seu procedimento seja igual à média das pontuações reais de QI. O seu modelo é um modelo generativo ou um modelo discriminativo?

Modelo generativo
Correto: com cada rolo você está efetivamente gerando o QI de uma pessoa imaginária. Além disso, o seu modelo generativo captura o facto de as pontuações de QI estarem distribuídas normalmente (ou seja, numa curva de sino).

Modelo discriminatório
Incorreto: um modelo discriminativo análogo tentaria discriminar entre diferentes tipos de pontuação de QI. Por exemplo, um modelo discriminativo poderia tentar classificar um QI como falso ou real.

Não há informação suficiente para dizer.
Este modelo de facto encaixa na definição de um dos nossos dois tipos de modelos.

Um modelo retorna uma probabilidade quando você lhe dá uma instância de dados. Este modelo é um modelo generativo ou um modelo discriminativo?
Modelo generativo
Um modelo generativo pode estimar a probabilidade da instância, e também a probabilidade de um rótulo 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ção suficiente para dizer.
Bambos modelos generativos e discriminatórios podem estimar probabilidades (mas não têm de o fazer).

Leave a Reply