SlideShare a Scribd company logo
1 of 25
Building Distributed Deep Learning Engine 
Guangdeng Liao, Zhan Zhang and Murtaza Zafer 
SRA-SV | Cloud Research Lab Slide 1
What is Deep Learning 
Deep learning is a set of algorithms that attempt to model high-level 
abstractions in data by using architectures composed of multiple non-linear 
transformations 
Learn hidden features Learning state emission 
prob. 
Learning word vectors 
SRA-SV | Cloud Research Lab Slide 2
Thanks Big Data, Deep Learning is not only research 
Usage Scenario: Speech Recognition, Image processing and NLP 
SRA-SV | Cloud Research Lab Slide 3
Why Samsung needs Deep Learning? 
To make our devices smarter and more intelligent by recognizing 
voice, image and even language 
SRA-SV | Cloud Research Lab Slide 4
How does Deep Learning look like? 
Many more examples (millions to billions parameters ) in Speech 
Recognition, Image Processing and NLP 
Krizhevsky, A., Sutskever, I. and Hinton, G. E. ImageNet Classification with Deep Convolutional Neural Networks 
SRA-SV | Cloud Research Lab Slide 5
Deep Learning is challenging.. 
BIG DATA + BIG MODEL 
Building a distributed deep learning platform for 
Quite new, no mature platform yet 
Samsung R&D 
Hard to design and develop DL algorithms 
SRA-SV | Cloud Research Lab Slide 6
Distributed Deep Learning Platform we are building 
Object 
recognition 
App. 
Speech 
recognition 
…. 
RBM FF DA CNN …. 
Model-parallel 
engine 
Algorithms 
Infrastructure 
I/O …. 
Parameter 
server 
Execution 
engine 
Math 
SRA-SV | Cloud Research Lab Slide 7 
Our focus
Now, Let’s dive deeper and more technically… 
SRA-SV | Cloud Research Lab Slide 8
Model-Parallel Engine (MPE) 
Parallelize a big ML model over Hadoop YARN cluster 
Auto-deployment 
of topology (in-memory) 
SRA-SV | Cloud Research Lab Slide 9 
User 
defined 
model 
Auto-generation 
of model topology 
Auto-partition of 
topology over 
cluster 
c1 
c2 
c3 
Neuron-like 
programming 
Message-based 
communication 
Message-driven 
computation 
-Define nodes 
-Define groups 
-Define connections
MPE’s Architecture 
Container 
Node Manager 
Data Communication: 
• node-level 
• group-level 
Container 
Node manager 
Control comm. based on 
Thrift 
Data comm. based on Netty 
Application Master 
Controller 
Partition and 
deploy topology 
Container 
Node manager 
SRA-SV | Cloud Research Lab Slide 10
How to partition big models 
Vertical Partition Horizontal Partition 
SRA-SV | Cloud Research Lab Slide 11
Execution Engine (Layer-by-Layer Training) 
Can stack different layers and training algorithms 
HDFS/LFS 
HDFS/LFS 
SRA-SV | Cloud Research Lab Slide 12
Model-parallel itself is not scalable enough 
SRA-SV | Cloud Research Lab Slide 13
Deep Learning Infra.: Hybrid of Data-parallelism and Model-parallelism 
…….. Data Chunk 
Data Chunk 
…….. 
Model-parallel Model-parallel 
Parameter 
Server 1 
Parameters coordination 
Parameter 
Server n …….. 
Data-parallelism 
Lots of model instances 
Parameter servers 
help models learn 
each other 
SRA-SV | Cloud Research Lab Slide 14
Distributed Parameter Servers 
Currently we support asynchronous stochastic gradient descent with AdaGrad 
Client Client Client 
Server 1 Server 2 Server 3 
In-memory 
cache/storage 
HBase/HDFS 
In-memory 
cache/storage 
Asyn. communication 
In-memory 
cache/storage 
SRA-SV | Cloud Research Lab Slide 15 
Pull/Push
Deep Learning Algorithms 
Deep Learning Algorithms 
Feed-forward Neural Network 
Restricted Boltzmann 
Machine 
Denoise Auto-encoder 
Deep Belief Network 
More importantly, we can stack them 
layer by layer 
SRA-SV | Cloud Research Lab Slide 16
More Challenging Algorithm: Convolutional Neural Network 
Different convolutional, normalization and pooling layers 
Weight shared and non-shared feature maps 
Feature map is minimum partition unit 
SRA-SV | Cloud Research Lab Slide 17 
第17 页 
Layer: 
Multi-dimensional feature map 
neurons 
Output: 
Dense layer feed-forward 
neurons 
Input: 
e.g. image, spectral map of 
voice data 
Layer: 
Multi-dimensional feature map 
neurons
Sharing some early experiences/lessons 
Infrastructure 
Computation abstraction might be too low level (a lot 
of pros and cons) 
A generic deep learning platform is very challenging 
(like recurrent NN) 
Communication is important 
Methods of partitioning models are important 
High performance mathematical library is useful 
SRA-SV | Cloud Research Lab Slide 18
Sharing some early experiences 
Algorithm/Models 
Models for ASR are relatively small 
Models for image are much larger 
Models for NLP are typical small 
DA seems more efficient than RBM for 
image 
Accelerated SGD or Hessian free 
optimizations need to be explored 
SRA-SV | Cloud Research Lab Slide 19
Usage cases of Deep Learning 
SRA-SV | Cloud Research Lab Slide 20
Image Recognition 
Object models 
Object parts 
SRA-SV | Cloud Research Lab Slide 21 
Edges 
Pixels 
Image 
pixels 
Hand-designed 
Feature Extraction 
(SIFT, HOG etc.) 
Trainable 
Classifier 
Object 
Category 
Featured Learner 
(Convolutional NN is 
popular) 
Learned high level features 
Data 
augmentation 
Central and 
corner crops 
Original 
Image
Speech Recognition 
• DNN is used to replace GMM to learn state 
output probability in HMM. 
• FF and DBN have been used for ASR 
• CNN starts being used to further improve WER 
• Rectified Linear Activation seems better than 
SRA-SV | Cloud Research Lab Slide 22 
Sigmoid 
• Models are relatively small (e.g. 5 layers, 2560 
neurons/hidden layer) 
Li Deng, A Tutorial Survey of Architectures, Algorithms, and Applications for Deep Learning
NLP 
Deep Learning in NLP is quite new 
Learn word vector 
Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean, Efficient Estimation of Word Representations in Vector Space 
SRA-SV | Cloud Research Lab Slide 23
NLP 
Based on word vector, map sentences to vector space now 
Sentiment Analysis 
Richard Socher Jeffrey Pennington Eric H. Huang Andrew Y. Ng Christopher D. Manning, Semi-Supervised Recursive Autoencoders 
for Predicting Sentiment Distributions 
SRA-SV | Cloud Research Lab Slide 24
Q&A

