Este documento resume uma apresentação sobre deep learning com Python e TensorFlow. Apresenta conceitos básicos de inteligência artificial, machine learning e deep learning. Explica como redes neurais artificiais profundas permitem treinar modelos com mais camadas. Apresenta exemplos de arquiteturas neurais convolucionais e como começar com Python e TensorFlow, incluindo um exemplo de código. Por fim, descreve o caso de uso DeepCardio para diagnóstico de doenças cardíacas.
Esta palestra foi apresentada na trilha de Machine Learning do evento TDC 2016 (The Developers Conference) realizado em São Paulo, Brazil. O conteúdo aborda a história da ferramenta Weka e o seu posicionamento atual no mercado de soluções para machine learning.
Esta palestra foi apresentada na trilha de banco de dados do evento TDC (The Developers Conference) 2016 realizado em São Paulo, Brasil. O conteúdo aborda o uso da tecnologia SSD em banco de dados junto com testes de desempenho.
Pra quem aprendeu o básico sobre TDD mas sente um frio na barriga ao testar as seguintes condições:
-Interações com bancos de dados
-Dependências entre objetos
-Singletons
-Classes Abstratas
-APIs externas
-Interações com variáveis de ambiente
Esta palestra foi apresentada na trilha de Machine Learning do evento TDC 2016 (The Developers Conference) realizado em São Paulo, Brazil. O conteúdo aborda a história da ferramenta Weka e o seu posicionamento atual no mercado de soluções para machine learning.
Esta palestra foi apresentada na trilha de banco de dados do evento TDC (The Developers Conference) 2016 realizado em São Paulo, Brasil. O conteúdo aborda o uso da tecnologia SSD em banco de dados junto com testes de desempenho.
Pra quem aprendeu o básico sobre TDD mas sente um frio na barriga ao testar as seguintes condições:
-Interações com bancos de dados
-Dependências entre objetos
-Singletons
-Classes Abstratas
-APIs externas
-Interações com variáveis de ambiente
Modelos de computação distribuída no Hadoop
O desenvolvimento de uma aplicação distribuída requer diversos conhecimentos para lidar com problemas como: particionamento de entrada, escalonamento da execução, comunicação entre as máquinas e falhas no cluster. Para que o desenvolvedor possa focar somente na aplicação que está sendo desenvolvida, diversos modelos para processar os dados distribuídos foram criados. Cada modelo tem suas características, pontos fracos e fortes, que os fazem apropriados para determinados tipos de aplicações. A apresentação irá abordar os temas: Hadoop 2/Map Reduce; Bulk Synchronous Parallel; Pregel; Dremel; Processamento de Stream; Próximas tecnologias.
Tiago Cardoso
Co-fundador e CTO da Zahpee.
Mestre em Ciência da Computação pela UFMG. Co-fundador e CTO da Zahpee, trabalha há mais de quatro anos no desenvolvimento de produtos para coleta, processamento e visualização de dados.
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...André Curvello
Slides da apresentação da minha defesa de mestrado na Pós-Graduação em Engenharia Elétrica da Escola de Engenharia de São Carlos, da USP.
O tema do meu mestrado é aceleração de desempenho de algoritmos de visão computacional em sistemas embarcados usando aceleração via OpenGL em GPUs embarcadas.
Slides da oficina de TensorFlow e Keras ministrada durante o Deep Learning Summer School 2018. Exemplos utilizando redes neurais convolucionais (CNN).
Confira os arquivos no repositório: https://github.com/smoreira/TensorFlowKeras
Introdução a modularidade com RequireJS e BDD com Jasmine. Tais ferramentas permitem criar uma estrutura firme para desenvolver projetos JavaScript. Projetos estruturados dessa maneira podem rodar tanto no navegador quanto no NodeJS.
Demonstrações disponíveis em:
https://github.com/awvalenti/javascript-firme
Curso "Desenvolvendo aplicações de uso geral para GPU com CUDA".Filipo Mór
Minicurso "Desenvolvendo aplicações de uso geral para GPU com CUDA" ministrado na Escola Regional de Informática na UNISC, em Santa Cruz do Sul, em 16 de Setembro de 2014.
Edge computing na prática com IoT, Machine Learning e Google CloudAlvaro Viebrantz
Conceitos de edge computing sendo mostrado em um experimento envolvendo ESP32 com cameras, um Raspberry pi rodando inferências localmente com Tensorflow e agindo como um gateway no Cloud Iot Core e uma camada serverless na nuvem que armazena os dados processados das imagens.
Escalando uma plataforma poliglota - QConSP 17Leandro Moreira
Apresentar o que leva uma plataforma ter mais de uma linguagem ou banco como solução e quais problemas essa abordagem traz, exemplicando o case da globo.com.
Assuntos como: caching, latência, armazenamento, vídeo ao vivo, streaming, tuning, linux kernel, network, load balancer, encoding, importância dos testes e muito mais.
Modelos de computação distribuída no Hadoop
O desenvolvimento de uma aplicação distribuída requer diversos conhecimentos para lidar com problemas como: particionamento de entrada, escalonamento da execução, comunicação entre as máquinas e falhas no cluster. Para que o desenvolvedor possa focar somente na aplicação que está sendo desenvolvida, diversos modelos para processar os dados distribuídos foram criados. Cada modelo tem suas características, pontos fracos e fortes, que os fazem apropriados para determinados tipos de aplicações. A apresentação irá abordar os temas: Hadoop 2/Map Reduce; Bulk Synchronous Parallel; Pregel; Dremel; Processamento de Stream; Próximas tecnologias.
Tiago Cardoso
Co-fundador e CTO da Zahpee.
Mestre em Ciência da Computação pela UFMG. Co-fundador e CTO da Zahpee, trabalha há mais de quatro anos no desenvolvimento de produtos para coleta, processamento e visualização de dados.
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...André Curvello
Slides da apresentação da minha defesa de mestrado na Pós-Graduação em Engenharia Elétrica da Escola de Engenharia de São Carlos, da USP.
O tema do meu mestrado é aceleração de desempenho de algoritmos de visão computacional em sistemas embarcados usando aceleração via OpenGL em GPUs embarcadas.
Slides da oficina de TensorFlow e Keras ministrada durante o Deep Learning Summer School 2018. Exemplos utilizando redes neurais convolucionais (CNN).
Confira os arquivos no repositório: https://github.com/smoreira/TensorFlowKeras
Introdução a modularidade com RequireJS e BDD com Jasmine. Tais ferramentas permitem criar uma estrutura firme para desenvolver projetos JavaScript. Projetos estruturados dessa maneira podem rodar tanto no navegador quanto no NodeJS.
Demonstrações disponíveis em:
https://github.com/awvalenti/javascript-firme
Curso "Desenvolvendo aplicações de uso geral para GPU com CUDA".Filipo Mór
Minicurso "Desenvolvendo aplicações de uso geral para GPU com CUDA" ministrado na Escola Regional de Informática na UNISC, em Santa Cruz do Sul, em 16 de Setembro de 2014.
Edge computing na prática com IoT, Machine Learning e Google CloudAlvaro Viebrantz
Conceitos de edge computing sendo mostrado em um experimento envolvendo ESP32 com cameras, um Raspberry pi rodando inferências localmente com Tensorflow e agindo como um gateway no Cloud Iot Core e uma camada serverless na nuvem que armazena os dados processados das imagens.
Escalando uma plataforma poliglota - QConSP 17Leandro Moreira
Apresentar o que leva uma plataforma ter mais de uma linguagem ou banco como solução e quais problemas essa abordagem traz, exemplicando o case da globo.com.
Assuntos como: caching, latência, armazenamento, vídeo ao vivo, streaming, tuning, linux kernel, network, load balancer, encoding, importância dos testes e muito mais.
Deep Learning do Zero ao Impossível: Qual o caminho?Sandro Moreira
Aprender Deep Learning pode ser confuso e muitas vezes muito frustrante. Nesta palestra, pretendemos definir um roteiro para ir do nada à fluência em Deep Learning da maneira mais rápida possível. Destacaremos cursos, frameworks, matemática envolvida, métodos e estratégias para você começar e lhe apontar o caminho para ser capaz de usar o Deep Learning para resolução de problemas do mundo real.
Deep Learning e o Futuro da Inteligência ArtificialSandro Moreira
Palestra que apresenta aplicações práticas de Deep Learning em nosso dia-a-dia e o que podemos esperar para um futuro envolvendo Inteligência Artificial.
Vendo nas Nuvens: Uma introdução à API de Visão Computacional da GoogleSandro Moreira
Aprendizado de máquina era anteriormente o território exclusivo de pesquisadores e especialistas, mas não mais! Nesta palestra, vamos aprender como a visão computacional, desenvolvida pelo aprendizado de máquina está sendo popularizada e agora está disponível em qualquer plataforma com a Google Cloud Vision API. Visão computacional tem uma vasta gama de possibilidades: reconhecimento de objetos, a leitura de texto, compreensão de expressões faciais e muito mais.
4. 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
5. 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
20. 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
21. 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
22. 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))
23. 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:
29. 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%
30. GDG DevFest
Cerrado 2017
Sandro Moreira
Organizer GDG Rio Verde
Professor UniRV - Universidade de Rio Verde
+SandroMoreiraGO
@sandro_moreira
Dúvidas?