SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Towards a Comprehensive
Machine Learning Benchmark
Dr. Amitai Armon
Data Science Lead, Advanced Analytics, Intel
How Machine Learning Helps Intel
Improving
processes
Driving
new offerings
Design Manufacturing Marketing & Sales
Parkinson’s Disease
Monitoring
Cloud Analytics
Platform
How Can Intel Help Machine Learning?
PC World, May 2015
How Can We Tell What Should Be Improved?
Many algorithms, many data types, constantly evolving…
A Machine Learning Benchmark is Obviously a Must
… but how can it incorporate the diversity of this domain and the
ongoing and future changes?
Our Basic Approach: Cover the Building Blocks
We observed that the various Machine Learning algorithms are composed of
several types of building blocks - these building blocks should be handled well
The Machine Learning Building Block Types
• ML basic building blocks
1. Linear Algebra
2. Measures
3. Special Functions
4. Mathematical Optimization
5. Data Characteristics
6. Data-dependent Compute
7. Memory Access
8. Very large models
9. Hybrid Methods
• ML Meta building blocks
1. Learning Protocols
2. Learning Phases
3. Algorithmic Flow and Structure
Compute
Data
Compute - Data Interplay
Process
Machine Learning Building Blocks: Example
• ML basic building blocks
1. Linear Algebra
2. Measures
3. Special Functions
4. Optimization Problems
5. Data Characteristics
6. Data-dependent Compute
7. Memory Access
8. Very large models
9. Hybrid Methods
• ML Meta building blocks
1. Learning Protocols
2. Learning Phases
3. Algorithmic Flow and Structure
Linear Algebra
• GEMM
• 𝑋 𝑇
𝑋, 𝑋𝑋 𝑇
, 𝑋 𝑇
𝑋 −1
𝑋 𝑇
• Quadratic Form - 𝑣 𝑇 𝐴𝑣
• Commonly used Algorithms
• Inversion
• Matrix Factorization
• Eigendecomposition
• Singular Value Decomposition (SVD)
• Need to support both Dense and Sparse
• Special Matrices of interest
• Symmetric – Covariance, Kernel
• Stochastic – Row elements sum to 1
• Boolean
• Diagonal
Machine Learning Building Blocks: Example
• ML basic building blocks
1. Linear Algebra
2. Measures
3. Special Functions
4. Mathematical Optimization
5. Data Characteristics
6. Data-dependent Compute
7. Memory Access
8. Very large models
9. Hybrid Methods
• ML Meta building blocks
1. Learning Protocols
2. Learning Phases
3. Algorithmic Flow and Structure
Data Characteristics
• Type and Format
• Numeric/Categorical –16b, 32b, 64b
• Sparse and Dense
• Typical sizes, Sparsity structure
• Distribution
• Univariate, Dependency Structure, Mixture,
Even/Biased Class, Separability
# of features Feature types Sparse/ Dense
Usages Small Mid Large Catego
rical
Numeri
c
Time
Series
Sparse Dense
Advertising
SNA
Clinical
Genomics
Telco
IoT
Example: Mapping Algorithms to Building Blocks
PCA Decision Tree Deep Learning - CNN Apriori Adaboost
Linear Algebra GEMM Convolution, GEMM
Measures Infotheo, Gini
Infotheo, Euclidean,
Softmax
Special Functions log sigmoid, tanh, ReLU exp
Mathematical Optimization Non-convex
Data Characteristics
Categorical + + +
Numeric + + + +
Data-Dep. Compute
Sorting, Bucketing,
Data-dep. Branches
Counting, Bucketing,
Data-dep. Branches
Memory Access
Blocks + +
Columns +
Other
Predicate-based,
Associative
Weighted
Sampling
Very Large Models +
Hybrid Method Committee
Application: A Machine Learning Workloads Suite
• Building Blocks Coverage (partial list …)
• Linear Algebra – GEMM, Inv., Factorization, …
• Measures – Euclidean, InfoGain, RBF, …
• Special Functions – log, exp, …
• Math. Optimization – QP, EM, L-BFGS, SGD , …
• Data – Num., Cat., Dense, Sparse, Feat. Dep., …
• Data-dep. Compute – Sort, Bucket, KD Tree, …
• Memory Access – Seq, Indexed, Pred, Rnd, …
• Very large models – CNN, KNN, K-SVM, …
Building Block
Type
Algorithms
Dense Linear
Algebra
K-Means
SVM
PCA
GMM
Logistic Reg.
Sparse Linear
Algebra
K-Means
SVM
PCA
Logistic Reg.
ALS
Data Dependency Apriori
Decision Tree
Naïve Bayes
KNN
LDA
Walktrap
Large Models CNN
Our approach enables selecting representatives of the major building blocks
• Tasks Coverage:
Classification, Clustering, Recommendation,
Dimensionality Reduction, Rule Induction,
Community Detection
Building Block
Type
Algorithms Data sets
Dense Linear
Algebra
K-Means
SVM
PCA
GMM
Logistic Reg.
Clustered
Sparse Linear
Algebra
K-Means
SVM
PCA
Logistic Reg.
ALS
Graphs
Text
Data Dependency Apriori
Decision Tree
Naïve Bayes
KNN
LDA
Walktrap
Clustered
Graphs
Bio Informatics
Text
Manufacturing
Large Models CNN Images
Which Datasets to Use?
There are publicly available datasets, but they may not cover all relevant sizes
and characteristics. We complement them by simulating data.
• Power Law graph
• Small World graph
(regular/random)
• SBM (few/many blocks)
DensityX X Size
http://snap.stanford.edu/data/
Which Datasets to Use: Another Example
• Simulated Dense Clustered Datasets
vary by
• Number of dimensions
• Number of samples
• Number of clusters
• Mixing proportion
• Uniform, Power-law
• Dependency structure
• Cluster separation
• c-separation*
• Alignment in space
• Scattered, Line, Sphere
* Dasgupta, S., Schulman, L., A Probabilistic Analysis of EM for Mixtures of
Separated, Spherical Gaussians. JMLR, 8 (2007)
Which Datasets to Use: Labeled Dense Clustered Data
Which Parameters / Configurations to Use?
We should use each algorithm with implementations, configurations and
parameters that will express all its building blocks
Isn’t It Too Big for a Benchmark?
The benchmark should be concise – it should not contain dozens of thousands of
separate executions (for each algorithm, dataset and configuration)
Reducing the Number of Workloads
We developed a WOrkload Optimization Framework (WOOF), which enables
running many executions and clustering them by hardware or software profiles
We then select one representative for each bottleneck behavior
Software Profiling
Software behavior is evaluated using the Perf Linux tool. Thousands of executions
are reduced into few representatives of the behaviors encountered.
• Radial SVM:
• Linear SVM:
Hardware Profiling
Hardware behavior is evaluated using Yasin’s Top-Down methodology(*), identifying
the percentage of time spent on each of the processor hotspots
(*) A. Yasin – Top Down Analysis: never lost with Xeon perf counters – CERN workshop (2013)
Hardware Profiling: Community Detection Example
Multiple executions of community detection algorithms are reduced into five
representatives of different hardware behaviors
(*) L1, L2 and L3 are the three levels of caches of the processor
Hardware Profiling: Community Detection Example
Hardware Profiling: Illustrating the Effect of Data Selection
Alternate Least Squares (ALS)
Different data characteristics cause different hardware profiles, and simulated data
may introduce additional behaviors (projected on two dimensions using PCA)
Benchmark Building Process
Algorithm Selection
Defining Parameter Sets
Defining Datasets
Reducing to
Representatives
Results
Analysis/Validation
Current Status and Next Steps
• Based on the above process we analyzed 18 algorithms, representing the main
building blocks, with multiple datasets and configurations, and built a suit of 50
machine-learning workloads
• Both software developers and hardware architects inside Intel started to use it
and gained interesting insights
• Work on completing the benchmark is currently in progress
Acknowledgments
• This project was initiated and guided by Dr. Shai Fine, Advanced Analytics, Intel
• Much of the presented results and analysis is due to the intensive work of the
Advanced Analytics WOOF team:
Chen Admati, Omer Barak, Omer Ben-porat, Roy Ben-shimol, Amir Chanovsky, Nufar Gaspar, Dima
Hanukaev, Tom Hope, Litan Ilany, Nitzan Kalvari, Oren David Kimhi, Hagar Loeub, Michal Moran,
Jacob Neiman, Yevgeni Nous, Yevgeni Reif , Yahav Shadmiy, Gilad Wallach
• Additional valuable contributions were made by:
Assaf Araki, Ehud Cohen, Jason Dai, Boris Ginzburg, Sergey Goffman, Paul Kandel, Sergey
Maidanov, Debbie Marr, Andrey Nikolaev, Gilad Olswang, Nir Peled, Ananth Sankaranarayanan,
Nadathur Rajagopalan Satish, Ganesh Venkatesh, Brian D Womack
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