More Related Content

What's hot

Neural Networks and Deep Learning
Neural Networks and Deep LearningNeural Networks and Deep Learning
Neural Networks and Deep LearningAsim Jalis
 
Handwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with RHandwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with RPoo Kuan Hoong
 
Intro To Convolutional Neural Networks
Intro To Convolutional Neural NetworksIntro To Convolutional Neural Networks
Intro To Convolutional Neural NetworksMark Scully
 
Convolutional neural network
Convolutional neural network Convolutional neural network
Convolutional neural network Yan Xu
 
Synthetic dialogue generation with Deep Learning
Synthetic dialogue generation with Deep LearningSynthetic dialogue generation with Deep Learning
Synthetic dialogue generation with Deep LearningS N
 
Deep learning in Computer Vision
Deep learning in Computer VisionDeep learning in Computer Vision
Deep learning in Computer VisionDavid Dao
 
Deep Learning and the state of AI / 2016
Deep Learning and the state of AI / 2016Deep Learning and the state of AI / 2016
Deep Learning and the state of AI / 2016Grigory Sapunov
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep LearningOswald Campesato
 
101: Convolutional Neural Networks
101: Convolutional Neural Networks 101: Convolutional Neural Networks
101: Convolutional Neural Networks Mad Scientists
 
AI&BigData Lab. Артем Чернодуб "Распознавание изображений методом Lazy Deep ...
AI&BigData Lab. Артем Чернодуб  "Распознавание изображений методом Lazy Deep ...AI&BigData Lab. Артем Чернодуб  "Распознавание изображений методом Lazy Deep ...
AI&BigData Lab. Артем Чернодуб "Распознавание изображений методом Lazy Deep ...GeeksLab Odessa
 
