SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
www.databootcamp.com.br
Diogo Munaro Vieira
Co-Founder @ Data Bootcamp
Machine Learning Engineer @ OLX
PhD Student @ PUC Rio
Paralelismo em Machine
Learning e suas
aplicações
/in/dmvieira
@diogomvieira
“Computação paralela é uma
forma de computação em que
vários cálculos são realizados ao
mesmo tempo.” - Wikipedia
Afinal, o que é paralelismo?
O paralelismo
Como as coisas são
executadas?
Como o PC
Processa
O Paralelismo
https://www.tutorialspoint.com/control-unit-and-cpu
https://computing.llnl.gov/tutorials/parallel_comp/ (Lawrence Livermore National Laboratory CA)
Instruções
Seriais
O Paralelismo
https://computing.llnl.gov/tutorials/parallel_comp/ (Lawrence Livermore National Laboratory CA)
Instruções
Paralelas
O Paralelismo
https://computing.llnl.gov/tutorials/parallel_comp/ (Lawrence Livermore National Laboratory CA)
Unidades de
Processamento
O Paralelismo
https://computing.llnl.gov/tutorials/parallel_comp/ (Lawrence Livermore National Laboratory CA)
Tipos de
Comunicação
O Paralelismo
SETI@home (setiathome.berkeley.edu)
Folding@home (folding.stanford.edu)
Aplicações
Legais
O Paralelismo
O paralelismo
Como é CPU comparada
com GPU?
Arquitetura
CPU vs GPU
O Paralelismo
nvidia blog 2011
(https://www.researchgate.net/figure/Figura-10-Arquitetura-de-CPU-e-de-GPU-Fonte-NVIDIA-2011-A-arquitetura-
Fermi-da_fig1_303483769)
Arquitetura
CPU vs GPU
O Paralelismo
Como
Integrar
O Paralelismo
http://www2.ic.uff.br/~gpu/learn-gpu-computing/
Chegada da
TPU (Google)
O Paralelismo
https://heartbeat.fritz.ai/step-by-step-use-of-google-colab-free-tpu-75f8629492b3
Paralelismo em ML
Como os modelos
funcionam?
Técnicas de
ML
Paralelismo em ML
https://heartbeat.fritz.ai/step-by-step-use-of-google-colab-free-tpu-75f8629492b3
Treinando
algoritmo
baseado em
memória
(KNN)
Paralelismo em ML
https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0044000
Predizendo
baseado em
memória
(KNN)
Paralelismo em ML
https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0044000
Calculando as
distâncias para
todos os pontos e
guardando
Como entra o paralelismo nisso?
Treinando
algoritmo
baseado em
modelo (Rede
Neural)
Paralelismo em ML
Predição
baseada em
modelo (Rede
Neural)
Paralelismo em ML
https://heartbeat.fritz.ai/step-by-step-use-of-google-colab-free-tpu-75f8629492b3
Cálculos simples
e iguais dos
neurônios em
várias camadas
Como entra o paralelismo nisso?
Paralelismo em DL
Como isso ajuda Deep
Learning?
Muitos dados
apareceram
Paralelismo em DL
Muitas
camadas
apareceram
Paralelismo em DL
https://icml.cc/2016/tutorials/icml2016_tutorial_deep_residual_networks_kaiminghe.pdf
Paralelismo
em modelo e
nos dados
Paralelismo e ML
https://leimao.github.io/blog/Data-Parallelism-vs-Model-Paralelism/
Paralelismo
em modelo e
nos dados
Paralelismo e ML
https://leimao.github.io/blog/Data-Parallelism-vs-Model-Paralelism/
Dependência!
Paralelismo
em modelo e
nos dados
Paralelismo e ML
https://leimao.github.io/blog/Data-Parallelism-vs-Model-Paralelism/
Dependência!
E o erro?
Paralelismo
de dados
Paralelismo e ML
http://www.telesens.co/2017/12/25/understanding-data-parallelism-in-machine-learning/
Métodos
Estocásticos
(SGD)
Paralelismo e ML
https://engmrk.com/mini-batch-gd/
Paralelismo e ML
Mas então é só pra
deixar ML rápido?
Redundância
em modelos
Paralelismo e ML
https://www.kdnuggets.com/2019/01/ensemble-learning-5-main-approaches.html
Federated
Learning
Paralelismo e ML
https://heartbeat.fritz.ai/step-by-step-use-of-google-colab-free-tpu-75f8629492b3
ML para
paralelismo
Paralelismo e ML
https://www.sciencedirect.com/science/article/pii/S0167739X17314668
Desafios
Quais são os maiores
desafios na área?
Resiliência em
modelos
Desafios
http://www.cs.emory.edu/~vss/frepas/
Modelos
gigantes
(GPT-2)
Desafios
1,6 Bilhões de parâmetros!
http://jalammar.github.io/illustrated-gpt2/
Obrigado!
www.databootcamp.com.br
Diogo Munaro Vieira
Co-Founder @ Data Bootcamp
Machine Learning Engineer @ OLX
PhD Student @ PUC Rio
/in/dmvieira
@diogomvieira

