Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Make Machine Learning Boring Again: Best Practi...
Search
szilard
July 20, 2019
0
120
Make Machine Learning Boring Again: Best Practices for Using Machine Learning in Businesses - LA Data Science Meetup - Playa Vista, August 2019
szilard
July 20, 2019
Tweet
Share
More Decks by szilard
See All by szilard
Gradient Boosting Machines (GBM): From Zero to Hero (with R and Python Code) - Data Con LA - Oct 2020
szilard
0
180
Make Machine Learning Boring Again: Best Practices for Using Machine Learning in Businesses - Albuquerque Machine Learning Meetup (Online) - Aug 2020
szilard
0
130
Better than Deep Learning: Gradient Boosting Machines (GBM) - eRum conference - invited talk - June 2020
szilard
0
110
Gradient Boosting Machines (GBM): From Zero to Hero (with R and Python Code) - LA Data Science Meetup - February 2020
szilard
0
100
A Random Walk in Data Science and Machine Learning in Practice - CEU, Business Analytics Masters - Budapest, Febr 2020
szilard
0
300
Better than My Meetup/Conference Talks: Going Deeper in Various GBM Topics - GBM Advanced Workshop - Budapest, Nov 2019
szilard
0
72
Gradient Boosting Machines (GBM): From Zero to Hero (with R and Python Code) - Budapest BI Forum, Budapest, Nov 2019
szilard
0
140
Better than Deep Learning: Gradient Boosting Machines (GBM) / 2019 edition - Budapest R and Data Science Meetups - Budapest, June 2019
szilard
0
87
Better than Deep Learning: Gradient Boosting Machines (GBM) / 2019 edition - LA R Meetup - Santa Monica, May 2019
szilard
0
22
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.5k
RailsConf 2023
tenderlove
30
1.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
A Tale of Four Properties
chriscoyier
160
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Being A Developer After 40
akosma
90
590k
Transcript
Make Machine Learning Boring Again: Best Practices for Using Machine
Learning in Businesses Szilard Pafka, PhD Chief Scientist, Epoch LA Data Science Meetup Aug 2019
None
Disclaimer: I am not representing my employer (Epoch) in this
talk I cannot confirm nor deny if Epoch is using any of the methods, tools, results etc. mentioned in this talk
None
None
None
None
None
y = f (x1, x2, ... , xn) Source: Hastie
etal, ESL 2ed
y = f (x1, x2, ... , xn)
None
None
None
None
#1 Use the Right Algo
Source: Andrew Ng
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
*
#2 Use Open Source
None
None
None
None
None
in 2006 - cost was not a factor! - data.frame
- [800] packages
None
None
None
None
None
None
None
#3 Simple > Complex
None
10x
None
None
None
None
None
None
None
None
#4 Incorporate Domain Knowledge Do Feature Engineering (Still) Explore Your
Data Clean Your Data
None
None
None
None
None
None
None
None
None
None
None
#5 Do Proper Validation Avoid: Overfitting, Data Leakage
None
None
None
None
None
None
None
None
None
None
None
None
None
None
#6 Batch or Real-Time Scoring?
None
https://medium.com/@HarlanH/patterns-for-connecting-predictive-models-to-software-products-f9b6e923f02d
https://medium.com/@dvelsner/deploying-a-simple-machine-learning-model-in-a-modern-web-application-flask-angular-docker-a657db075280 your app
None
None
R/Python: - Slow(er) - Encoding of categ. variables
#7 Do Online Validation as Well
None
https://www.oreilly.com/ideas/evaluating-machine-learning-models/page/2/orientation
https://www.oreilly.com/ideas/evaluating-machine-learning-models/page/2/orientation
https://www.oreilly.com/ideas/evaluating-machine-learning-models/page/2/orientation https://www.slideshare.net/FaisalZakariaSiddiqi/netflix-recommendations-feature-engineering-with-time-travel
#8 Monitor Your Models
None
https://www.retentionscience.com/blog/automating-machine-learning-monitoring-rs-labs/
https://www.retentionscience.com/blog/automating-machine-learning-monitoring-rs-labs/
None
20% 80% (my guess)
20% 80% (my guess)
#9 Business Value Seek / Measure / Sell
None
None
None
None
None
#10 Make it Reproducible
None
None
None
None
None
None
None
None
None
Cloud (servers)
ML training: lots of CPU cores lots of RAM limited
time
ML training: lots of CPU cores lots of RAM limited
time ML scoring: separated servers
ML (cloud) services (MLaaS)
None
“people that know what they’re doing just use open source
[...] the same open source tools that the MLaaS services offer” - Bradford Cross
Kaggle
None
already pre-processed data less domain knowledge (or deliberately hidden) AUC
0.0001 increases "relevant" no business metric no actual deployment models too complex no online evaluation no monitoring data leakage
Tuning and Auto ML
Ben Recht, Kevin Jamieson: http://www.argmin.net/2016/06/20/hypertuning/
GPUs
Aggregation 100M rows 1M groups Join 100M rows x 1M
rows time [s] time [s]
Aggregation 100M rows 1M groups Join 100M rows x 1M
rows time [s] time [s] “Motherfucka!”
None
API and GUIs
None
None
AI?
None
None
None
How to Start?
None
None