Deep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender SystemsDeep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender SystemsBenjamin Le
 
Hadoop Summit 2014 - San Jose - Introduction to Deep Learning on Hadoop
Hadoop Summit 2014 - San Jose - Introduction to Deep Learning on HadoopHadoop Summit 2014 - San Jose - Introduction to Deep Learning on Hadoop
Hadoop Summit 2014 - San Jose - Introduction to Deep Learning on HadoopJosh Patterson
 
Deep Learning: a birds eye view
Deep Learning: a birds eye viewDeep Learning: a birds eye view
Deep Learning: a birds eye viewRoelof Pieters
 
Deep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersDeep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersRoelof Pieters
 
Transfer Learning and Fine-tuning Deep Neural Networks
 Transfer Learning and Fine-tuning Deep Neural Networks Transfer Learning and Fine-tuning Deep Neural Networks
Transfer Learning and Fine-tuning Deep Neural NetworksPyData
 
Convolutional Neural Network
Convolutional Neural NetworkConvolutional Neural Network
Convolutional Neural NetworkJunho Cho
 
Deep learning intro
Deep learning introDeep learning intro
Deep learning introbeamandrew
 
Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!Roelof Pieters
 
Deep learning: the future of recommendations
Deep learning: the future of recommendationsDeep learning: the future of recommendations
Deep learning: the future of recommendationsBalázs Hidasi
 

What's hot (20)

Neural Networks and Deep Learning
Neural Networks and Deep LearningNeural Networks and Deep Learning
Neural Networks and Deep Learning
 
Handwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with RHandwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with R
 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learning
 
Intro To Convolutional Neural Networks
Intro To Convolutional Neural NetworksIntro To Convolutional Neural Networks
Intro To Convolutional Neural Networks
 
Convolutional neural network
Convolutional neural network Convolutional neural network
Convolutional neural network
 
Synthetic dialogue generation with Deep Learning
Synthetic dialogue generation with Deep LearningSynthetic dialogue generation with Deep Learning
Synthetic dialogue generation with Deep Learning
 
Deep learning in Computer Vision
Deep learning in Computer VisionDeep learning in Computer Vision
Deep learning in Computer Vision
 
Deep Learning and the state of AI / 2016
Deep Learning and the state of AI / 2016Deep Learning and the state of AI / 2016
Deep Learning and the state of AI / 2016
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
 
101: Convolutional Neural Networks
101: Convolutional Neural Networks 101: Convolutional Neural Networks
101: Convolutional Neural Networks
 
AI&BigData Lab. Артем Чернодуб "Распознавание изображений методом Lazy Deep ...
AI&BigData Lab. Артем Чернодуб  "Распознавание изображений методом Lazy Deep ...AI&BigData Lab. Артем Чернодуб  "Распознавание изображений методом Lazy Deep ...
AI&BigData Lab. Артем Чернодуб "Распознавание изображений методом Lazy Deep ...
 
Deep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender SystemsDeep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender Systems
 
Hadoop Summit 2014 - San Jose - Introduction to Deep Learning on Hadoop
Hadoop Summit 2014 - San Jose - Introduction to Deep Learning on HadoopHadoop Summit 2014 - San Jose - Introduction to Deep Learning on Hadoop
Hadoop Summit 2014 - San Jose - Introduction to Deep Learning on Hadoop
 
Deep Learning: a birds eye view
Deep Learning: a birds eye viewDeep Learning: a birds eye view
Deep Learning: a birds eye view
 
Deep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersDeep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ers
 
Transfer Learning and Fine-tuning Deep Neural Networks
 Transfer Learning and Fine-tuning Deep Neural Networks Transfer Learning and Fine-tuning Deep Neural Networks
Transfer Learning and Fine-tuning Deep Neural Networks
 
Convolutional Neural Network
Convolutional Neural NetworkConvolutional Neural Network
Convolutional Neural Network
 
Deep learning intro
Deep learning introDeep learning intro
Deep learning intro
 
Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!
 
Deep learning: the future of recommendations
Deep learning: the future of recommendationsDeep learning: the future of recommendations
Deep learning: the future of recommendations
 

Viewers also liked