Machine Learning 101 | Essential Tools for Machine Learning
Machine Learning 101 | Essential Tools for Machine LearningMachine Learning 101 | Essential Tools for Machine Learning
Machine Learning 101 | Essential Tools for Machine LearningHafiz Muhammad Attaullah
 
Azure Machine Learning Intro
Azure Machine Learning IntroAzure Machine Learning Intro
Azure Machine Learning IntroDamir Dobric
 
10 Lessons Learned from Building Machine Learning Systems
10 Lessons Learned from Building Machine Learning Systems10 Lessons Learned from Building Machine Learning Systems
10 Lessons Learned from Building Machine Learning SystemsXavier Amatriain
 
Data Science, Machine Learning and Neural Networks
Data Science, Machine Learning and Neural NetworksData Science, Machine Learning and Neural Networks
Data Science, Machine Learning and Neural NetworksBICA Labs
 
Microsoft azure machine learning
Microsoft azure machine learningMicrosoft azure machine learning
Microsoft azure machine learningAmol Gholap
 
ML DL AI DS BD - An Introduction
ML DL AI DS BD - An IntroductionML DL AI DS BD - An Introduction
ML DL AI DS BD - An IntroductionDony Riyanto
 
Graph Based Machine Learning with Applications to Media Analytics
Graph Based Machine Learning with Applications to Media AnalyticsGraph Based Machine Learning with Applications to Media Analytics
Graph Based Machine Learning with Applications to Media AnalyticsNYC Predictive Analytics
 
