SlideShare uma empresa Scribd logo
1 de 32
Build Scalable and Modular
Learning Systems
Tianqi Chen
University of Washington
tqchen@cs.washington.edu
Joint work with contributors from
Machine Learning Impact us All
Advance Science
Improve Our LifeImprove Web
Experience
Learning System: The Engine of Revolution
Flexible Scalable
Modular Lightweight
A Method to Solve Half of the Problems
age < 15
is male?
+2 -1+0.1
Y N
Y N
Use Computer
Daily
Y N
+0.9 -0.9
f( ) = 2 + 0.9= 2.9 f( )= -1 - 0.9= -1.9
Tree Boosting (Friedman 1999)
Used by 17 out of 29 Kaggle winners last
year and more, winning solutions for the
all the problems the last slide
All use
XGBoost is Great and is Getting Better
Monotonic Functions
• Constraint prediction to be monotonic to certain features
• Useful for interpretability and generalization
Fast Histogram-based Trees
• Bring techniques of recent improvements in histogram based
tree construction to XGBoost
• FastBDT (Thomas Keck), LightGBM (Ke et.al)
• Optimized for both categorical and continuous features.
Contributed by Hyunsu Cho,
University of Washington
GPU based Optimization
• Run each boosting iteration on the GPU
• Uses fast parallel prefix sum / radix sort operations
• Available now in XGboost
Dataset i7-6700K (s) Titan X (s) Speedup
Yahoo LTR 3738 507 7.37
Higgs 31352 4173 7.51
Bosch 9460 1009 9.38
Contributed by Rory Mitchell,
Waikato University
Modularity: Platform Agnostic Engine
In any language
On any Platform
• YARN, MPI, Flink, Spark, ...
• Easily extendible to
other cloud data flow
Solution to the other half of problems
MXNet: A Scalable Deep Learning System
Flexibility Scalable
Modular
Declarative vs Imperative Programs
• Declarative graphs are easy to store, port, and optimize
• Theano, TensorFlow
• Imperative programs are flexible but hard to optimize
• PyTorch, Chainer, Numpy
MXNet’s Approach: Mixed Programming
Imperative
NDArray API
>>> import mxnet as mx
>>> a = mx.nd.zeros((100, 50))
>>> a.shape
(100L, 50L)
>>> b = mx.nd.ones((100, 50))
>>> c = a + b
>>> b += c
>>> import mxnet as mx
>>> net = mx.symbol.Variable('data')
>>> net = mx.symbol.FullyConnected(data=net, num_hidden=128)
>>> net = mx.symbol.SoftmaxOutput(data=net)
>>> type(net)
<class ‘mxnet.symbol.Symbol’>
>>> texec = net.simple_bind(data=data_shape)
Declarative API
MXNet
Flexible Scalable
Modular
• Speed is critical to deep learning
• Parallelism leads to higher performance
• Parallelization across multiple GPUs
• Parallel execution of small kernels
• Overlapping memory/networking transfer and computation
• …
Need for Parallelism
Parallel Programs are Painful to Write…
• … because of dependencies
Solution: Auto Parallelization with
Dependency Engine
• Single thread abstraction of parallel environment
• Works for both symbolic and imperative programs
Dependency
Engine
Scaling up to 256 AWS GPUs
• Weak scaling (fix batch-size per GPU)
• Need to tune different optimal
parameters with more GPUs
• Larger learning rate
• More noised augmentation
Bias variance trade-off
https://github.com/dmlc/mxnet/tree/master/example/image-classification#scalability-results
Adopted as AWS’s choice of deep learning system
Scaling Up is Good, How about Big Model?
Many model is bounded by memory
Memory Optimization
• Memory sharing, in-place optimization
Trade Computation for Memory
• Do re-computation instead of saving
• Training Deep Nets with Sublinear Memory Cost Chen.et.al arXiv 1604.06174
• Memory-Efficient Backpropagation Through Time Gruslys.et.al arXiv:1606.03401
O(sqrt(N)) memory cost with 25% overhead
ImageNet ResNet configurations
Train Bigger models on a single GPU
MXNet
Flexible Scalable
Modular
Deep Learning System will Become more
Heterogeneous
Mobile System A
Operators of A
Graph,
without gradient
System B
Code generators
Computation Graph Def,
Gradient and Execution B
Front-end
Operators B
System C
Operators of C
Front-end
• More heterogeneous
• Need different system for specific cases(with common modules)
Unix Philosophy vs Monolithic System
• Monolithic: Build one system to solve everything
• Unix Philosophy: Build modules to solve one thing well, work with
other pieces
NNVM: High Level Graph Optimization for
Deep learning
• Allow different front-ends and back-ends
• Allow extensive optimizations:
• Memory reusing.
• Runtime kernel fusion.
• Automatic tensor partition and placement.
• …
Lightweight
The Challenge for IR of Deep Learning Systems
FGradient FInferShape
Conv Relu Symbolic
Differentiation
Shape
Inference
Operators
Optimization Passes
Use Set of Common Operator Attributes
BatchNorm
The need for adding new operators
Code Gen
The need for adding new optimizations
FCodeGen
The Challenge for IR of Deep Learning Systems
The Systems Add New Operator Add New Optimization Pass
Most DL Systems(e.g. old MXNet) Easy Fixed Set of Optimization Pass
LLVM Fixed Set of Primitive Ops Easy
NNVM Easy Easy
Comparison:
• Ease of adding new operator, optimization pass without changing the core interface
• Fixed interface is useful for decentralization
• New optimization directly usable by other projects, without pushing back to centralized repo
• Easy removable of not relevant passes
Graph, Attribute, and Pass
Attr Key Attr Value
“A_shape” (256, 512)
“A_dtype” Float
“B_shape” (256, 512)
“B_dtype” Float
… …
GradientPass
PlaceDevicePass
InferShapePass
InferTypePass
PlanMemoryPass
Semantic Graph
Execution Graph
…
…
In Progress: Multi-Level Compilation Pipeline
NNVM
TVM
Automatic Differentiation
Memory Reuse- Planning
Predefined Executors/OpsTiling
Parallel Pattern
TinyFlow MXNet
High level NNVM Pass
Frontend
Memory Hierarchy
Low level Pass
CUDA x86/armMetal OpenCLLLVM
….
Recap
Flexible Scalable
Modular
MXNet and XGBoost is developed by over 100 collaborators
Special thanks to
Tianqi Chen
UW
Mu Li
CMU/Amazon
Bing Xu
Turi
Chiyuan Zhang
MIT
Junyuan Xie
UW
Yizhi Liu
MediaV
Tianjun Xiao
Microsoft
Yutian Li
Stanford
Yuan Tang
Uptake
Qian Kou
Indiana University
Hu Shiwen
Shanghai
Chuntao Hong
Microsoft
Min Lin
Qihoo 360
Naiyan Wang
TuSimple
Tong He
Simon Fraser University
Minjie Wang
NYU
Valentin Churavy
OIST
Ali Farhadi
UW/AI2
Carlos Guestrin
UW/Turi
Alexander Smola
CMU/Amazon
Zheng Zhang
NYU Shanghai