From Narrow AI to Artificial General Intelligence (AGI)
From Narrow AI to Artificial General Intelligence (AGI)From Narrow AI to Artificial General Intelligence (AGI)
From Narrow AI to Artificial General Intelligence (AGI)Helgi Páll Helgason, PhD
 
Deep learning and the systemic challenges of data science initiatives
Deep learning and the systemic challenges of data science initiativesDeep learning and the systemic challenges of data science initiatives
Deep learning and the systemic challenges of data science initiativesBalázs Kégl
 
Deep Learning for Speech Recognition - Vikrant Singh Tomar
Deep Learning for Speech Recognition - Vikrant Singh TomarDeep Learning for Speech Recognition - Vikrant Singh Tomar
Deep Learning for Speech Recognition - Vikrant Singh TomarWithTheBest
 
Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24Keunwoo Choi
 
온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호
온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호
온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호datasciencekorea
 
Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중
Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중
Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중datasciencekorea
 
(Deep) Neural Networks在 NLP 和 Text Mining 总结
(Deep) Neural Networks在 NLP 和 Text Mining 总结(Deep) Neural Networks在 NLP 和 Text Mining 总结
(Deep) Neural Networks在 NLP 和 Text Mining 总结君 廖
 
Entrepreneurial ecosystem markers -slides
Entrepreneurial ecosystem markers -slidesEntrepreneurial ecosystem markers -slides
Entrepreneurial ecosystem markers -slidesNorris Krueger
 
Tecnologías sociales.
Tecnologías sociales.Tecnologías sociales.
Tecnologías sociales.José María
 
Turbo promotor
Turbo promotorTurbo promotor
Turbo promotorsimprro379
 
INDEPEDENT OUTSOURCING ASSURANCE
INDEPEDENT OUTSOURCING ASSURANCEINDEPEDENT OUTSOURCING ASSURANCE
INDEPEDENT OUTSOURCING ASSURANCEArul Nambi
 
Alphaworks deck v2
Alphaworks deck v2Alphaworks deck v2
Alphaworks deck v2alphaworks
 
data science in academia and the real world
data science in academia and the real worlddata science in academia and the real world
data science in academia and the real worldchris wiggins
 
Sheena Lowrie, Spaces 2012
Sheena Lowrie, Spaces 2012Sheena Lowrie, Spaces 2012
Sheena Lowrie, Spaces 2012TCV Scotland
 
Android开发工程师必备
Android开发工程师必备Android开发工程师必备
Android开发工程师必备mornone
 
Universidad nacional de chimborazo(Nellyta)
Universidad nacional de chimborazo(Nellyta)Universidad nacional de chimborazo(Nellyta)
Universidad nacional de chimborazo(Nellyta)UNACH
 

Viewers also liked (20)

From Narrow AI to Artificial General Intelligence (AGI)
From Narrow AI to Artificial General Intelligence (AGI)From Narrow AI to Artificial General Intelligence (AGI)
From Narrow AI to Artificial General Intelligence (AGI)
 
Deep learning and the systemic challenges of data science initiatives
Deep learning and the systemic challenges of data science initiativesDeep learning and the systemic challenges of data science initiatives
Deep learning and the systemic challenges of data science initiatives
 
Deep Learning for Speech Recognition - Vikrant Singh Tomar
Deep Learning for Speech Recognition - Vikrant Singh TomarDeep Learning for Speech Recognition - Vikrant Singh Tomar
Deep Learning for Speech Recognition - Vikrant Singh Tomar
 
Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24
 
온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호
온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호
온라인 데이터 분석을 통한 선거예측- 김찬우, 조인호
 
Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중
Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중
Deep Learning - 인공지능 기계학습의 새로운 트랜드 :김인중
 
(Deep) Neural Networks在 NLP 和 Text Mining 总结
(Deep) Neural Networks在 NLP 和 Text Mining 总结(Deep) Neural Networks在 NLP 和 Text Mining 总结
(Deep) Neural Networks在 NLP 和 Text Mining 总结
 
Entrepreneurial ecosystem markers -slides
Entrepreneurial ecosystem markers -slidesEntrepreneurial ecosystem markers -slides
Entrepreneurial ecosystem markers -slides
 
Tecnologías sociales.
Tecnologías sociales.Tecnologías sociales.
Tecnologías sociales.
 