Big Data Analytics (ML, DL, AI) hands-on
Big Data Analytics (ML, DL, AI) hands-onBig Data Analytics (ML, DL, AI) hands-on
Big Data Analytics (ML, DL, AI) hands-onDony Riyanto
 
Machine learning 101 dkom 2017
Machine learning 101 dkom 2017Machine learning 101 dkom 2017
Machine learning 101 dkom 2017fredverheul
 
Machine Learning Overview
Machine Learning OverviewMachine Learning Overview
Machine Learning OverviewMykhailo Koval
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine LearningRahul Jain
 
Azure Machine Learning and ML on Premises
Azure Machine Learning and ML on PremisesAzure Machine Learning and ML on Premises
Azure Machine Learning and ML on PremisesIvo Andreev
 
201906 02 Introduction to AutoML with ML.NET 1.0
201906 02 Introduction to AutoML with ML.NET 1.0201906 02 Introduction to AutoML with ML.NET 1.0
201906 02 Introduction to AutoML with ML.NET 1.0Mark Tabladillo
 
A Beginner's Guide to Machine Learning with Scikit-Learn
A Beginner's Guide to Machine Learning with Scikit-LearnA Beginner's Guide to Machine Learning with Scikit-Learn
A Beginner's Guide to Machine Learning with Scikit-LearnSarah Guido
 
Automated Machine Learning
Automated Machine LearningAutomated Machine Learning
Automated Machine LearningYuriy Guts
 
Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...
Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...
Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...Aditya Bhattacharya
 
Graph Based Machine Learning on Relational Data
Graph Based Machine Learning on Relational DataGraph Based Machine Learning on Relational Data
Graph Based Machine Learning on Relational DataBenjamin Bengfort
 
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine LearningMakine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine LearningAli Alkan
 

Was ist angesagt? (20)

Machine Learning 101 | Essential Tools for Machine Learning
Machine Learning 101 | Essential Tools for Machine LearningMachine Learning 101 | Essential Tools for Machine Learning
Machine Learning 101 | Essential Tools for Machine Learning
 
Azure Machine Learning Intro
Azure Machine Learning IntroAzure Machine Learning Intro
Azure Machine Learning Intro
 
Knowledge Discovery
Knowledge DiscoveryKnowledge Discovery
Knowledge Discovery
 
10 Lessons Learned from Building Machine Learning Systems
10 Lessons Learned from Building Machine Learning Systems10 Lessons Learned from Building Machine Learning Systems
10 Lessons Learned from Building Machine Learning Systems
 
Data Science, Machine Learning and Neural Networks
Data Science, Machine Learning and Neural NetworksData Science, Machine Learning and Neural Networks
Data Science, Machine Learning and Neural Networks
 
Microsoft azure machine learning
Microsoft azure machine learningMicrosoft azure machine learning
Microsoft azure machine learning
 
ML DL AI DS BD - An Introduction
ML DL AI DS BD - An IntroductionML DL AI DS BD - An Introduction
ML DL AI DS BD - An Introduction
 
Graph Based Machine Learning with Applications to Media Analytics
Graph Based Machine Learning with Applications to Media AnalyticsGraph Based Machine Learning with Applications to Media Analytics
Graph Based Machine Learning with Applications to Media Analytics
 
Big Data Analytics (ML, DL, AI) hands-on
Big Data Analytics (ML, DL, AI) hands-onBig Data Analytics (ML, DL, AI) hands-on
Big Data Analytics (ML, DL, AI) hands-on
 
Machine learning 101 dkom 2017
Machine learning 101 dkom 2017Machine learning 101 dkom 2017
Machine learning 101 dkom 2017
 
Machine Learning Overview
Machine Learning OverviewMachine Learning Overview
Machine Learning Overview
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
Azure Machine Learning and ML on Premises
Azure Machine Learning and ML on PremisesAzure Machine Learning and ML on Premises
Azure Machine Learning and ML on Premises
 
201906 02 Introduction to AutoML with ML.NET 1.0
201906 02 Introduction to AutoML with ML.NET 1.0201906 02 Introduction to AutoML with ML.NET 1.0
201906 02 Introduction to AutoML with ML.NET 1.0
 
A Beginner's Guide to Machine Learning with Scikit-Learn
A Beginner's Guide to Machine Learning with Scikit-LearnA Beginner's Guide to Machine Learning with Scikit-Learn
A Beginner's Guide to Machine Learning with Scikit-Learn
 
Automated Machine Learning
Automated Machine LearningAutomated Machine Learning
Automated Machine Learning
 
Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...
Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...
Aditya Bhattacharya - Enterprise DL - Accelerating Deep Learning Solutions to...
 
Graph Based Machine Learning on Relational Data
Graph Based Machine Learning on Relational DataGraph Based Machine Learning on Relational Data
Graph Based Machine Learning on Relational Data
 
What is Machine Learning
What is Machine LearningWhat is Machine Learning
What is Machine Learning
 
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine LearningMakine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
 

Andere mochten auch