Mais conteúdo relacionado

Mais de Diogo Munaro Vieira

Testes metamórficos em problemas complexos
Testes metamórficos em problemas complexosTestes metamórficos em problemas complexos
Testes metamórficos em problemas complexosDiogo Munaro Vieira
 
Apache Spark Overview and Applications
Apache Spark Overview and ApplicationsApache Spark Overview and Applications
Apache Spark Overview and ApplicationsDiogo Munaro Vieira
 
MLOps: Transformando seus modelos de ml em produtos
MLOps: Transformando seus modelos de ml em produtosMLOps: Transformando seus modelos de ml em produtos
MLOps: Transformando seus modelos de ml em produtosDiogo Munaro Vieira
 
Desenvolvedor de software para Big Data
Desenvolvedor de software para Big DataDesenvolvedor de software para Big Data
Desenvolvedor de software para Big DataDiogo Munaro Vieira
 
Machine Learning integrado ao produto de software: No more XGH
Machine Learning integrado ao produto de software: No more XGHMachine Learning integrado ao produto de software: No more XGH
Machine Learning integrado ao produto de software: No more XGHDiogo Munaro Vieira
 
Conhecendo o desejo de mais de 10 milhões de usuários por dia
Conhecendo o desejo de mais de 10 milhões de usuários por diaConhecendo o desejo de mais de 10 milhões de usuários por dia
Conhecendo o desejo de mais de 10 milhões de usuários por diaDiogo Munaro Vieira
 
Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)
Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)
Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)Diogo Munaro Vieira
 

Mais de Diogo Munaro Vieira (9)

Testes metamórficos em problemas complexos
Testes metamórficos em problemas complexosTestes metamórficos em problemas complexos
Testes metamórficos em problemas complexos
 
Apache Spark Overview and Applications
Apache Spark Overview and ApplicationsApache Spark Overview and Applications
Apache Spark Overview and Applications
 
MLOps: Transformando seus modelos de ml em produtos
MLOps: Transformando seus modelos de ml em produtosMLOps: Transformando seus modelos de ml em produtos
MLOps: Transformando seus modelos de ml em produtos
 
Desenvolvedor de software para Big Data
Desenvolvedor de software para Big DataDesenvolvedor de software para Big Data
Desenvolvedor de software para Big Data
 
Machine learning em Produção
Machine learning em ProduçãoMachine learning em Produção
Machine learning em Produção
 
Machine Learning integrado ao produto de software: No more XGH
Machine Learning integrado ao produto de software: No more XGHMachine Learning integrado ao produto de software: No more XGH
Machine Learning integrado ao produto de software: No more XGH
 
Big Data na Globo.com
Big Data na Globo.comBig Data na Globo.com
Big Data na Globo.com
 
Conhecendo o desejo de mais de 10 milhões de usuários por dia
Conhecendo o desejo de mais de 10 milhões de usuários por diaConhecendo o desejo de mais de 10 milhões de usuários por dia
Conhecendo o desejo de mais de 10 milhões de usuários por dia
 
Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)
Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)
Tutorial JupyterHub, Jupyter e PySpark (PythonSudeste)
 

Paralelismo em ML e suas aplicações