Turbo promotor
Turbo promotorTurbo promotor
Turbo promotor
 
INDEPEDENT OUTSOURCING ASSURANCE
INDEPEDENT OUTSOURCING ASSURANCEINDEPEDENT OUTSOURCING ASSURANCE
INDEPEDENT OUTSOURCING ASSURANCE
 
Alphaworks deck v2
Alphaworks deck v2Alphaworks deck v2
Alphaworks deck v2
 
data science in academia and the real world
data science in academia and the real worlddata science in academia and the real world
data science in academia and the real world
 
Sheena Lowrie, Spaces 2012
Sheena Lowrie, Spaces 2012Sheena Lowrie, Spaces 2012
Sheena Lowrie, Spaces 2012
 
Verefranceze
VerefrancezeVerefranceze
Verefranceze
 
Android开发工程师必备
Android开发工程师必备Android开发工程师必备
Android开发工程师必备
 
Evaluation question 1 music video
Evaluation question 1 music videoEvaluation question 1 music video
Evaluation question 1 music video
 
Vinsitesafe
VinsitesafeVinsitesafe
Vinsitesafe
 
Universidad nacional de chimborazo(Nellyta)
Universidad nacional de chimborazo(Nellyta)Universidad nacional de chimborazo(Nellyta)
Universidad nacional de chimborazo(Nellyta)
 
Synflex
SynflexSynflex
Synflex
 

Similar to Building distributed deep learning engine

Data platform at Samsung (Big Learning)
Data platform at Samsung (Big Learning)Data platform at Samsung (Big Learning)
Data platform at Samsung (Big Learning)ZhuanzhuanDing
 
BigDL webinar - Deep Learning Library for Spark
BigDL webinar - Deep Learning Library for SparkBigDL webinar - Deep Learning Library for Spark
BigDL webinar - Deep Learning Library for SparkDESMOND YUEN
 
Introduction to parallel iterative deep learning on hadoop’s next​ generation...
Introduction to parallel iterative deep learning on hadoop’s next​ generation...Introduction to parallel iterative deep learning on hadoop’s next​ generation...
Introduction to parallel iterative deep learning on hadoop’s next​ generation...Anh Le
 
Deeplearning on Hadoop @OSCON 2014
Deeplearning on Hadoop @OSCON 2014Deeplearning on Hadoop @OSCON 2014
Deeplearning on Hadoop @OSCON 2014Adam Gibson
 
Learn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr TeterwakLearn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr TeterwakPyData
 
deeplearning
deeplearningdeeplearning
deeplearninghuda2018
 
DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018
DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018
DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018Apache MXNet
 
Hadoop Summit 2014 Distributed Deep Learning
Hadoop Summit 2014 Distributed Deep LearningHadoop Summit 2014 Distributed Deep Learning
Hadoop Summit 2014 Distributed Deep LearningAdam Gibson
 
Machine Learning with Scala
Machine Learning with ScalaMachine Learning with Scala
Machine Learning with ScalaSusan Eraly
 
Sjug #26 ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23
Sjug #26   ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23Sjug #26   ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23
Sjug #26 ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23Tomasz Sikora
 
Urs Köster Presenting at RE-Work DL Summit in Boston
Urs Köster Presenting at RE-Work DL Summit in BostonUrs Köster Presenting at RE-Work DL Summit in Boston
Urs Köster Presenting at RE-Work DL Summit in BostonIntel Nervana
 
Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...
Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...
Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...Databricks
 
AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...Vandana Kannan
 
AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...Apache MXNet
 
Deep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep FeaturesDeep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep FeaturesTuri, Inc.
 
Georgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4JGeorgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4JJosh Patterson
 

Similar to Building distributed deep learning engine (20)

Data platform at Samsung (Big Learning)
Data platform at Samsung (Big Learning)Data platform at Samsung (Big Learning)
Data platform at Samsung (Big Learning)
 
BigDL webinar - Deep Learning Library for Spark
BigDL webinar - Deep Learning Library for SparkBigDL webinar - Deep Learning Library for Spark
BigDL webinar - Deep Learning Library for Spark
 
Introduction to parallel iterative deep learning on hadoop’s next​ generation...
Introduction to parallel iterative deep learning on hadoop’s next​ generation...Introduction to parallel iterative deep learning on hadoop’s next​ generation...
Introduction to parallel iterative deep learning on hadoop’s next​ generation...
 
