Artificial Neural Network">
(PDF) (Aula 6) Redes Neurais e Deep Learning
(PDF) (Aula 6) Redes Neurais e Deep Learning
(PDF) (Aula 6) Redes Neurais e Deep Learning
Aprendizado deDados
Máquina
Introdução
Redes Neurais e Deep Learning
MATERIAL CONFIDENCIAL
Olá!
Meu nome é Gabriel Campos
CONTATOS FORMAÇÃO
gabriel.campos@hekima.com Bacharel e mestrando em Ciência da
Computação
Especialista em Gestão de Negócios
REDES SOCIAIS
twitter.com/gcouti
ESPECIALIDADES
github.com/gcouti
Aprendizado de Máquina
Gabriel Campos linkedin.com/in/gcouti
Processamento de Linguagem Natural
Cientista de Dados e
Co-fundador da Hekima Gestão de Negócios
Agenda
1. Introdução
2. Redes Neurais Artificiais
3. Deep Learning
4. Tipos de redes profundas
5. Aplicações
Introdução
O que são redes neurais?
Dendritos
As redes neurais são paradigmas de
aprendizado de máquina que se inspiraram
no cérebro dos animais
“Neurônios Formais” - Trabalho que tenta fazer uma analogia entre células nervosas vivas e sistemas
eletrônicos [McCulloch, Pitts 1943]
1 w0
x1 w1
sign( WTX) y
...
xm wm
Axônio
http://natureofcode.com/
Perceptron
1 w0
x1 w1
sign( WTX) y
...
xm wm
Perceptron
x1
y
x2
1
1.5
-0.6
x2 y
-1.02
x2
soma :
vai um :
Multi Layer Perceptron
1
soma :
1
vai um :
Multi Layer Perceptron
1
1
soma :
1
1
vai um :
Multi Layer Perceptron
1
1
soma :
1
1
vai um :
Multi Layer Perceptron
0 soma :
0
1 0
vai um :
0
Multi Layer Perceptron
1
soma :
1
0
vai um :
0
Multi Layer Perceptron
1
soma : 0
1
0
vai um :
1
0
Multi Layer Perceptron
x1
soma : soma :
vai um :
x2
vai um :
Multi Layer Perceptron
w + Δw
saída + Δsaída
Neuronio Logístico
saída + Δsaída
Neuronio Logístico
σ(z) = sigmoid(z)
1 w0
x1 w1
σ( WTX) y
...
wm
xm
Outras Funções de Ativação
Camada de entrada
Arquitetura
Camadas ocultas
Arquitetura
Camada de saída
Interpretação da Saída
Interpretação da Saída
Arquitetura
Camadas ocultas
Camada de saída
Camada de entrada
Definindo uma Arquitetura
Camada de saída
Camada de entrada
Definindo uma Arquitetura
Definindo uma Arquitetura
64 pixels
...
4096 entradas
...
64 pixels
Definindo uma Arquitetura
64 pixels
...
4096 entradas
...
64 pixels
Definindo uma Arquitetura
http://yann.lecun.com/exdb/mnist/
Definindo uma Arquitetura
... 4
5
4096 entradas
... 6
9
Definindo uma Arquitetura
???? 1
... 4
5
4096 entradas
... 6
9
Feedforward Neural Network
... 4
... 6
9
Feedforward Neural Network
... 4
... 6
9
Feedforward Neural Network
... 4
... 6
9
Feedforward Neural Network
... 4
... 6
9
Descida do Gradiente
a
0 y
0
a
y
1
a
y
2
2
a
y
3
3
Descida do Gradiente
a
0 y
0
a
y
1
1
a
y
2
2
a
y
3
3
Descida do Gradiente
a
0 y
0
a
y
1
1
a
y
2
2
a
y
3
3
estimado
Descida do Gradiente
a
0 y
0
a
y
1
1
a
y
2
2
a
y
3
3
rótulos estimado
Descida do Gradiente
a
0 y
0
a
y
1
1
a
y
2
2
a
y
3
3
rótulos estimado
pesos
Descida do Gradiente
Descida do Gradiente
Descida do Gradiente
Descida do Gradiente
vetor gradiente(∇C)
Descida do Gradiente
w1 = w0 - η∇C
Descida do Gradiente
∇C
Descida do Gradiente
w2 = w1 - η∇C
Descida do Gradiente
Descida do Gradiente
Descida do Gradiente
Limitação do Método do Gradiente
a a a
1 2 a
L 0 y
y
0 0
? 0
0
a 0
2 a
a y
a L 1
1 y
1
? 1
a 1 1
1 2 a
a y
L 2
2 y
? 2
a a 2 2
1 2 a
a y
L 3
2 3 y
? 3
3 3
Backpropagation
Entrada
Saída
Velocidade de aprendizado
Mão na massa!
Deep Learning
Deep Learning
ReLU
Ativação esparsa (0 ou 1)
Não é derivável em 0
Drop-out
Batch Normalization
Um para um Um para muitos Muitos para um Muitos para muitos Muitos para muitos
Tipos de redes profundas
Zoológico das redes neurais
Saída
Entrada Backfed Neurônio escondido Recorrente
Saída
Entrada Neurônio probabilístico Memória
Kernel
Entrada Ruidosa Spiking Hidden Cell Memória diferenciada
Convolution
Zoológico das redes neurais
Saída
Entrada Backfed Neurônio escondido Recorrente
Saída / Comparativa
Entrada Neurônio probabilístico Memória
Kernel
Entrada Ruidosa Spiking Hidden Cell Memória diferenciada
Convolution
Redes de convolução
0 0 0 0 0
0 1 2 1 0
0 2 5 2 0
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
Imagem Máscara
0 1 2 1 0 0.5 0.7 1
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
0 1 2 1 0 0.5 0.7 1
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
0 1 2 1 0 0.5 0.7 1
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
0 1 2 1 0 0.5 0.7 1
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
0 1 2 1 0 0.5 0.7 1 8
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Convolução
0 1 2 1 0 0.5 0.7 1 8 8 5
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Pooling
Tipos de pooling
0 0 0 0 0
Min Pooling: 0
0 1 2 1 0
Mean Pooling: 0.25 (0)
0 2 5 2 0
Max Pooling: 1
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Pooling
Tipos de pooling
0 0 0 0 0
Min Pooling: 0
0 1 2 1 0
Mean Pooling: 0.75 (1)
0 2 5 2 0
Max Pooling: 2
0 1 2 1 0
0 0 0 0 0
Redes de convolução - Pooling
0 1 2 1 0 0 0 0 0 1 0 1 2 0
0 2 5 2 0 0 2 0 1 3 0 2 5 0
0 1 2 1 0 0 0 0 0 0 0 1 2 0
0 0 0 0 0
Redes de convolução
Redes de convolução
Autoencoders
Imagem original
Autoencoder
PCA
Embedding - Word2Vec
Exemplo
gosta 0 1 0 1 0
ler 1 0 1 0 0
livros 0 0 0 1 0
comer 1 0 0 0 1
batata 0 0 0 1 0
Embedding - Word2Vec
Mulher
Tia
Homem Operações com palavras
Rei
Redes Neurais Recorrentes
Modelo
Ruído
Generativo
Imagem
Aleatória
Modelo
Classificação
Discriminativo
Imagem
Correta
Generative Adversarial Networks
Completar imagens
Entrada Saída
Generative Adversarial Networks
Generative Adversarial Networks
Asynchronous Actor-Critic Agents (A3C)
Asynchronous Actor-Critic Agents (A3C)
Aplicações
WaveNet
● Rede de convolução
Colorindo imagens
Colorindo imagens
Mão na massa
Tensor Flow
Ferramenta opensource
Opensource em Python
Redes Neurais
http://neuralnetworksanddeeplearning.com/chap1.html
https://medium.com/@karpathy/yes-you-should-understand-backprop-e2f06eab496b
Deep Learning
http://www.asimovinstitute.org/neural-network-zoo/
http://karpathy.github.io/2015/05/21/rnn-effectiveness/
Referências
Deep Learning
https://www.youtube.com/watch?v=2-Ol7ZB0MmU (Convolução)
http://colah.github.io/posts/2015-08-Understanding-LSTMs/
http://blog.echen.me/2017/05/30/exploring-lstms/ (Snorlax)
Aplicações
https://www.ted.com/talks/fei_fei_li_how_we_re_teaching_computers_to_understand_pictu
res?language=pt-br
Atari
https://arxiv.org/pdf/1312.5602v1.pdf
WaveNet
https://deepmind.com/blog/wavenet-generative-model-raw-audio/
Nomeando Imagens
http://cs.stanford.edu/people/karpathy/cvpr2015.pdf
Referências
A3C
https://medium.com/emergent-future/simple-reinforcement-learning-with-tensorflow-part
-0-q-learning-with-tables-and-neural-networks-d195264329d0
Colorindo imagens
http://richzhang.github.io/colorization/
Sobre a Hekima
Somos uma empresa de Big Data e Inteligência
Artificial que transforma relações, organizações
e negócios por meio da utilização inteligente in
e estratégica de dados.
LIDERANÇAS EXPERIÊNCIA
Ivan M. Campos / Presidente CA Rachel Horta / CEO Marcia Asano / COO Equipe
Fundadores com mais de 9 anos
de experiência em todas as metodologias
e tecnologias de Big Data e Inteligência Artificial.
+
25
CAPACITAÇÃO TÉCNICA
PhD’s, mestres e especialistas em data science,
data engineering, inteligência artificial, machine
BH
learning, processamento de linguagem natural,
data mining, sistemas de recomendação, redes
SP complexas, qualidade e governança de dados,
matemática e estatística.
Luiz Temponi / Presidente CFO Thiago Cardoso / CTO Carolina Bigonha / CPO
Reconhecimentos
Parceiros & Iniciativas
CURSO
DE DATA
SCIENCE
HEKIMA
DEVELOPER'S
BLOG
BELO HORIZONTE SÃO PAULO
w w w . h e k i m a . com Avenida Álvares Cabral, 1315, Sala 7 Rua Casa do Ator, 919, 2 andar