GDG DevFest
Cerrado 2017
Deep Learning com Python
e TensorFlow
GDG DevFest
Cerrado 2017
Sandro Moreira
Organizer GDG Rio Verde
Professor UniRV - Universidade de Rio Verde
+SandroMoreiraGO
@sandro_moreira
GDG DevFest
Cerrado 2017
Deep Learning 101
GDG DevFest
Cerrado 2017
Situando…
• IA -Estratégias de busca (Jogos em Tabuleiro, Busca
de alvo em labirinto
• ML - Aprendizagem, Redes Neurais Artificiais, Data
Minning, Agentes
• DL - Técnicas para treinar RNA's
GDG DevFest
Cerrado 2017
Redes Neurais Artificiais
• Modelos matemáticos inspirados em neurônios biológicos
• Anos 2000: Normalmente de 2 ou 3 camadas
• Quando se aumentavam as camadas para 4, 5, 10, 20… os
algoritmos de treinamento (Ex: backpropagation) não
convergiam
GDG DevFest
Cerrado 2017
GDG DevFest
Cerrado 2017
GDG DevFest
Cerrado 2017
Redes Neurais Profundas
• 2006 - Máquina Restrita de Boltzman (RBM)
• Quantidades arbitrárias de camadas
• Nasce o "Deep Learning”
GDG DevFest
Cerrado 2017
Deep Learning
• Maior Acurácia
• Arquitetura (CPU e GPU)
• Processamento Distribuído
• Design da Rede
• Otimização de parâmetros
GDG DevFest
Cerrado 2017
Redes Neurais Profundas
GDG DevFest
Cerrado 2017
Deep Learning
GDG DevFest
Cerrado 2017
Arquitetura de Neural Convolucional
GDG DevFest
Cerrado 2017
Arquitetura de Neural Convolucional
GDG DevFest
Cerrado 2017
Arquitetura de Neural Convolucional
GDG DevFest
Cerrado 2017
Exemplos de Arquiteturas
GDG DevFest
Cerrado 2017
Exemplos de Arquiteturas
GDG DevFest
Cerrado 2017
Como começar?
GDG DevFest
Cerrado 2017
Python 101
GDG DevFest
Cerrado 2017
GDG DevFest
Cerrado 2017
Google TensorFlow
• Biblioteca Open Source mantida pela Google
para Machine Learning / Deep Learning
• Tensores: Matrizes multidimensionais e
operações com grafos (arestas e vértices)
• Flow: Operações que modificam tensores
enviados para próximas operações que
modificam outros tensores
• Gráficos (TensorBoard)
• Modelos de arquiteturas
GDG DevFest
Cerrado 2017
Como obter o Google TensorFlow?
Windows: use docker!
Passo a passo em: http://bit.ly/1VoyDKL
Linux e Mac: um simples "pip install” já
resolve!
Ref: http://bit.ly/2fISO86
Nota: recomenda-se utilizar o TF com outros
pacotes (Pandas, Numpy,Scikit-learn). Dica: use o
Anaconda http://bit.ly/1RudtK3
GDG DevFest
Cerrado 2017
Utilizando Google TensorFlow
import tensorflow as tf
x = tf.Variable([1.0, 2.0])
z = 2 * x
sess = tf.Session()
init = tf.global_variables_initializer()
sess.run(init)
print("x = ", sess.run(x))
print("z = 2 * x = ", sess.run(z))
GDG DevFest
Cerrado 2017
Utilizando Google TensorFlow
Suponha que nós tenhamos uma Rede Neural
com uma camada oculta:
Podemos representá-la com o seguinte gráfico:
GDG DevFest
Cerrado 2017
Utilizando TensorBoard - TF
GDG DevFest
Cerrado 2017
Gráfico TensorBoard
GDG DevFest
Cerrado 2017
Exemplos:
GDG DevFest
Cerrado 2017
Exemplos:
GDG DevFest
Cerrado 2017
Caso de Uso: DeepCardio
GDG DevFest
Cerrado 2017
Caso de Uso: DeepCardio
• Diagnosticar possíveis doenças cardiovasculares por
meio de gravação da ausculta cardíaca;
• Desenvolvido durante a disciplina de Redes Neurais
Artificiais no programa de pós-graduação Doutorado
em Ciência da Computação da UFG (2017/1);
• RNA Convolucional Inception
• Python, TensorFlow, Java (UI)
• Treinada com mais de 4.000 gravações de corações
saudáveis e patológicos - Acurácia: 86%
GDG DevFest
Cerrado 2017
Sandro Moreira
Organizer GDG Rio Verde
Professor UniRV - Universidade de Rio Verde
+SandroMoreiraGO
@sandro_moreira
Dúvidas?

Devfest cerrado2017