Deeplearning on Hadoop @OSCON 2014
Deeplearning on Hadoop @OSCON 2014Deeplearning on Hadoop @OSCON 2014
Deeplearning on Hadoop @OSCON 2014
 
Learn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr TeterwakLearn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
 
deeplearning
deeplearningdeeplearning
deeplearning
 
Distributed deep learning_over_spark_20_nov_2014_ver_2.8
Distributed deep learning_over_spark_20_nov_2014_ver_2.8Distributed deep learning_over_spark_20_nov_2014_ver_2.8
Distributed deep learning_over_spark_20_nov_2014_ver_2.8
 
DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018
DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018
DeepLearning001&ApacheMXNetWithSparkForInference-ACNA2018
 
Hadoop Summit 2014 Distributed Deep Learning
Hadoop Summit 2014 Distributed Deep LearningHadoop Summit 2014 Distributed Deep Learning
Hadoop Summit 2014 Distributed Deep Learning
 
Deep Learning on Hadoop
Deep Learning on HadoopDeep Learning on Hadoop
Deep Learning on Hadoop
 
Chug dl presentation
Chug dl presentationChug dl presentation
Chug dl presentation
 
Machine Learning with Scala
Machine Learning with ScalaMachine Learning with Scala
Machine Learning with Scala
 
Sjug #26 ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23
Sjug #26   ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23Sjug #26   ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23
Sjug #26 ml is in java but is dl too - ver1.04 - tomasz sikora 2018-03-23
 
Urs Köster Presenting at RE-Work DL Summit in Boston
Urs Köster Presenting at RE-Work DL Summit in BostonUrs Köster Presenting at RE-Work DL Summit in Boston
Urs Köster Presenting at RE-Work DL Summit in Boston
 
Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...
Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...
Data Science and Deep Learning on Spark with 1/10th of the Code with Roope As...
 
AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...
 
AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...AI powered emotion recognition: From Inception to Production - Global AI Conf...
AI powered emotion recognition: From Inception to Production - Global AI Conf...
 
AI and Deep Learning
AI and Deep Learning AI and Deep Learning
AI and Deep Learning
 
Deep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep FeaturesDeep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep Features
 
Georgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4JGeorgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4J
 