Mais conteúdo relacionado

Mais procurados

Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16
Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16
Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16
MLconf
 
Terascale Learning
Terascale LearningTerascale Learning
Terascale Learning
pauldix
 
Exploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal WabbitExploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal Wabbit
Shiladitya Sen
 
Wapid and wobust active online machine leawning with Vowpal Wabbit
Wapid and wobust active online machine leawning with Vowpal Wabbit Wapid and wobust active online machine leawning with Vowpal Wabbit
Wapid and wobust active online machine leawning with Vowpal Wabbit
Antti Haapala
 

Mais procurados (20)

Braxton McKee, Founder & CEO, Ufora at MLconf SF - 11/13/15
Braxton McKee, Founder & CEO, Ufora at MLconf SF - 11/13/15Braxton McKee, Founder & CEO, Ufora at MLconf SF - 11/13/15
Braxton McKee, Founder & CEO, Ufora at MLconf SF - 11/13/15
 
Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16
Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16
Dr. Erin LeDell, Machine Learning Scientist, H2O.ai at MLconf SEA - 5/20/16
 
Online learning, Vowpal Wabbit and Hadoop
Online learning, Vowpal Wabbit and HadoopOnline learning, Vowpal Wabbit and Hadoop
Online learning, Vowpal Wabbit and Hadoop
 
Sergei Vassilvitskii, Research Scientist, Google at MLconf NYC - 4/15/16
Sergei Vassilvitskii, Research Scientist, Google at MLconf NYC - 4/15/16Sergei Vassilvitskii, Research Scientist, Google at MLconf NYC - 4/15/16
Sergei Vassilvitskii, Research Scientist, Google at MLconf NYC - 4/15/16
 