Screenplay - 'Kay'
Screenplay - 'Kay'Screenplay - 'Kay'
Screenplay - 'Kay'skywalker97
 
Measurement of the different type of the resistance1
Measurement of the different type of the resistance1Measurement of the different type of the resistance1
Measurement of the different type of the resistance1Pana Mann
 
Managing Time as a Coach
Managing Time as a CoachManaging Time as a Coach
Managing Time as a CoachRL Learning
 
7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา
7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา
7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษาNan Wilawan
 
Podiatry handouts
Podiatry handoutsPodiatry handouts
Podiatry handoutsMVNPA
 
NCL coaches technical meeting
NCL coaches technical meetingNCL coaches technical meeting
NCL coaches technical meetingRL Learning
 
Osvaldo Ajuda C.V.-English
Osvaldo Ajuda C.V.-EnglishOsvaldo Ajuda C.V.-English
Osvaldo Ajuda C.V.-EnglishOsvaldo Ajuda
 
Marketing_Collateral_Samples_2015_final
Marketing_Collateral_Samples_2015_finalMarketing_Collateral_Samples_2015_final
Marketing_Collateral_Samples_2015_finalTroy Wise
 
Electronic devices used in reinforced concrete by eng mustafa
Electronic devices used in reinforced concrete by eng mustafaElectronic devices used in reinforced concrete by eng mustafa
Electronic devices used in reinforced concrete by eng mustafamustafa abdulwahed
 
BuilderArchitect Magazine
BuilderArchitect MagazineBuilderArchitect Magazine
BuilderArchitect MagazineMark Roshanski
 
Untangling Graphs with GPU Clouds
Untangling Graphs with GPU CloudsUntangling Graphs with GPU Clouds
Untangling Graphs with GPU CloudsTuri, Inc.
 

Andere mochten auch (17)

Screenplay - 'Kay'
Screenplay - 'Kay'Screenplay - 'Kay'
Screenplay - 'Kay'
 
FOLIO_Binder
FOLIO_BinderFOLIO_Binder
FOLIO_Binder
 
Measurement of the different type of the resistance1
Measurement of the different type of the resistance1Measurement of the different type of the resistance1
Measurement of the different type of the resistance1
 
Managing Time as a Coach
Managing Time as a CoachManaging Time as a Coach
Managing Time as a Coach
 
Ryzyko
RyzykoRyzyko
Ryzyko
 
David_Bermingham
David_BerminghamDavid_Bermingham
David_Bermingham
 
7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา
7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา
7. การใช้งานระบบสารสนเทศในการบริหารสถานศึกษา
 
Podiatry handouts
Podiatry handoutsPodiatry handouts
Podiatry handouts
 
NCL coaches technical meeting
NCL coaches technical meetingNCL coaches technical meeting
NCL coaches technical meeting
 
De 2
De 2 De 2
De 2
 
Osvaldo Ajuda C.V.-English
Osvaldo Ajuda C.V.-EnglishOsvaldo Ajuda C.V.-English
Osvaldo Ajuda C.V.-English
 
Yarn Printing
Yarn PrintingYarn Printing
Yarn Printing
 
Marketing_Collateral_Samples_2015_final
Marketing_Collateral_Samples_2015_finalMarketing_Collateral_Samples_2015_final
Marketing_Collateral_Samples_2015_final
 
Electronic devices used in reinforced concrete by eng mustafa
Electronic devices used in reinforced concrete by eng mustafaElectronic devices used in reinforced concrete by eng mustafa
Electronic devices used in reinforced concrete by eng mustafa
 
First
FirstFirst
First
 
BuilderArchitect Magazine
BuilderArchitect MagazineBuilderArchitect Magazine
BuilderArchitect Magazine
 
Untangling Graphs with GPU Clouds
Untangling Graphs with GPU CloudsUntangling Graphs with GPU Clouds
Untangling Graphs with GPU Clouds
 

Ähnlich wie Towards a Comprehensive Machine Learning Benchmark

The Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it WorkThe Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it WorkIvo Andreev
 
Everything you need to know about AutoML
Everything you need to know about AutoMLEverything you need to know about AutoML
Everything you need to know about AutoMLArpitha Gurumurthy
 
Data Analysis – Technical learnings
Data Analysis – Technical learningsData Analysis – Technical learnings
Data Analysis – Technical learningsInvenkLearn
 
Azure Databricks for Data Scientists
Azure Databricks for Data ScientistsAzure Databricks for Data Scientists
Azure Databricks for Data ScientistsRichard Garris
 
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...Big Data Value Association
 
Data analytcis-first-steps
Data analytcis-first-stepsData analytcis-first-steps
Data analytcis-first-stepsShesha R
 
A new language for a new biology: How SBML and other tools are transforming m...
A new language for a new biology: How SBML and other tools are transforming m...A new language for a new biology: How SBML and other tools are transforming m...
A new language for a new biology: How SBML and other tools are transforming m...Mike Hucka
 
Identifying and classifying unknown Network Disruption
Identifying and classifying unknown Network DisruptionIdentifying and classifying unknown Network Disruption
Identifying and classifying unknown Network Disruptionjagan477830
 
