Geração de Dados com Generative
Adversarial Network (GAN)
Claudio Filipi Gonçalves dos Santos
The Data
1
O que é Deep Learning?
Redes Neurais Artificiais com muitas camadas
2
O que é Deep Learning?
Parte do Zoo
3
O que fazer com Deep Learning?
4
Modelos Discriminativos
Classificadores
- Dada uma entrada
- Classifica o dado entre as possíveis classes do modelo
5
Modelos Discriminativos
6
Gradient-Based Learning Applied to Document Recognition -
http://yann.lecun.com/exdb/publis/pdf/lecun-01a.pdf
Modelos Generativos
Geradores de dados
- Identificam características da entrada
- Cria um novo dado a partir dessas características
7
Modelos Generativos
8
Learning Deconvolution Network for Semantic Segmentation -
https://arxiv.org/abs/1505.04366
Modelos Generativos
Chatbots!
- Texto de entrada
- Gera-se uma resposta conveniente
9
O que são GAN's?
Combinação do modelo generativo com o modelo discriminativo
- Dado gerado por modelo generativo
- Modelo discriminativo verifica se o dado gerado está bom
10
Generative Adversarial
- Modelo generativo tenta enganar o modelo discriminativo
- Modelo discriminativo trabalha para não ser enganado
11
Como treinar?
Em cada época:
- Treina-se o discriminador com imagens reais e imagens geradas pelo gerador
- Treina-se a pilha de gerador e discriminador
- O GERADOR NÃO É TREINADO SOZINHO!
12
Código?
(Keras)
13
Modelo Generativo
14
Modelo Discriminativo
15
Treinamento - Discriminador
16
Treinamento - Gerador
17
Treinamento - Combinado
18
Resultados?
Original
19
Resultados?
Época 0
20
Resultados?
Época 300
21
Resultados?
Época 7500
22
Resultados?
Época 29100
23
Resultados?
Evolução
24
Só gerar números?
25
Generative Adversarial
Networks
Praticamente uma nova família
dentro de Deep Learning
26
O que mais pode ser feito com GAN?
27
Copiar Estilos de
Objetos
Transferir os estilos de um objeto
para um outro totalmente diferente
● Criação de novos objetos que
combinem
● Algo parecido com a imaginação?
28
Learning to Discover Cross-Domain Relations with Generative
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
29
Learning to Discover Cross-Domain Relations with Generative
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
30
Learning to Discover Cross-Domain Relations with Generative
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
Resultados:
31
Learning to Discover Cross-Domain Relations with Generative
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
Resultados:
Copiar Estilos de
Cenários
Transferir os estilos de um cenário
para um outro totalmente diferente
● Criação de arte
32
Unpaired Image-to-Image Translation using Cycle-Consistent
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
33
Unpaired Image-to-Image Translation using Cycle-Consistent
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
34
Unpaired Image-to-Image Translation using Cycle-Consistent
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
Resultados:
35
Unpaired Image-to-Image Translation using Cycle-Consistent
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
Resultados:
36
Unpaired Image-to-Image Translation using Cycle-Consistent
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
Resultados:
37
Unpaired Image-to-Image Translation using Cycle-Consistent
Adversarial Networks - https://arxiv.org/pdf/1703.05192.pdf
Resultado Falho:
Sintetização de
Imagens a partir de
Texto
A partir de um texto, criar uma
imagem
2 GAN's:
● Uma converte texto em imagem
de baixa resolução
● Outra melhora a qualidade dessa
imagem
38
StackGAN: Text to Photo-realistic Image Synthesis with Stacked
Generative Adversarial Networks - https://arxiv.org/abs/1612.03242
39
StackGAN: Text to Photo-realistic Image Synthesis with Stacked
Generative Adversarial Networks - https://arxiv.org/abs/1612.03242
40
StackGAN: Text to Photo-realistic Image Synthesis with Stacked
Generative Adversarial Networks - https://arxiv.org/abs/1612.03242
Resultados:
41
StackGAN: Text to Photo-realistic Image Synthesis with Stacked
Generative Adversarial Networks - https://arxiv.org/abs/1612.03242
Resultados:
Outros Trabalhos
42
Muitos papers/pesquisa mas
E na prática?
43
Possibilidades
Jogos
Ajudar e agilizar criação de jogos:
● Elaboração de cenários a partir de
rascunhos
● Alternativas de novos cenários a partir
de cenários já existentes
Design
Muita criatividade:
● Alternativa de designs para websites
● Demonstração de design de interiores
para salas
44
Possibilidades
Engenharia
Novas construções/produtos:
● Desenho de novos prédios
● Criação de novos motores a partir de
desenho de motores já conhecidos
Biologia
Ajuda em pesquisa:
● Mapeamento genético
● Elaboração de novos medicamentos
45
Onde consigo isso
tudo?
Apenas exemplificando o que é
possível tentar fazer
● Há alguns anos nem se
imaginava isso
● Possíveis pesquisas?
46
Lembrando:
Falado Apenas sobre Generative Adversarial Networks
● Que é um tópico dentro de Deep Learning
● Que é um tópico dentro de Machine Learning
O que mais vem por ai?
47
48
Referências
Paper Original
Generative Adversarial Nets -
https://arxiv.org/pdf/1406.2661v1.pdf
Youtube
Siraj Raval -
https://www.youtube.com/channel/UCWN3xxRkmT
PmbKwht9FuE5A
49
Código Completo
Github - https://github.com/cfsantos/GAN
PERGUNTAS?
50
OBRIGADO!
Claudio Filipi Gonçalves dos Santos,
CEO & Data Scientist @ THE DATA
claudio@thedata.com.br
www.thedata.com.br
Linkedin -
https://www.linkedin.com/in/cfsantos8
5/
51

InterCon 2017 - Geração de dados com Generative Adversarial Network (GAN) - Claudio Santos