Atividade de estudo - Machine learning distribuído
Atividade de estudo: Machine learning e deep learning distribuído
A atividade consiste em pesquisar e implementar meios de distribuir aplicações de machine learning de processamento intensivo.
Motivação
Machine learning, deep learning está em evidência na mídia, mas muitas vezes não é falado dos meios de otimizar para obter resultados interessantes em menos tempo. A ideia é selecionar um problema de machine learning ou inteligencia artificial, preferencialmente que envolva algum tipo de mídia áudio visual e otimizar para computação distribuída de alto desempenho.
Por onde começar:
O principal framework de machine learning é o tensorflow, que possui uma página dedicada a processamento distribuído de machine learning. Então a ideia é selecionar um problema que demanda muito processamento e otimizar o código para utilizar múltiplos aceleradores, tanto que estão na mesma máquina quanto em outras por meio de conexões de alta velocidade, infiniband.
Sugestões de problemas:
- Redes generativas
- Deeplearning
- Geração de audio e texto.
Recursos disponíveis:
Para essa atividade de estudo conta se com o seguintes recursos:
- 6 nodos com 32 core, 240G de DRAM DDR4, conexão infiniband 56 Gb/s, scratch de 512 GB.
- 2 nodos com 32 core, 512G de DRAM DDR3, conexão ethernet 1 Gb/s, scratch de 512 GB.
- 1 nodo com 32 core, com hyperthreading ativado, então 64 threads, 512 de DRAM DDR4, conexão infiniband 56 Gb/s, scratch de 800 Gb e dois aceleradores gráficos nvidia pascall tesla 100.
- 2 nodo com 16 core, 180G de DRAM DDR4, conexão infiniband 56 Gb/s, scratch de 512GB e 4 aceleradores gráficos nvidia volta tesla 100.
Resultados esperados
- Notas de como otimizar aplicações de machine learning
- Discussão no grupo dos resultados e problemas encontrado durante o estudo.
- Algum resultado da inteligência artificial que seja possível compartilhar com grupo externo a universidade, com objetivo de divulgar trabalhos realizados na depedencia da universidade.