Guiding through a typical Machine Learning Pipeline
Guiding through a typical Machine Learning PipelineGuiding through a typical Machine Learning Pipeline
Guiding through a typical Machine Learning PipelineMichael Gerke
 
The Machine Learning Workflow with Azure
The Machine Learning Workflow with AzureThe Machine Learning Workflow with Azure
The Machine Learning Workflow with AzureIvo Andreev
 
Traditional Machine Learning and Deep Learning on OpenPOWER/POWER systems
Traditional Machine Learning and Deep Learning on OpenPOWER/POWER systemsTraditional Machine Learning and Deep Learning on OpenPOWER/POWER systems
Traditional Machine Learning and Deep Learning on OpenPOWER/POWER systemsGanesan Narayanasamy
 
Creating a new language to support open innovation
Creating a new language to support open innovationCreating a new language to support open innovation
Creating a new language to support open innovationMike Hucka
 
RAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme ScalesRAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme ScalesIan Foster
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsLola Burgueño
 
Choosing a Machine Learning technique to solve your need
Choosing a Machine Learning technique to solve your needChoosing a Machine Learning technique to solve your need
Choosing a Machine Learning technique to solve your needGibDevs
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsJordi Cabot
 
The Data Science Process - Do we need it and how to apply?
The Data Science Process - Do we need it and how to apply?The Data Science Process - Do we need it and how to apply?
The Data Science Process - Do we need it and how to apply?Ivo Andreev
 
Storage Challenges for Production Machine Learning
Storage Challenges for Production Machine LearningStorage Challenges for Production Machine Learning
Storage Challenges for Production Machine LearningNisha Talagala
 

Ähnlich wie Towards a Comprehensive Machine Learning Benchmark (20)

The Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it WorkThe Power of Auto ML and How Does it Work
The Power of Auto ML and How Does it Work
 
Everything you need to know about AutoML
Everything you need to know about AutoMLEverything you need to know about AutoML
Everything you need to know about AutoML
 
Data Analysis – Technical learnings
Data Analysis – Technical learningsData Analysis – Technical learnings
Data Analysis – Technical learnings
 
Azure Databricks for Data Scientists
Azure Databricks for Data ScientistsAzure Databricks for Data Scientists
Azure Databricks for Data Scientists
 
AutoML lectures (ACDL 2019)
AutoML lectures (ACDL 2019)AutoML lectures (ACDL 2019)
AutoML lectures (ACDL 2019)
 
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
 
Data analytcis-first-steps
Data analytcis-first-stepsData analytcis-first-steps
Data analytcis-first-steps
 
A new language for a new biology: How SBML and other tools are transforming m...
A new language for a new biology: How SBML and other tools are transforming m...A new language for a new biology: How SBML and other tools are transforming m...
A new language for a new biology: How SBML and other tools are transforming m...
 
Identifying and classifying unknown Network Disruption
Identifying and classifying unknown Network DisruptionIdentifying and classifying unknown Network Disruption
Identifying and classifying unknown Network Disruption
 
Guiding through a typical Machine Learning Pipeline
Guiding through a typical Machine Learning PipelineGuiding through a typical Machine Learning Pipeline
Guiding through a typical Machine Learning Pipeline
 
The Machine Learning Workflow with Azure
The Machine Learning Workflow with AzureThe Machine Learning Workflow with Azure
The Machine Learning Workflow with Azure
 
Traditional Machine Learning and Deep Learning on OpenPOWER/POWER systems
Traditional Machine Learning and Deep Learning on OpenPOWER/POWER systemsTraditional Machine Learning and Deep Learning on OpenPOWER/POWER systems
Traditional Machine Learning and Deep Learning on OpenPOWER/POWER systems
 
Creating a new language to support open innovation
Creating a new language to support open innovationCreating a new language to support open innovation
Creating a new language to support open innovation
 
RAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme ScalesRAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme Scales
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model Transformations
 
Choosing a Machine Learning technique to solve your need
Choosing a Machine Learning technique to solve your needChoosing a Machine Learning technique to solve your need
Choosing a Machine Learning technique to solve your need
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model Transformations
 
The Data Science Process - Do we need it and how to apply?
The Data Science Process - Do we need it and how to apply?The Data Science Process - Do we need it and how to apply?
The Data Science Process - Do we need it and how to apply?
 
Module-4_Part-II.pptx
Module-4_Part-II.pptxModule-4_Part-II.pptx
Module-4_Part-II.pptx
 
Storage Challenges for Production Machine Learning
Storage Challenges for Production Machine LearningStorage Challenges for Production Machine Learning
Storage Challenges for Production Machine Learning
 

Mehr von Turi, Inc.

Webinar - Analyzing Video
Webinar - Analyzing VideoWebinar - Analyzing Video
Webinar - Analyzing VideoTuri, Inc.
 
Webinar - Patient Readmission Risk
Webinar - Patient Readmission RiskWebinar - Patient Readmission Risk
Webinar - Patient Readmission RiskTuri, Inc.
 
Webinar - Know Your Customer - Arya (20160526)
Webinar - Know Your Customer - Arya (20160526)Webinar - Know Your Customer - Arya (20160526)
Webinar - Know Your Customer - Arya (20160526)Turi, Inc.
 
