Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Soumith Chintala, AI research engineer, Facebook, at MLconf NYC 2017

604 views

Published on

Soumith Chintala is a Researcher at Facebook AI Research, where he works on deep learning, reinforcement learning, generative image models, agents for video games and large-scale high-performance deep learning. Prior to joining Facebook in August 2014, he worked at MuseAmi, where he built deep learning models for music and vision targeted at mobile devices. He holds a Masters in CS from NYU, and spent time in Yann LeCun’s NYU lab building deep learning models for pedestrian detection, natural image OCR, depth-images among others.

Abstract Summary:

Dynamic Deep Learning: a paradigm shift in AI research and tools:
AI research has seen many shifts in the last few years. We’ve seen research go from using static datasets such as Imagenet to being more dynamic and online in self-driving cars, robots and game-playing.Many dynamic environments such as Universe and Starcraft are being used in AI research to solve problems pertaining to reinforcement learning and online learning. In this talk, I shall discuss these shifts in research. Tools such as PyTorch, DyNet and Chainer have popped up to cope up with the paradigm shift, enabling cutting-edge AI, and I shall discuss these as well.

Published in: Technology
  • Be the first to comment

Soumith Chintala, AI research engineer, Facebook, at MLconf NYC 2017

  1. 1. Dynamic Deep Learning A paradigm shift in AI research and Tools Soumith Chintala Facebook AI Research
  2. 2. Today's AI Active Research & Future AI Tools for AI keeping up with change Overview
  3. 3. Today's AI Future AI Tools for AI Today's AI DenseCap by Justin Johnson & group https://github.com/jcjohnson/densecap
  4. 4. Today's AI Future AI Tools for AI Today's AI DeepMask by Pedro Pinhero & group
  5. 5. Today's AI Future AI Tools for AI Today's AI Machine Translation
  6. 6. Today's AI Future AI Tools for AI Today's AI Text Classification (sentiment analysis etc.) Text Embeddings Graph embeddings Machine Translation Ads ranking
  7. 7. Data BatchNorm ReLU Conv2d Model ObjectiveTrain Model Today's AI Future AI Tools for AI Today's AI
  8. 8. Data BatchNorm ReLU Conv2d Model ObjectiveTrain Model BatchNorm ReLU Conv2d Deploy & Use New Data Prediction Today's AI Future AI Tools for AI Today's AI
  9. 9. Data BatchNorm ReLU Conv2d ObjectiveTrain Model BatchNorm ReLU Conv2d Deploy & Use New Data Prediction Today's AI Future AI Tools for AI Static datasets + Static model structure Today's AI
  10. 10. Data BatchNorm ReLU Conv2d ObjectiveTrain Model BatchNorm ReLU Conv2d Deploy & Use New Data Prediction Today's AI Future AI Tools for AI Static datasets + Static model structure Offline Learning Today's AI
  11. 11. Today's AI Future AI Tools for AI Current AI Research / Future AI Self-driving Cars
  12. 12. Today's AI Future AI Tools for AI Current AI Research / Future AI Agents trained in many environments Cars Video games Internet
  13. 13. Today's AI Future AI Tools for AI Current AI Research / Future AI Dynamic Neural Networks self-adding new memory or layers changing evaluation path based on inputs
  14. 14. Today's AI Future AI Tools for AI Current AI Research / Future AI Live data BatchNorm ReLU Conv2d Prediction Continued Online Learning
  15. 15. Today's AI Future AI Tools for AI Current AI Research / Future AI Sample-1 BatchNorm ReLU Conv2d Prediction Data-dependent change in model structure BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d
  16. 16. Today's AI Future AI Tools for AI Current AI Research / Future AI Sample-2 BatchNorm ReLU Conv2d Prediction Data-dependent change in model structure BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d
  17. 17. Today's AI Future AI Tools for AI Current AI Research / Future AI Sample BatchNorm ReLU Conv2d Prediction BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d Change in model-capacity at runtime BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d
  18. 18. Today's AI Future AI Tools for AI Current AI Research / Future AI Sample BatchNorm ReLU Conv2d Prediction BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d Change in model-capacity at runtime BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d BatchNorm ReLU Conv2d
  19. 19. Today's AI Future AI Tools for AI A next-gen framework for AI •Interop with many dynamic environments - Connecting to car sensors should be as easy as training on a dataset - Connect to environments such as OpenAI Universe •Dynamic Neural Networks - Change behavior and structure of neural network at runtime •Minimal Abstractions - more complex AI systems means harder to debug without a simple API
  20. 20. Today's AI Future AI Tools for AI Tools for AI research and deployment Many machine learning tools and deep learning frameworks
  21. 21. Today's AI Future AI Tools for AI Tools for AI research and deployment Static graph frameworks Dynamic graph frameworks
  22. 22. Today's AI Future AI Tools for AI Dynamic graph Frameworks •Model is constructed on the fly at runtime •Change behavior, structure of model •Imperative style of programming
  23. 23. PyTorch Autograd from torch.autograd import Variable
  24. 24. from torch.autograd import Variable x = Variable(torch.randn(1, 10)) prev_h = Variable(torch.randn(1, 20)) W_h = Variable(torch.randn(20, 20)) W_x = Variable(torch.randn(20, 10)) PyTorch Autograd
  25. 25. from torch.autograd import Variable x = Variable(torch.randn(1, 10)) prev_h = Variable(torch.randn(1, 20)) W_h = Variable(torch.randn(20, 20)) W_x = Variable(torch.randn(20, 10)) i2h = torch.mm(W_x, x.t()) h2h = torch.mm(W_h, prev_h.t()) MMMM PyTorch Autograd
  26. 26. from torch.autograd import Variable x = Variable(torch.randn(1, 10)) prev_h = Variable(torch.randn(1, 20)) W_h = Variable(torch.randn(20, 20)) W_x = Variable(torch.randn(20, 10)) i2h = torch.mm(W_x, x.t()) h2h = torch.mm(W_h, prev_h.t()) next_h = i2h + h2h MMMM PyTorch Autograd
  27. 27. from torch.autograd import Variable x = Variable(torch.randn(1, 10)) prev_h = Variable(torch.randn(1, 20)) W_h = Variable(torch.randn(20, 20)) W_x = Variable(torch.randn(20, 10)) i2h = torch.mm(W_x, x.t()) h2h = torch.mm(W_h, prev_h.t()) next_h = i2h + h2h Add MMMM PyTorch Autograd
  28. 28. from torch.autograd import Variable x = Variable(torch.randn(1, 10)) prev_h = Variable(torch.randn(1, 20)) W_h = Variable(torch.randn(20, 20)) W_x = Variable(torch.randn(20, 10)) i2h = torch.mm(W_x, x.t()) h2h = torch.mm(W_h, prev_h.t()) next_h = i2h + h2h next_h = next_h.tanh() Add MMMM Tanh PyTorch Autograd
  29. 29. from torch.autograd import Variable x = Variable(torch.randn(1, 10)) prev_h = Variable(torch.randn(1, 20)) W_h = Variable(torch.randn(20, 20)) W_x = Variable(torch.randn(20, 10)) i2h = torch.mm(W_x, x.t()) h2h = torch.mm(W_h, prev_h.t()) next_h = i2h + h2h next_h = next_h.tanh() next_h.backward(torch.ones(1, 20)) Add MMMM Tanh PyTorch Autograd
  30. 30. http://pytorch.org Released Jan 18th 20,000+ downloads 200+ community repos 3000+ user posts With ❤ from

×