Building distributed deep learning engine

  • 1. Building Distributed Deep Learning Engine Guangdeng Liao, Zhan Zhang and Murtaza Zafer SRA-SV | Cloud Research Lab Slide 1
  • 2. What is Deep Learning Deep learning is a set of algorithms that attempt to model high-level abstractions in data by using architectures composed of multiple non-linear transformations Learn hidden features Learning state emission prob. Learning word vectors SRA-SV | Cloud Research Lab Slide 2
  • 3. Thanks Big Data, Deep Learning is not only research Usage Scenario: Speech Recognition, Image processing and NLP SRA-SV | Cloud Research Lab Slide 3
  • 4. Why Samsung needs Deep Learning? To make our devices smarter and more intelligent by recognizing voice, image and even language SRA-SV | Cloud Research Lab Slide 4
  • 5. How does Deep Learning look like? Many more examples (millions to billions parameters ) in Speech Recognition, Image Processing and NLP Krizhevsky, A., Sutskever, I. and Hinton, G. E. ImageNet Classification with Deep Convolutional Neural Networks SRA-SV | Cloud Research Lab Slide 5
  • 6. Deep Learning is challenging.. BIG DATA + BIG MODEL Building a distributed deep learning platform for Quite new, no mature platform yet Samsung R&D Hard to design and develop DL algorithms SRA-SV | Cloud Research Lab Slide 6
  • 7. Distributed Deep Learning Platform we are building Object recognition App. Speech recognition …. RBM FF DA CNN …. Model-parallel engine Algorithms Infrastructure I/O …. Parameter server Execution engine Math SRA-SV | Cloud Research Lab Slide 7 Our focus
  • 8. Now, Let’s dive deeper and more technically… SRA-SV | Cloud Research Lab Slide 8
  • 9. Model-Parallel Engine (MPE) Parallelize a big ML model over Hadoop YARN cluster Auto-deployment of topology (in-memory) SRA-SV | Cloud Research Lab Slide 9 User defined model Auto-generation of model topology Auto-partition of topology over cluster c1 c2 c3 Neuron-like programming Message-based communication Message-driven computation -Define nodes -Define groups -Define connections
  • 10. MPE’s Architecture Container Node Manager Data Communication: • node-level • group-level Container Node manager Control comm. based on Thrift Data comm. based on Netty Application Master Controller Partition and deploy topology Container Node manager SRA-SV | Cloud Research Lab Slide 10
  • 11. How to partition big models Vertical Partition Horizontal Partition SRA-SV | Cloud Research Lab Slide 11
  • 12. Execution Engine (Layer-by-Layer Training) Can stack different layers and training algorithms HDFS/LFS HDFS/LFS SRA-SV | Cloud Research Lab Slide 12
  • 13. Model-parallel itself is not scalable enough SRA-SV | Cloud Research Lab Slide 13
  • 14. Deep Learning Infra.: Hybrid of Data-parallelism and Model-parallelism …….. Data Chunk Data Chunk …….. Model-parallel Model-parallel Parameter Server 1 Parameters coordination Parameter Server n …….. Data-parallelism Lots of model instances Parameter servers help models learn each other SRA-SV | Cloud Research Lab Slide 14
  • 15. Distributed Parameter Servers Currently we support asynchronous stochastic gradient descent with AdaGrad Client Client Client Server 1 Server 2 Server 3 In-memory cache/storage HBase/HDFS In-memory cache/storage Asyn. communication In-memory cache/storage SRA-SV | Cloud Research Lab Slide 15 Pull/Push
  • 16. Deep Learning Algorithms Deep Learning Algorithms Feed-forward Neural Network Restricted Boltzmann Machine Denoise Auto-encoder Deep Belief Network More importantly, we can stack them layer by layer SRA-SV | Cloud Research Lab Slide 16
  • 17. More Challenging Algorithm: Convolutional Neural Network Different convolutional, normalization and pooling layers Weight shared and non-shared feature maps Feature map is minimum partition unit SRA-SV | Cloud Research Lab Slide 17 第17 页 Layer: Multi-dimensional feature map neurons Output: Dense layer feed-forward neurons Input: e.g. image, spectral map of voice data Layer: Multi-dimensional feature map neurons
  • 18. Sharing some early experiences/lessons Infrastructure Computation abstraction might be too low level (a lot of pros and cons) A generic deep learning platform is very challenging (like recurrent NN) Communication is important Methods of partitioning models are important High performance mathematical library is useful SRA-SV | Cloud Research Lab Slide 18
  • 19. Sharing some early experiences Algorithm/Models Models for ASR are relatively small Models for image are much larger Models for NLP are typical small DA seems more efficient than RBM for image Accelerated SGD or Hessian free optimizations need to be explored SRA-SV | Cloud Research Lab Slide 19
  • 20. Usage cases of Deep Learning SRA-SV | Cloud Research Lab Slide 20
  • 21. Image Recognition Object models Object parts SRA-SV | Cloud Research Lab Slide 21 Edges Pixels Image pixels Hand-designed Feature Extraction (SIFT, HOG etc.) Trainable Classifier Object Category Featured Learner (Convolutional NN is popular) Learned high level features Data augmentation Central and corner crops Original Image
  • 22. Speech Recognition • DNN is used to replace GMM to learn state output probability in HMM. • FF and DBN have been used for ASR • CNN starts being used to further improve WER • Rectified Linear Activation seems better than SRA-SV | Cloud Research Lab Slide 22 Sigmoid • Models are relatively small (e.g. 5 layers, 2560 neurons/hidden layer) Li Deng, A Tutorial Survey of Architectures, Algorithms, and Applications for Deep Learning
  • 23. NLP Deep Learning in NLP is quite new Learn word vector Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean, Efficient Estimation of Word Representations in Vector Space SRA-SV | Cloud Research Lab Slide 23
  • 24. NLP Based on word vector, map sentences to vector space now Sentiment Analysis Richard Socher Jeffrey Pennington Eric H. Huang Andrew Y. Ng Christopher D. Manning, Semi-Supervised Recursive Autoencoders for Predicting Sentiment Distributions SRA-SV | Cloud Research Lab Slide 24
  • 25. Q&A

Editor's Notes

  1. Plan to validate Stanford’s alg. For ASR??