Webinar - Product Matching - Palombo (20160428)
Webinar - Product Matching - Palombo (20160428)Webinar - Product Matching - Palombo (20160428)
Webinar - Product Matching - Palombo (20160428)Turi, Inc.
 
Webinar - Pattern Mining Log Data - Vega (20160426)
Webinar - Pattern Mining Log Data - Vega (20160426)Webinar - Pattern Mining Log Data - Vega (20160426)
Webinar - Pattern Mining Log Data - Vega (20160426)Turi, Inc.
 
Webinar - Fraud Detection - Palombo (20160428)
Webinar - Fraud Detection - Palombo (20160428)Webinar - Fraud Detection - Palombo (20160428)
Webinar - Fraud Detection - Palombo (20160428)Turi, Inc.
 
Scaling Up Machine Learning: How to Benchmark GraphLab Create on Huge Datasets
Scaling Up Machine Learning: How to Benchmark GraphLab Create on Huge DatasetsScaling Up Machine Learning: How to Benchmark GraphLab Create on Huge Datasets
Scaling Up Machine Learning: How to Benchmark GraphLab Create on Huge DatasetsTuri, Inc.
 
Pattern Mining: Extracting Value from Log Data
Pattern Mining: Extracting Value from Log DataPattern Mining: Extracting Value from Log Data
Pattern Mining: Extracting Value from Log DataTuri, Inc.
 
Intelligent Applications with Machine Learning Toolkits
Intelligent Applications with Machine Learning ToolkitsIntelligent Applications with Machine Learning Toolkits
Intelligent Applications with Machine Learning ToolkitsTuri, Inc.
 
Text Analysis with Machine Learning
Text Analysis with Machine LearningText Analysis with Machine Learning
Text Analysis with Machine LearningTuri, Inc.
 
Machine Learning with GraphLab Create
Machine Learning with GraphLab CreateMachine Learning with GraphLab Create
Machine Learning with GraphLab CreateTuri, Inc.
 
Machine Learning in Production with Dato Predictive Services
Machine Learning in Production with Dato Predictive ServicesMachine Learning in Production with Dato Predictive Services
Machine Learning in Production with Dato Predictive ServicesTuri, Inc.
 
Machine Learning in 2016: Live Q&A with Carlos Guestrin
Machine Learning in 2016: Live Q&A with Carlos GuestrinMachine Learning in 2016: Live Q&A with Carlos Guestrin
Machine Learning in 2016: Live Q&A with Carlos GuestrinTuri, Inc.
 
Scalable data structures for data science
Scalable data structures for data scienceScalable data structures for data science
Scalable data structures for data scienceTuri, Inc.
 
Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015
Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015
Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015Turi, Inc.
 
Introduction to Recommender Systems
Introduction to Recommender SystemsIntroduction to Recommender Systems
Introduction to Recommender SystemsTuri, Inc.
 
Machine learning in production
Machine learning in productionMachine learning in production
Machine learning in productionTuri, Inc.
 
New Capabilities in the PyData Ecosystem
New Capabilities in the PyData EcosystemNew Capabilities in the PyData Ecosystem
New Capabilities in the PyData EcosystemTuri, Inc.
 

Mehr von Turi, Inc. (20)

Webinar - Analyzing Video
Webinar - Analyzing VideoWebinar - Analyzing Video
Webinar - Analyzing Video
 
Webinar - Patient Readmission Risk
Webinar - Patient Readmission RiskWebinar - Patient Readmission Risk
Webinar - Patient Readmission Risk
 
Webinar - Know Your Customer - Arya (20160526)
Webinar - Know Your Customer - Arya (20160526)Webinar - Know Your Customer - Arya (20160526)
Webinar - Know Your Customer - Arya (20160526)
 
Webinar - Product Matching - Palombo (20160428)
Webinar - Product Matching - Palombo (20160428)Webinar - Product Matching - Palombo (20160428)
Webinar - Product Matching - Palombo (20160428)
 
Webinar - Pattern Mining Log Data - Vega (20160426)
Webinar - Pattern Mining Log Data - Vega (20160426)Webinar - Pattern Mining Log Data - Vega (20160426)
Webinar - Pattern Mining Log Data - Vega (20160426)
 
Webinar - Fraud Detection - Palombo (20160428)
Webinar - Fraud Detection - Palombo (20160428)Webinar - Fraud Detection - Palombo (20160428)
Webinar - Fraud Detection - Palombo (20160428)
 
Scaling Up Machine Learning: How to Benchmark GraphLab Create on Huge Datasets
Scaling Up Machine Learning: How to Benchmark GraphLab Create on Huge DatasetsScaling Up Machine Learning: How to Benchmark GraphLab Create on Huge Datasets
Scaling Up Machine Learning: How to Benchmark GraphLab Create on Huge Datasets
 
Pattern Mining: Extracting Value from Log Data
Pattern Mining: Extracting Value from Log DataPattern Mining: Extracting Value from Log Data
Pattern Mining: Extracting Value from Log Data
 
Intelligent Applications with Machine Learning Toolkits
Intelligent Applications with Machine Learning ToolkitsIntelligent Applications with Machine Learning Toolkits
Intelligent Applications with Machine Learning Toolkits
 