Software Frameworks for Deep Learning (D1L7 2017 UPC Deep Learning for Comput...
Software Frameworks for Deep Learning (D1L7 2017 UPC Deep Learning for Comput...Software Frameworks for Deep Learning (D1L7 2017 UPC Deep Learning for Comput...
Software Frameworks for Deep Learning (D1L7 2017 UPC Deep Learning for Comput...
 
Terascale Learning
Terascale LearningTerascale Learning
Terascale Learning
 
Technical Tricks of Vowpal Wabbit
Technical Tricks of Vowpal WabbitTechnical Tricks of Vowpal Wabbit
Technical Tricks of Vowpal Wabbit
 
Exploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal WabbitExploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal Wabbit
 
Wapid and wobust active online machine leawning with Vowpal Wabbit
Wapid and wobust active online machine leawning with Vowpal Wabbit Wapid and wobust active online machine leawning with Vowpal Wabbit
Wapid and wobust active online machine leawning with Vowpal Wabbit
 
Optimization for Deep Networks (D2L1 2017 UPC Deep Learning for Computer Vision)
Optimization for Deep Networks (D2L1 2017 UPC Deep Learning for Computer Vision)Optimization for Deep Networks (D2L1 2017 UPC Deep Learning for Computer Vision)
Optimization for Deep Networks (D2L1 2017 UPC Deep Learning for Computer Vision)
 
Tokyo Webmining Talk1
Tokyo Webmining Talk1Tokyo Webmining Talk1
Tokyo Webmining Talk1
 
Daniel Shank, Data Scientist, Talla at MLconf SF 2016
Daniel Shank, Data Scientist, Talla at MLconf SF 2016Daniel Shank, Data Scientist, Talla at MLconf SF 2016
Daniel Shank, Data Scientist, Talla at MLconf SF 2016
 
An Introduction to TensorFlow architecture
An Introduction to TensorFlow architectureAn Introduction to TensorFlow architecture
An Introduction to TensorFlow architecture
 
Distributed implementation of a lstm on spark and tensorflow
Distributed implementation of a lstm on spark and tensorflowDistributed implementation of a lstm on spark and tensorflow
Distributed implementation of a lstm on spark and tensorflow
 
Intro to Scalable Deep Learning on AWS with Apache MXNet
Intro to Scalable Deep Learning on AWS with Apache MXNetIntro to Scalable Deep Learning on AWS with Apache MXNet
Intro to Scalable Deep Learning on AWS with Apache MXNet
 
Neural networks and google tensor flow
Neural networks and google tensor flowNeural networks and google tensor flow
Neural networks and google tensor flow
 
Scalable Deep Learning Using Apache MXNet
Scalable Deep Learning Using Apache MXNetScalable Deep Learning Using Apache MXNet
Scalable Deep Learning Using Apache MXNet
 
Keras on tensorflow in R & Python
Keras on tensorflow in R & PythonKeras on tensorflow in R & Python
Keras on tensorflow in R & Python
 
Parallel External Memory Algorithms Applied to Generalized Linear Models
Parallel External Memory Algorithms Applied to Generalized Linear ModelsParallel External Memory Algorithms Applied to Generalized Linear Models
Parallel External Memory Algorithms Applied to Generalized Linear Models
 
TensorFrames: Google Tensorflow on Apache Spark
TensorFrames: Google Tensorflow on Apache SparkTensorFrames: Google Tensorflow on Apache Spark
TensorFrames: Google Tensorflow on Apache Spark
 

Destaque

Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...
Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...
Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...
MLconf
 
John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017
John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017 John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017
John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017
MLconf
 
Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017
Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017
Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017
MLconf
 
Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017
Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017
Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017
MLconf
 
Artemy Malkov, CEO, Data Monsters at The AI Conference 2017
Artemy Malkov, CEO, Data Monsters at The AI Conference 2017 Artemy Malkov, CEO, Data Monsters at The AI Conference 2017
Artemy Malkov, CEO, Data Monsters at The AI Conference 2017
MLconf
 
Daniel Shank, Data Scientist, Talla at MLconf SF 2017
Daniel Shank, Data Scientist, Talla at MLconf SF 2017Daniel Shank, Data Scientist, Talla at MLconf SF 2017
Daniel Shank, Data Scientist, Talla at MLconf SF 2017
MLconf
 
Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017
Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017 Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017
Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017
MLconf
 

Destaque (20)

Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...
Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...
Jennifer Marsman, Principal Software Development Engineer, Microsoft at MLcon...
 
Jonas Schneider, Head of Engineering for Robotics, OpenAI
Jonas Schneider, Head of Engineering for Robotics, OpenAIJonas Schneider, Head of Engineering for Robotics, OpenAI
Jonas Schneider, Head of Engineering for Robotics, OpenAI
 
Garrett Goh, Scientist, Pacific Northwest National Lab
Garrett Goh, Scientist, Pacific Northwest National Lab Garrett Goh, Scientist, Pacific Northwest National Lab
Garrett Goh, Scientist, Pacific Northwest National Lab
 
John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017
John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017 John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017
John Maxwell, Data Scientist, Nordstrom at MLconf Seattle 2017
 
Shiva Amiri, CEO, Biosymetrics at The AI Conference 2017
Shiva Amiri, CEO, Biosymetrics at The AI Conference 2017Shiva Amiri, CEO, Biosymetrics at The AI Conference 2017
Shiva Amiri, CEO, Biosymetrics at The AI Conference 2017
 
Chris Nicholson, CEO Skymind at The AI Conference
Chris Nicholson, CEO Skymind at The AI Conference Chris Nicholson, CEO Skymind at The AI Conference
Chris Nicholson, CEO Skymind at The AI Conference
 
Malika Cantor, Operations Partner, Comet Labs at The AI Conference 2017
Malika Cantor, Operations Partner, Comet Labs at The AI Conference 2017Malika Cantor, Operations Partner, Comet Labs at The AI Conference 2017
Malika Cantor, Operations Partner, Comet Labs at The AI Conference 2017
 
Dr. Bryce Meredig, Chief Science Officer, Citrine at The AI Conference
Dr. Bryce Meredig, Chief Science Officer, Citrine at The AI Conference Dr. Bryce Meredig, Chief Science Officer, Citrine at The AI Conference
Dr. Bryce Meredig, Chief Science Officer, Citrine at The AI Conference
 
Alexandra Johnson, Software Engineer, SigOpt at MLconf ATL 2017
Alexandra Johnson, Software Engineer, SigOpt at MLconf ATL 2017Alexandra Johnson, Software Engineer, SigOpt at MLconf ATL 2017
Alexandra Johnson, Software Engineer, SigOpt at MLconf ATL 2017
 
Jacob Eisenstein, Assistant Professor, School of Interactive Computing, Georg...
Jacob Eisenstein, Assistant Professor, School of Interactive Computing, Georg...Jacob Eisenstein, Assistant Professor, School of Interactive Computing, Georg...
Jacob Eisenstein, Assistant Professor, School of Interactive Computing, Georg...
 
Will Murphy, VP of Business Development & Co-Founder, Talla at The AI Confere...
Will Murphy, VP of Business Development & Co-Founder, Talla at The AI Confere...Will Murphy, VP of Business Development & Co-Founder, Talla at The AI Confere...
Will Murphy, VP of Business Development & Co-Founder, Talla at The AI Confere...
 
Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017
Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017
Rahul Mehrotra, Product Manager, Maluuba at The AI Conference 2017
 
Jeremy Nixon, Machine Learning Engineer, Spark Technology Center at MLconf AT...
Jeremy Nixon, Machine Learning Engineer, Spark Technology Center at MLconf AT...Jeremy Nixon, Machine Learning Engineer, Spark Technology Center at MLconf AT...
Jeremy Nixon, Machine Learning Engineer, Spark Technology Center at MLconf AT...
 
Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017
Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017
Qiaoling Liu, Lead Data Scientist, CareerBuilder at MLconf ATL 2017
 
Artemy Malkov, CEO, Data Monsters at The AI Conference 2017
Artemy Malkov, CEO, Data Monsters at The AI Conference 2017 Artemy Malkov, CEO, Data Monsters at The AI Conference 2017
Artemy Malkov, CEO, Data Monsters at The AI Conference 2017
 
Ryan West, Machine Learning Engineer, Nexosis at MLconf ATL 2017
Ryan West, Machine Learning Engineer, Nexosis at MLconf ATL 2017Ryan West, Machine Learning Engineer, Nexosis at MLconf ATL 2017
Ryan West, Machine Learning Engineer, Nexosis at MLconf ATL 2017
 
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
 
Daniel Shank, Data Scientist, Talla at MLconf SF 2017
Daniel Shank, Data Scientist, Talla at MLconf SF 2017Daniel Shank, Data Scientist, Talla at MLconf SF 2017
Daniel Shank, Data Scientist, Talla at MLconf SF 2017
 
Jason Baldridge, Associate Professor of Computational Linguistics, University...
Jason Baldridge, Associate Professor of Computational Linguistics, University...Jason Baldridge, Associate Professor of Computational Linguistics, University...
Jason Baldridge, Associate Professor of Computational Linguistics, University...
 
Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017
Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017 Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017
Byron Galbraith, Chief Data Scientist, Talla, at MLconf SEA 2017
 

Semelhante a Tianqi Chen, PhD Student, University of Washington, at MLconf Seattle 2017

Software Architectures, Week 2 - Decomposition techniques
Software Architectures, Week 2 - Decomposition techniquesSoftware Architectures, Week 2 - Decomposition techniques
Software Architectures, Week 2 - Decomposition techniques
Angelos Kapsimanis
 
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
Turi, Inc.
 

Semelhante a Tianqi Chen, PhD Student, University of Washington, at MLconf Seattle 2017 (20)

【Unite 2017 Tokyo】C#ジョブシステムによるモバイルゲームのパフォーマンス向上テクニック
【Unite 2017 Tokyo】C#ジョブシステムによるモバイルゲームのパフォーマンス向上テクニック【Unite 2017 Tokyo】C#ジョブシステムによるモバイルゲームのパフォーマンス向上テクニック
【Unite 2017 Tokyo】C#ジョブシステムによるモバイルゲームのパフォーマンス向上テクニック
 
Convolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular ArchitecturesConvolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular Architectures
 
Distributed Deep Learning on AWS with Apache MXNet
Distributed Deep Learning on AWS with Apache MXNetDistributed Deep Learning on AWS with Apache MXNet
Distributed Deep Learning on AWS with Apache MXNet
 
Chap 2 classification of parralel architecture and introduction to parllel p...
Chap 2  classification of parralel architecture and introduction to parllel p...Chap 2  classification of parralel architecture and introduction to parllel p...
Chap 2 classification of parralel architecture and introduction to parllel p...
 
Neural Networks with Google TensorFlow
Neural Networks with Google TensorFlowNeural Networks with Google TensorFlow
Neural Networks with Google TensorFlow
 
Keynote at IWLS 2017
Keynote at IWLS 2017Keynote at IWLS 2017
Keynote at IWLS 2017
 
Advancements in HPCC Systems Machine Learning
Advancements in HPCC Systems Machine LearningAdvancements in HPCC Systems Machine Learning
Advancements in HPCC Systems Machine Learning
 
MXNet Workshop
MXNet WorkshopMXNet Workshop
MXNet Workshop
 
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
 
Hardware Acceleration for Machine Learning
Hardware Acceleration for Machine LearningHardware Acceleration for Machine Learning
Hardware Acceleration for Machine Learning
 
Improving Efficiency of Machine Learning Algorithms using HPCC Systems
Improving Efficiency of Machine Learning Algorithms using HPCC SystemsImproving Efficiency of Machine Learning Algorithms using HPCC Systems
Improving Efficiency of Machine Learning Algorithms using HPCC Systems
 
Learn about Tensorflow for Deep Learning now! Part 1
Learn about Tensorflow for Deep Learning now! Part 1Learn about Tensorflow for Deep Learning now! Part 1
Learn about Tensorflow for Deep Learning now! Part 1
 
Lecture 4: Deep Learning Frameworks
Lecture 4: Deep Learning FrameworksLecture 4: Deep Learning Frameworks
Lecture 4: Deep Learning Frameworks
 
Cvpr 2018 papers review (efficient computing)
Cvpr 2018 papers review (efficient computing)Cvpr 2018 papers review (efficient computing)
Cvpr 2018 papers review (efficient computing)
 
Software Architectures, Week 2 - Decomposition techniques
Software Architectures, Week 2 - Decomposition techniquesSoftware Architectures, Week 2 - Decomposition techniques
Software Architectures, Week 2 - Decomposition techniques
 
Chap 1(one) general introduction
Chap 1(one)  general introductionChap 1(one)  general introduction
Chap 1(one) general introduction
 
Deep Learning Initiative @ NECSTLab
Deep Learning Initiative @ NECSTLabDeep Learning Initiative @ NECSTLab
Deep Learning Initiative @ NECSTLab
 
HPPS 2008 - Maesani Moro
HPPS 2008 - Maesani MoroHPPS 2008 - Maesani Moro
HPPS 2008 - Maesani Moro
 
Machine learning from software developers point of view
Machine learning from software developers point of viewMachine learning from software developers point of view
Machine learning from software developers point of view
 
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
 

Mais de MLconf

Ted Willke - The Brain’s Guide to Dealing with Context in Language Understanding
Ted Willke - The Brain’s Guide to Dealing with Context in Language UnderstandingTed Willke - The Brain’s Guide to Dealing with Context in Language Understanding
Ted Willke - The Brain’s Guide to Dealing with Context in Language Understanding
MLconf
 
Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...
Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...
Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...
MLconf
 
Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...
Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...
Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...
MLconf
 
Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...
Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...
Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...
MLconf
 
Vito Ostuni - The Voice: New Challenges in a Zero UI World
Vito Ostuni - The Voice: New Challenges in a Zero UI WorldVito Ostuni - The Voice: New Challenges in a Zero UI World
Vito Ostuni - The Voice: New Challenges in a Zero UI World
MLconf
 

Mais de MLconf (20)

Jamila Smith-Loud - Understanding Human Impact: Social and Equity Assessments...
Jamila Smith-Loud - Understanding Human Impact: Social and Equity Assessments...Jamila Smith-Loud - Understanding Human Impact: Social and Equity Assessments...
Jamila Smith-Loud - Understanding Human Impact: Social and Equity Assessments...
 
Ted Willke - The Brain’s Guide to Dealing with Context in Language Understanding
Ted Willke - The Brain’s Guide to Dealing with Context in Language UnderstandingTed Willke - The Brain’s Guide to Dealing with Context in Language Understanding
Ted Willke - The Brain’s Guide to Dealing with Context in Language Understanding
 
Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...
Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...
Justin Armstrong - Applying Computer Vision to Reduce Contamination in the Re...
 
Igor Markov - Quantum Computing: a Treasure Hunt, not a Gold Rush
Igor Markov - Quantum Computing: a Treasure Hunt, not a Gold RushIgor Markov - Quantum Computing: a Treasure Hunt, not a Gold Rush
Igor Markov - Quantum Computing: a Treasure Hunt, not a Gold Rush
 
Josh Wills - Data Labeling as Religious Experience
Josh Wills - Data Labeling as Religious ExperienceJosh Wills - Data Labeling as Religious Experience
Josh Wills - Data Labeling as Religious Experience
 
Vinay Prabhu - Project GaitNet: Ushering in the ImageNet moment for human Gai...
Vinay Prabhu - Project GaitNet: Ushering in the ImageNet moment for human Gai...Vinay Prabhu - Project GaitNet: Ushering in the ImageNet moment for human Gai...
Vinay Prabhu - Project GaitNet: Ushering in the ImageNet moment for human Gai...
 
Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...
Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...
Jekaterina Novikova - Machine Learning Methods in Detecting Alzheimer’s Disea...
 
Meghana Ravikumar - Optimized Image Classification on the Cheap
Meghana Ravikumar - Optimized Image Classification on the CheapMeghana Ravikumar - Optimized Image Classification on the Cheap
Meghana Ravikumar - Optimized Image Classification on the Cheap
 
Noam Finkelstein - The Importance of Modeling Data Collection
Noam Finkelstein - The Importance of Modeling Data CollectionNoam Finkelstein - The Importance of Modeling Data Collection
Noam Finkelstein - The Importance of Modeling Data Collection
 
June Andrews - The Uncanny Valley of ML
June Andrews - The Uncanny Valley of MLJune Andrews - The Uncanny Valley of ML
June Andrews - The Uncanny Valley of ML
 
Sneha Rajana - Deep Learning Architectures for Semantic Relation Detection Tasks
Sneha Rajana - Deep Learning Architectures for Semantic Relation Detection TasksSneha Rajana - Deep Learning Architectures for Semantic Relation Detection Tasks
Sneha Rajana - Deep Learning Architectures for Semantic Relation Detection Tasks
 
Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...
Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...
Anoop Deoras - Building an Incrementally Trained, Local Taste Aware, Global D...
 
Vito Ostuni - The Voice: New Challenges in a Zero UI World
Vito Ostuni - The Voice: New Challenges in a Zero UI WorldVito Ostuni - The Voice: New Challenges in a Zero UI World
Vito Ostuni - The Voice: New Challenges in a Zero UI World
 
Anna choromanska - Data-driven Challenges in AI: Scale, Information Selection...
Anna choromanska - Data-driven Challenges in AI: Scale, Information Selection...Anna choromanska - Data-driven Challenges in AI: Scale, Information Selection...
Anna choromanska - Data-driven Challenges in AI: Scale, Information Selection...
 
Janani Kalyanam - Machine Learning to Detect Illegal Online Sales of Prescrip...
Janani Kalyanam - Machine Learning to Detect Illegal Online Sales of Prescrip...Janani Kalyanam - Machine Learning to Detect Illegal Online Sales of Prescrip...
Janani Kalyanam - Machine Learning to Detect Illegal Online Sales of Prescrip...
 
Esperanza Lopez Aguilera - Using a Bayesian Neural Network in the Detection o...
Esperanza Lopez Aguilera - Using a Bayesian Neural Network in the Detection o...Esperanza Lopez Aguilera - Using a Bayesian Neural Network in the Detection o...
Esperanza Lopez Aguilera - Using a Bayesian Neural Network in the Detection o...
 
Neel Sundaresan - Teaching a machine to code
Neel Sundaresan - Teaching a machine to codeNeel Sundaresan - Teaching a machine to code
Neel Sundaresan - Teaching a machine to code
 
Rishabh Mehrotra - Recommendations in a Marketplace: Personalizing Explainabl...
Rishabh Mehrotra - Recommendations in a Marketplace: Personalizing Explainabl...Rishabh Mehrotra - Recommendations in a Marketplace: Personalizing Explainabl...
Rishabh Mehrotra - Recommendations in a Marketplace: Personalizing Explainabl...
 
Soumith Chintala - Increasing the Impact of AI Through Better Software
Soumith Chintala - Increasing the Impact of AI Through Better SoftwareSoumith Chintala - Increasing the Impact of AI Through Better Software
Soumith Chintala - Increasing the Impact of AI Through Better Software
 
Roy Lowrance - Predicting Bond Prices: Regime Changes
Roy Lowrance - Predicting Bond Prices: Regime ChangesRoy Lowrance - Predicting Bond Prices: Regime Changes
Roy Lowrance - Predicting Bond Prices: Regime Changes
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Tianqi Chen, PhD Student, University of Washington, at MLconf Seattle 2017

  • 1. Build Scalable and Modular Learning Systems Tianqi Chen University of Washington tqchen@cs.washington.edu Joint work with contributors from
  • 2. Machine Learning Impact us All Advance Science Improve Our LifeImprove Web Experience
  • 3. Learning System: The Engine of Revolution Flexible Scalable Modular Lightweight
  • 4. A Method to Solve Half of the Problems age < 15 is male? +2 -1+0.1 Y N Y N Use Computer Daily Y N +0.9 -0.9 f( ) = 2 + 0.9= 2.9 f( )= -1 - 0.9= -1.9 Tree Boosting (Friedman 1999) Used by 17 out of 29 Kaggle winners last year and more, winning solutions for the all the problems the last slide All use
  • 5. XGBoost is Great and is Getting Better
  • 6. Monotonic Functions • Constraint prediction to be monotonic to certain features • Useful for interpretability and generalization
  • 7. Fast Histogram-based Trees • Bring techniques of recent improvements in histogram based tree construction to XGBoost • FastBDT (Thomas Keck), LightGBM (Ke et.al) • Optimized for both categorical and continuous features. Contributed by Hyunsu Cho, University of Washington
  • 8. GPU based Optimization • Run each boosting iteration on the GPU • Uses fast parallel prefix sum / radix sort operations • Available now in XGboost Dataset i7-6700K (s) Titan X (s) Speedup Yahoo LTR 3738 507 7.37 Higgs 31352 4173 7.51 Bosch 9460 1009 9.38 Contributed by Rory Mitchell, Waikato University
  • 9. Modularity: Platform Agnostic Engine In any language On any Platform • YARN, MPI, Flink, Spark, ... • Easily extendible to other cloud data flow
  • 10. Solution to the other half of problems
  • 11. MXNet: A Scalable Deep Learning System Flexibility Scalable Modular
  • 12. Declarative vs Imperative Programs • Declarative graphs are easy to store, port, and optimize • Theano, TensorFlow • Imperative programs are flexible but hard to optimize • PyTorch, Chainer, Numpy
  • 13. MXNet’s Approach: Mixed Programming Imperative NDArray API >>> import mxnet as mx >>> a = mx.nd.zeros((100, 50)) >>> a.shape (100L, 50L) >>> b = mx.nd.ones((100, 50)) >>> c = a + b >>> b += c >>> import mxnet as mx >>> net = mx.symbol.Variable('data') >>> net = mx.symbol.FullyConnected(data=net, num_hidden=128) >>> net = mx.symbol.SoftmaxOutput(data=net) >>> type(net) <class ‘mxnet.symbol.Symbol’> >>> texec = net.simple_bind(data=data_shape) Declarative API
  • 15. • Speed is critical to deep learning • Parallelism leads to higher performance • Parallelization across multiple GPUs • Parallel execution of small kernels • Overlapping memory/networking transfer and computation • … Need for Parallelism
  • 16. Parallel Programs are Painful to Write… • … because of dependencies
  • 17. Solution: Auto Parallelization with Dependency Engine • Single thread abstraction of parallel environment • Works for both symbolic and imperative programs Dependency Engine
  • 18. Scaling up to 256 AWS GPUs • Weak scaling (fix batch-size per GPU) • Need to tune different optimal parameters with more GPUs • Larger learning rate • More noised augmentation Bias variance trade-off https://github.com/dmlc/mxnet/tree/master/example/image-classification#scalability-results Adopted as AWS’s choice of deep learning system
  • 19. Scaling Up is Good, How about Big Model? Many model is bounded by memory
  • 20. Memory Optimization • Memory sharing, in-place optimization
  • 21. Trade Computation for Memory • Do re-computation instead of saving • Training Deep Nets with Sublinear Memory Cost Chen.et.al arXiv 1604.06174 • Memory-Efficient Backpropagation Through Time Gruslys.et.al arXiv:1606.03401
  • 22. O(sqrt(N)) memory cost with 25% overhead ImageNet ResNet configurations Train Bigger models on a single GPU
  • 24. Deep Learning System will Become more Heterogeneous Mobile System A Operators of A Graph, without gradient System B Code generators Computation Graph Def, Gradient and Execution B Front-end Operators B System C Operators of C Front-end • More heterogeneous • Need different system for specific cases(with common modules)
  • 25. Unix Philosophy vs Monolithic System • Monolithic: Build one system to solve everything • Unix Philosophy: Build modules to solve one thing well, work with other pieces
  • 26. NNVM: High Level Graph Optimization for Deep learning • Allow different front-ends and back-ends • Allow extensive optimizations: • Memory reusing. • Runtime kernel fusion. • Automatic tensor partition and placement. • … Lightweight
  • 27. The Challenge for IR of Deep Learning Systems FGradient FInferShape Conv Relu Symbolic Differentiation Shape Inference Operators Optimization Passes Use Set of Common Operator Attributes BatchNorm The need for adding new operators Code Gen The need for adding new optimizations FCodeGen
  • 28. The Challenge for IR of Deep Learning Systems The Systems Add New Operator Add New Optimization Pass Most DL Systems(e.g. old MXNet) Easy Fixed Set of Optimization Pass LLVM Fixed Set of Primitive Ops Easy NNVM Easy Easy Comparison: • Ease of adding new operator, optimization pass without changing the core interface • Fixed interface is useful for decentralization • New optimization directly usable by other projects, without pushing back to centralized repo • Easy removable of not relevant passes
  • 29. Graph, Attribute, and Pass Attr Key Attr Value “A_shape” (256, 512) “A_dtype” Float “B_shape” (256, 512) “B_dtype” Float … … GradientPass PlaceDevicePass InferShapePass InferTypePass PlanMemoryPass Semantic Graph Execution Graph … …
  • 30. In Progress: Multi-Level Compilation Pipeline NNVM TVM Automatic Differentiation Memory Reuse- Planning Predefined Executors/OpsTiling Parallel Pattern TinyFlow MXNet High level NNVM Pass Frontend Memory Hierarchy Low level Pass CUDA x86/armMetal OpenCLLLVM ….
  • 32. MXNet and XGBoost is developed by over 100 collaborators Special thanks to Tianqi Chen UW Mu Li CMU/Amazon Bing Xu Turi Chiyuan Zhang MIT Junyuan Xie UW Yizhi Liu MediaV Tianjun Xiao Microsoft Yutian Li Stanford Yuan Tang Uptake Qian Kou Indiana University Hu Shiwen Shanghai Chuntao Hong Microsoft Min Lin Qihoo 360 Naiyan Wang TuSimple Tong He Simon Fraser University Minjie Wang NYU Valentin Churavy OIST Ali Farhadi UW/AI2 Carlos Guestrin UW/Turi Alexander Smola CMU/Amazon Zheng Zhang NYU Shanghai