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
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.
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
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.
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