Text Analysis with Machine Learning
Text Analysis with Machine LearningText Analysis with Machine Learning
Text Analysis with Machine Learning
 
Machine Learning with GraphLab Create
Machine Learning with GraphLab CreateMachine Learning with GraphLab Create
Machine Learning with GraphLab Create
 
Machine Learning in Production with Dato Predictive Services
Machine Learning in Production with Dato Predictive ServicesMachine Learning in Production with Dato Predictive Services
Machine Learning in Production with Dato Predictive Services
 
Machine Learning in 2016: Live Q&A with Carlos Guestrin
Machine Learning in 2016: Live Q&A with Carlos GuestrinMachine Learning in 2016: Live Q&A with Carlos Guestrin
Machine Learning in 2016: Live Q&A with Carlos Guestrin
 
Scalable data structures for data science
Scalable data structures for data scienceScalable data structures for data science
Scalable data structures for data science
 
Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015
Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015
Introduction to Deep Learning for Image Analysis at Strata NYC, Sep 2015
 
Introduction to Recommender Systems
Introduction to Recommender SystemsIntroduction to Recommender Systems
Introduction to Recommender Systems
 
Machine learning in production
Machine learning in productionMachine learning in production
Machine learning in production
 
SFrame
SFrameSFrame
SFrame
 
Dato Keynote
Dato KeynoteDato Keynote
Dato Keynote
 
New Capabilities in the PyData Ecosystem
New Capabilities in the PyData EcosystemNew Capabilities in the PyData Ecosystem
New Capabilities in the PyData Ecosystem
 

