SlideShare uma empresa Scribd logo
1 de 39
Dismistificando
Deep Learning
Leandro Romualdo
I Fórum de tecnologia da informação
São Paulo | Maio 2018
Short bio
www.linkedin.com/in/leandroromualdo
https://twitter.com/Leandro_Romuald
http://www.datascienceinstitute.com.br/
leandroromualdosilva@gmail.com
Agenda
Deep
Learning
Redes Neurais
Frameworks
para Deep
Learning
Demo
Convolutional
Neural
Network
Perguntas
 Subcategoria de Machine learning que
trata as oportunidades de aprendizado
profundo com redes neurais profundas.
 Desenvolvida e melhorada na área
acadêmica desde a década de 50,
ganhando notoriedade nos ultímos anos.
 Em razão do poder computacional atual,
vem sendo amplamente explorada.
Cenário atual Deep learning:
Serviços da internet
• Classificação de
imagens
• Reconhecimento de fala
• NLP
Medicina diagnóstica
• Detecção de câncer
• Diabetes
Mídia e entretenimento
• Tratamento de vídeo
• Tradução em real time
Segurança
• Reconhecimento de
face
• Biometria
• Cyber security
Carros autônomos
• Detecção de pessoas
e objetos
• Melhor trajeto
• Prevenção de colisão
Source: NextBigFuture
• Sabemos que quanto maior a quantidade
de dados maior é a performance
(leia acurácia) dos modelos.
• Com quantidades cada vez maiores de
datasets abertos na internet, torna-se
possível treinar e desenvolver redes
neurais com arquiteturas cada vez
mais profundas.
Alguns datasets para treinar as habilidades de Deep Learning
Imagens
• Minist
• Cifar-10
• CanalTech 256
• STL-10
• COIL100
• Imagenet
Artificial Datasets
• Arcade Universe
• BabyAIShapesDatasets
• ConvexNonConvex
• BackgroundCorrelation
Texto
• 20NewGroups
• Reuters
• Broadcast News
Speech
• TIMIT
Source: Forbes
Deep Learning deve estar com um nível de adoção maduro no pais entre 2 á 5 anos
When Machine learning and art´s meet..
Nvidia Deep learning perception, Lidar Perception and
autonomous Drive
Source: Nvidia
Source: Next big future
GPU Computing
Fluxo de processamento
Redes neurais artificiais
Source : icmc usp
Cenário atual.
Source: Asimovinstitute
• Diversas arquiteturas
disponíveis.
• Uma para cada
problema.
• Novas arquiteturas
surgindo devido ao poder
computacional atual.
• CNN é uma rede do tipo Feed-Foward.
• Utiliza uma variação de perceptrons multicamada, desenvolvidos para
minimizar o uso computacional.
• CNN aprende filtros em que um algoritmo tradicional seria necessário
implementações manuais.
• Usada principalmente em reconhecimento de imagens e processamento
de vídeos, embora já tenha sido usada em processamento de voz e NLP.
CNN – Convolutional
neural network
Matriz de Convolução
• Filtro de matriz utiliza a imagem como matriz primária.
• A imagem é tratada como coleção bidimensional de pixels.
• Geralmente utiliza matrizes 3x3 ou 5x5.
• Cada pixel é analisado e tem seu valor multiplicado pelo valor correspondente no núcleo
(matriz 2).
• E no final soma-se os resultados.
(40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42
Trabalhando com Imagens
• Imagem tratada como matriz.
• “Shape” da imagem é visto através
das dimensões altura, largura e
canais de cores (RGB).
• Devemos deixar as imagens do
mesmo tamanho(Slice)
• Podemos fazer conversões na
imagem, mudando posição,
Recortando, invertendo lados
(transpose), girando.
• Extração de features pode ser
diretamente onde interessa.
Feature Maps & layers
Desafios de aprendizado:
• Variação Intra-classe
• Distinção de fundo
• Ponto de vista
Frameworks
Source: Nvidia
Open Source Interface Plataform Written In Cuda Support
YES PYTHON, LINUX, C++ YES
MATLAB MAC OS X,
WINDOWS
YES PYTHON, LINUX, C++ YES
C++ WINDOWS,
MAC OS X
YES PYTHON LINUX, PYTHON YES
MAC OS X,
WINDOWS
YES PYTHON, LINUX, C++,PYTHON YES
R, LUA, C,C++ MAC OS X,
,JAVA, GO WINDOWS
YES PYTHON, LINUX, PYTHON YES
R MAC OS X,
WINDOWS
YES LUA,C,C++ LINUX, C, LUA YES
MAC OS X,
WINDOWS,
ANDROID,IOS
Escolhendo Frameworks
•Analisar evolução do Framework (releases,
updates, etc.)
•Linguagem suportada
•Plataforma suportada
•Suporte (documentação, comunidade, etc.)
•Expertise
•Foco no problema
Source: Google Research
• Start 2011
• Reconhecimento de voz
• Pesquisas de imagens no Google Photos
• Ganhador do desafio de reconhecimento
visual em larga escala Imagenet 2014
• Utilizado em experimentos de legendas
em imagens e vídeos
• Start 2015
• Duas vezes mais rápido que seu
antecessor distBelief
• Código aberto
• Flexível
• Baixo nível porém fácil de usar
Biblioteca do Google
Documentação muito rica (Inglês)
Muitos exemplos na internet (Mnist, desafios
do Kaggle, etc)
Baseado em Tensores e grafos
Comunidade ativa
CPU + GPU
Uso de GPU Necessita de CUDA ToolKit,
cuDNN
Uso de GPU não necessita alterações no
código
Suporte a Spark
Código e documentação aberta no GitHub
Evolução das releases
0.7 ....................... 1.2 1.3 1.4 1.5 1.6 1.7 1.8
Plataformas
Source: TensorFlow
Linguagens
Estrutura de código
1. Criar constrante
2. Iniciar sessão
3. Executar operação
Import tensorflow as tf
# Cria Constant com valores.
A = tf.Constant(100)
B = tf.Contant(50)
# Cria sessão
sess = tf.session()
# Executa a sessão e imprime resultado
sess.run( A * B)
Source: TensorFlow
Programming Stack
TensorBoard
• Interface gráfica, lançada junto com o
TensorFlow.
• Desenvolvido para demonstrar
graficamente o comportamento do
modelo.
• Cria um conjunto de pequenas e
determinadas visualizações genericas.
• Possui API´s para adicionar plug-ins
de visualizações personalizadas.
• Página do GitHub
Source: TensorFlow
TensorFlow Serving
Source: TensorFlow
• Plataforma para deploy de
modelos de
Deep Learning.
• Aberto ao publico desde o inicio.
• Controle de versão de modelos.
• Suporte a vários modelos para
teste A/B
• Gerenciamento de recursos.
• Pode ser usado por outros
frameworks
The Cifar-10 Dataset
• Dataset com 60000 imagens coloridas, divididas em 10 classes.
• Sendo 50000 imagens para treino e 10000 para teste.
• Popular em competições de Deep Learning no Kaggle.
• Link para download aqui.
• Outros datasets para desenvolvimento de CNN´s aqui.
Source: TensorFlow
ComunidadeTensorflow
TensorFlow - Playground
Source: TensorFlow Playground
Links uteis
• Tensorflow Canal youtube link
• Tensorflow for Deep Learning research Stanford University link
• Tensorflow papers link
• Livro deep learning (free) datascienceacademy link
• Deep Learning studio link
• Nvidia Deep Learning institute link
• Tensorflow Playground link
Dismistificando Deep Learning

Mais conteúdo relacionado

Semelhante a Dismistificando Deep Learning

FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!Intel Software Brasil
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!Luciano Palma
 
Introdução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlowIntrodução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlowpichiliani
 
Introdução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlowIntrodução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlowMauro Pichiliani
 
Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Alvaro Viebrantz
 
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem VisualAhirton Lopes
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem VisualAhirton Lopes
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem VisualAhirton Lopes
 
[Jose Ahirton lopes] Do Big ao Better Data
[Jose Ahirton lopes] Do Big ao Better Data[Jose Ahirton lopes] Do Big ao Better Data
[Jose Ahirton lopes] Do Big ao Better DataAhirton Lopes
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...PotiLivre Sobrenome
 
Transfer learning e tensorflow hub
Transfer learning e tensorflow hubTransfer learning e tensorflow hub
Transfer learning e tensorflow hubLucas Oliveira
 
Liferay Portugal User Group Meetup 4 - Liferay and Machine Learning
Liferay Portugal User Group Meetup 4 - Liferay and Machine LearningLiferay Portugal User Group Meetup 4 - Liferay and Machine Learning
Liferay Portugal User Group Meetup 4 - Liferay and Machine LearningFilipe Afonso
 
Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...
Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...
Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...Diogenes Freitas
 
Proposta de identificação de impressões digitais empregando redes neurais art...
Proposta de identificação de impressões digitais empregando redes neurais art...Proposta de identificação de impressões digitais empregando redes neurais art...
Proposta de identificação de impressões digitais empregando redes neurais art...Diogenes Freitas
 
[Jose Ahirton Lopes] Inteligencia Artificial - Uma Abordagem Visual
[Jose Ahirton Lopes] Inteligencia Artificial -  Uma Abordagem Visual[Jose Ahirton Lopes] Inteligencia Artificial -  Uma Abordagem Visual
[Jose Ahirton Lopes] Inteligencia Artificial - Uma Abordagem VisualAhirton Lopes
 
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Intel Software Brasil
 
DDC - workshop deep learning
DDC -  workshop deep learningDDC -  workshop deep learning
DDC - workshop deep learningMarlesson Santana
 
Aspectos profissionais 3pontos
Aspectos profissionais 3pontosAspectos profissionais 3pontos
Aspectos profissionais 3pontosMiguel Alho
 

Semelhante a Dismistificando Deep Learning (20)

FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
Introdução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlowIntrodução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlow
 
Introdução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlowIntrodução ao Deep Learning com o TensorFlow
Introdução ao Deep Learning com o TensorFlow
 
Computação no Desenvolvimento de Jogos Digitais
Computação no Desenvolvimento de Jogos DigitaisComputação no Desenvolvimento de Jogos Digitais
Computação no Desenvolvimento de Jogos Digitais
 
Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces Internet das coisas, machine learnign e maquinas de doces
Internet das coisas, machine learnign e maquinas de doces
 
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
 
[Jose Ahirton lopes] Do Big ao Better Data
[Jose Ahirton lopes] Do Big ao Better Data[Jose Ahirton lopes] Do Big ao Better Data
[Jose Ahirton lopes] Do Big ao Better Data
 
Devfest cerrado2017
Devfest cerrado2017Devfest cerrado2017
Devfest cerrado2017
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
 
Transfer learning e tensorflow hub
Transfer learning e tensorflow hubTransfer learning e tensorflow hub
Transfer learning e tensorflow hub
 
Liferay Portugal User Group Meetup 4 - Liferay and Machine Learning
Liferay Portugal User Group Meetup 4 - Liferay and Machine LearningLiferay Portugal User Group Meetup 4 - Liferay and Machine Learning
Liferay Portugal User Group Meetup 4 - Liferay and Machine Learning
 
Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...
Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...
Uma Proposta de identificação de Impressões Digitais empregando Redes Neurais...
 
Proposta de identificação de impressões digitais empregando redes neurais art...
Proposta de identificação de impressões digitais empregando redes neurais art...Proposta de identificação de impressões digitais empregando redes neurais art...
Proposta de identificação de impressões digitais empregando redes neurais art...
 
[Jose Ahirton Lopes] Inteligencia Artificial - Uma Abordagem Visual
[Jose Ahirton Lopes] Inteligencia Artificial -  Uma Abordagem Visual[Jose Ahirton Lopes] Inteligencia Artificial -  Uma Abordagem Visual
[Jose Ahirton Lopes] Inteligencia Artificial - Uma Abordagem Visual
 
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
 
DDC - workshop deep learning
DDC -  workshop deep learningDDC -  workshop deep learning
DDC - workshop deep learning
 
Aspectos profissionais 3pontos
Aspectos profissionais 3pontosAspectos profissionais 3pontos
Aspectos profissionais 3pontos
 

Dismistificando Deep Learning

  • 1. Dismistificando Deep Learning Leandro Romualdo I Fórum de tecnologia da informação São Paulo | Maio 2018
  • 4.  Subcategoria de Machine learning que trata as oportunidades de aprendizado profundo com redes neurais profundas.  Desenvolvida e melhorada na área acadêmica desde a década de 50, ganhando notoriedade nos ultímos anos.  Em razão do poder computacional atual, vem sendo amplamente explorada. Cenário atual Deep learning: Serviços da internet • Classificação de imagens • Reconhecimento de fala • NLP Medicina diagnóstica • Detecção de câncer • Diabetes Mídia e entretenimento • Tratamento de vídeo • Tradução em real time Segurança • Reconhecimento de face • Biometria • Cyber security Carros autônomos • Detecção de pessoas e objetos • Melhor trajeto • Prevenção de colisão
  • 5. Source: NextBigFuture • Sabemos que quanto maior a quantidade de dados maior é a performance (leia acurácia) dos modelos. • Com quantidades cada vez maiores de datasets abertos na internet, torna-se possível treinar e desenvolver redes neurais com arquiteturas cada vez mais profundas. Alguns datasets para treinar as habilidades de Deep Learning Imagens • Minist • Cifar-10 • CanalTech 256 • STL-10 • COIL100 • Imagenet Artificial Datasets • Arcade Universe • BabyAIShapesDatasets • ConvexNonConvex • BackgroundCorrelation Texto • 20NewGroups • Reuters • Broadcast News Speech • TIMIT
  • 6. Source: Forbes Deep Learning deve estar com um nível de adoção maduro no pais entre 2 á 5 anos
  • 7. When Machine learning and art´s meet..
  • 8. Nvidia Deep learning perception, Lidar Perception and autonomous Drive
  • 14. Cenário atual. Source: Asimovinstitute • Diversas arquiteturas disponíveis. • Uma para cada problema. • Novas arquiteturas surgindo devido ao poder computacional atual.
  • 15.
  • 16. • CNN é uma rede do tipo Feed-Foward. • Utiliza uma variação de perceptrons multicamada, desenvolvidos para minimizar o uso computacional. • CNN aprende filtros em que um algoritmo tradicional seria necessário implementações manuais. • Usada principalmente em reconhecimento de imagens e processamento de vídeos, embora já tenha sido usada em processamento de voz e NLP. CNN – Convolutional neural network
  • 17. Matriz de Convolução • Filtro de matriz utiliza a imagem como matriz primária. • A imagem é tratada como coleção bidimensional de pixels. • Geralmente utiliza matrizes 3x3 ou 5x5. • Cada pixel é analisado e tem seu valor multiplicado pelo valor correspondente no núcleo (matriz 2). • E no final soma-se os resultados. (40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42
  • 18. Trabalhando com Imagens • Imagem tratada como matriz. • “Shape” da imagem é visto através das dimensões altura, largura e canais de cores (RGB). • Devemos deixar as imagens do mesmo tamanho(Slice) • Podemos fazer conversões na imagem, mudando posição, Recortando, invertendo lados (transpose), girando. • Extração de features pode ser diretamente onde interessa.
  • 19. Feature Maps & layers
  • 20. Desafios de aprendizado: • Variação Intra-classe • Distinção de fundo • Ponto de vista
  • 22. Open Source Interface Plataform Written In Cuda Support YES PYTHON, LINUX, C++ YES MATLAB MAC OS X, WINDOWS YES PYTHON, LINUX, C++ YES C++ WINDOWS, MAC OS X YES PYTHON LINUX, PYTHON YES MAC OS X, WINDOWS YES PYTHON, LINUX, C++,PYTHON YES R, LUA, C,C++ MAC OS X, ,JAVA, GO WINDOWS YES PYTHON, LINUX, PYTHON YES R MAC OS X, WINDOWS YES LUA,C,C++ LINUX, C, LUA YES MAC OS X, WINDOWS, ANDROID,IOS
  • 23. Escolhendo Frameworks •Analisar evolução do Framework (releases, updates, etc.) •Linguagem suportada •Plataforma suportada •Suporte (documentação, comunidade, etc.) •Expertise •Foco no problema
  • 24. Source: Google Research • Start 2011 • Reconhecimento de voz • Pesquisas de imagens no Google Photos • Ganhador do desafio de reconhecimento visual em larga escala Imagenet 2014 • Utilizado em experimentos de legendas em imagens e vídeos • Start 2015 • Duas vezes mais rápido que seu antecessor distBelief • Código aberto • Flexível • Baixo nível porém fácil de usar
  • 25. Biblioteca do Google Documentação muito rica (Inglês) Muitos exemplos na internet (Mnist, desafios do Kaggle, etc) Baseado em Tensores e grafos Comunidade ativa CPU + GPU Uso de GPU Necessita de CUDA ToolKit, cuDNN Uso de GPU não necessita alterações no código Suporte a Spark Código e documentação aberta no GitHub
  • 26. Evolução das releases 0.7 ....................... 1.2 1.3 1.4 1.5 1.6 1.7 1.8
  • 28. Estrutura de código 1. Criar constrante 2. Iniciar sessão 3. Executar operação Import tensorflow as tf # Cria Constant com valores. A = tf.Constant(100) B = tf.Contant(50) # Cria sessão sess = tf.session() # Executa a sessão e imprime resultado sess.run( A * B) Source: TensorFlow
  • 30. TensorBoard • Interface gráfica, lançada junto com o TensorFlow. • Desenvolvido para demonstrar graficamente o comportamento do modelo. • Cria um conjunto de pequenas e determinadas visualizações genericas. • Possui API´s para adicionar plug-ins de visualizações personalizadas. • Página do GitHub Source: TensorFlow
  • 31. TensorFlow Serving Source: TensorFlow • Plataforma para deploy de modelos de Deep Learning. • Aberto ao publico desde o inicio. • Controle de versão de modelos. • Suporte a vários modelos para teste A/B • Gerenciamento de recursos. • Pode ser usado por outros frameworks
  • 32.
  • 33.
  • 34. The Cifar-10 Dataset • Dataset com 60000 imagens coloridas, divididas em 10 classes. • Sendo 50000 imagens para treino e 10000 para teste. • Popular em competições de Deep Learning no Kaggle. • Link para download aqui. • Outros datasets para desenvolvimento de CNN´s aqui.
  • 35.
  • 37. TensorFlow - Playground Source: TensorFlow Playground
  • 38. Links uteis • Tensorflow Canal youtube link • Tensorflow for Deep Learning research Stanford University link • Tensorflow papers link • Livro deep learning (free) datascienceacademy link • Deep Learning studio link • Nvidia Deep Learning institute link • Tensorflow Playground link