Towards a Comprehensive Machine Learning Benchmark

  • 1. Towards a Comprehensive Machine Learning Benchmark Dr. Amitai Armon Data Science Lead, Advanced Analytics, Intel
  • 2. How Machine Learning Helps Intel Improving processes Driving new offerings Design Manufacturing Marketing & Sales Parkinson’s Disease Monitoring Cloud Analytics Platform
  • 3. How Can Intel Help Machine Learning? PC World, May 2015
  • 4. How Can We Tell What Should Be Improved? Many algorithms, many data types, constantly evolving…
  • 5. A Machine Learning Benchmark is Obviously a Must … but how can it incorporate the diversity of this domain and the ongoing and future changes?
  • 6. Our Basic Approach: Cover the Building Blocks We observed that the various Machine Learning algorithms are composed of several types of building blocks - these building blocks should be handled well
  • 7. The Machine Learning Building Block Types • ML basic building blocks 1. Linear Algebra 2. Measures 3. Special Functions 4. Mathematical Optimization 5. Data Characteristics 6. Data-dependent Compute 7. Memory Access 8. Very large models 9. Hybrid Methods • ML Meta building blocks 1. Learning Protocols 2. Learning Phases 3. Algorithmic Flow and Structure Compute Data Compute - Data Interplay Process
  • 8. Machine Learning Building Blocks: Example • ML basic building blocks 1. Linear Algebra 2. Measures 3. Special Functions 4. Optimization Problems 5. Data Characteristics 6. Data-dependent Compute 7. Memory Access 8. Very large models 9. Hybrid Methods • ML Meta building blocks 1. Learning Protocols 2. Learning Phases 3. Algorithmic Flow and Structure Linear Algebra • GEMM • 𝑋 𝑇 𝑋, 𝑋𝑋 𝑇 , 𝑋 𝑇 𝑋 −1 𝑋 𝑇 • Quadratic Form - 𝑣 𝑇 𝐴𝑣 • Commonly used Algorithms • Inversion • Matrix Factorization • Eigendecomposition • Singular Value Decomposition (SVD) • Need to support both Dense and Sparse • Special Matrices of interest • Symmetric – Covariance, Kernel • Stochastic – Row elements sum to 1 • Boolean • Diagonal
  • 9. Machine Learning Building Blocks: Example • ML basic building blocks 1. Linear Algebra 2. Measures 3. Special Functions 4. Mathematical Optimization 5. Data Characteristics 6. Data-dependent Compute 7. Memory Access 8. Very large models 9. Hybrid Methods • ML Meta building blocks 1. Learning Protocols 2. Learning Phases 3. Algorithmic Flow and Structure Data Characteristics • Type and Format • Numeric/Categorical –16b, 32b, 64b • Sparse and Dense • Typical sizes, Sparsity structure • Distribution • Univariate, Dependency Structure, Mixture, Even/Biased Class, Separability # of features Feature types Sparse/ Dense Usages Small Mid Large Catego rical Numeri c Time Series Sparse Dense Advertising SNA Clinical Genomics Telco IoT
  • 10. Example: Mapping Algorithms to Building Blocks PCA Decision Tree Deep Learning - CNN Apriori Adaboost Linear Algebra GEMM Convolution, GEMM Measures Infotheo, Gini Infotheo, Euclidean, Softmax Special Functions log sigmoid, tanh, ReLU exp Mathematical Optimization Non-convex Data Characteristics Categorical + + + Numeric + + + + Data-Dep. Compute Sorting, Bucketing, Data-dep. Branches Counting, Bucketing, Data-dep. Branches Memory Access Blocks + + Columns + Other Predicate-based, Associative Weighted Sampling Very Large Models + Hybrid Method Committee
  • 11. Application: A Machine Learning Workloads Suite • Building Blocks Coverage (partial list …) • Linear Algebra – GEMM, Inv., Factorization, … • Measures – Euclidean, InfoGain, RBF, … • Special Functions – log, exp, … • Math. Optimization – QP, EM, L-BFGS, SGD , … • Data – Num., Cat., Dense, Sparse, Feat. Dep., … • Data-dep. Compute – Sort, Bucket, KD Tree, … • Memory Access – Seq, Indexed, Pred, Rnd, … • Very large models – CNN, KNN, K-SVM, … Building Block Type Algorithms Dense Linear Algebra K-Means SVM PCA GMM Logistic Reg. Sparse Linear Algebra K-Means SVM PCA Logistic Reg. ALS Data Dependency Apriori Decision Tree Naïve Bayes KNN LDA Walktrap Large Models CNN Our approach enables selecting representatives of the major building blocks • Tasks Coverage: Classification, Clustering, Recommendation, Dimensionality Reduction, Rule Induction, Community Detection Building Block Type Algorithms Data sets Dense Linear Algebra K-Means SVM PCA GMM Logistic Reg. Clustered Sparse Linear Algebra K-Means SVM PCA Logistic Reg. ALS Graphs Text Data Dependency Apriori Decision Tree Naïve Bayes KNN LDA Walktrap Clustered Graphs Bio Informatics Text Manufacturing Large Models CNN Images
  • 12. Which Datasets to Use? There are publicly available datasets, but they may not cover all relevant sizes and characteristics. We complement them by simulating data. • Power Law graph • Small World graph (regular/random) • SBM (few/many blocks) DensityX X Size http://snap.stanford.edu/data/
  • 13. Which Datasets to Use: Another Example • Simulated Dense Clustered Datasets vary by • Number of dimensions • Number of samples • Number of clusters • Mixing proportion • Uniform, Power-law • Dependency structure • Cluster separation • c-separation* • Alignment in space • Scattered, Line, Sphere * Dasgupta, S., Schulman, L., A Probabilistic Analysis of EM for Mixtures of Separated, Spherical Gaussians. JMLR, 8 (2007)
  • 14. Which Datasets to Use: Labeled Dense Clustered Data
  • 15. Which Parameters / Configurations to Use? We should use each algorithm with implementations, configurations and parameters that will express all its building blocks
  • 16. Isn’t It Too Big for a Benchmark? The benchmark should be concise – it should not contain dozens of thousands of separate executions (for each algorithm, dataset and configuration)
  • 17. Reducing the Number of Workloads We developed a WOrkload Optimization Framework (WOOF), which enables running many executions and clustering them by hardware or software profiles We then select one representative for each bottleneck behavior
  • 18. Software Profiling Software behavior is evaluated using the Perf Linux tool. Thousands of executions are reduced into few representatives of the behaviors encountered. • Radial SVM: • Linear SVM:
  • 19. Hardware Profiling Hardware behavior is evaluated using Yasin’s Top-Down methodology(*), identifying the percentage of time spent on each of the processor hotspots (*) A. Yasin – Top Down Analysis: never lost with Xeon perf counters – CERN workshop (2013)
  • 20. Hardware Profiling: Community Detection Example Multiple executions of community detection algorithms are reduced into five representatives of different hardware behaviors (*) L1, L2 and L3 are the three levels of caches of the processor
  • 21. Hardware Profiling: Community Detection Example
  • 22. Hardware Profiling: Illustrating the Effect of Data Selection Alternate Least Squares (ALS) Different data characteristics cause different hardware profiles, and simulated data may introduce additional behaviors (projected on two dimensions using PCA)
  • 23. Benchmark Building Process Algorithm Selection Defining Parameter Sets Defining Datasets Reducing to Representatives Results Analysis/Validation
  • 24. Current Status and Next Steps • Based on the above process we analyzed 18 algorithms, representing the main building blocks, with multiple datasets and configurations, and built a suit of 50 machine-learning workloads • Both software developers and hardware architects inside Intel started to use it and gained interesting insights • Work on completing the benchmark is currently in progress
  • 25. Acknowledgments • This project was initiated and guided by Dr. Shai Fine, Advanced Analytics, Intel • Much of the presented results and analysis is due to the intensive work of the Advanced Analytics WOOF team: Chen Admati, Omer Barak, Omer Ben-porat, Roy Ben-shimol, Amir Chanovsky, Nufar Gaspar, Dima Hanukaev, Tom Hope, Litan Ilany, Nitzan Kalvari, Oren David Kimhi, Hagar Loeub, Michal Moran, Jacob Neiman, Yevgeni Nous, Yevgeni Reif , Yahav Shadmiy, Gilad Wallach • Additional valuable contributions were made by: Assaf Araki, Ehud Cohen, Jason Dai, Boris Ginzburg, Sergey Goffman, Paul Kandel, Sergey Maidanov, Debbie Marr, Andrey Nikolaev, Gilad Olswang, Nir Peled, Ananth Sankaranarayanan, Nadathur Rajagopalan Satish, Ganesh Venkatesh, Brian D Womack