In this talk, we will explore how Uber enables rapid experimentation of machine learning models and optimization algorithms through Uber’s Data Science Workbench (DSW). DSW covers a series of stages in data scientists’ workflows including data exploration, feature engineering, machine learning model training, testing, and production deployment. DSW provides interactive notebooks for multiple languages with on-demand resource allocation and the ability to share their works through community features. It also has support for notebooks and intelligent applications backed by Spark job servers. Deep learning applications based on TensorFlow and Torch can be brought into DSW smoothly where resources management is taken care of by the system. The environment in DSW is customizable where users can bring their own libraries and frameworks. Moreover, DSW provides support for Shiny and Python dashboards as well as many other in-house visualization and mapping tools.
In the second part of this talk, we will explore the use cases where custom machine learning models developed in DSW are productionized within the platform. Uber applies machine learning extensively to solve some hard problems. Some use cases include calculating the right price for a ride for over 600 cities and applying NLP technologies to customer feedbacks to offer safe rides and reduce support costs. We will look at various options evaluated for productionizing custom models (server based and serverless). We will also look at how DSW integrates into the larger Uber’s ML ecosystem, model/feature stores, and other ML tools to realize the vision of a complete ML platform for Uber.
Speakers
Adam Hudson, Uber, Senior Software Engineer
Atul Gupte, Uber, Product Manager
2. / Data at Uber
/ Analytics Stack
/ Machine Learning at Uber
/ Data Science Workbench
/ Real-world Impact
Contents
3. Engineer turned Product Manager
Previously: building FarmVille & the mobile advertising platform @ Zynga
Currently: Product Manager for Data Science Workbench & Data
Warehouse
/ About Atul
8. 6,000+ data scientists, engineers, and operations
managers rely on us to support the business
9. Data is what differentiates Uber
but, data at Uber is unlike anywhere else.
10. Delicate marketplace with
network effects
Bits to atoms
Business
New LOBs spun up in a snap
Pluggable mobility platform
Spatio-temporal
Analytics
Sheer scale
Real-time. Real-world.
ML is Uber’s brain
Apps/Machine generated
queries
Varied skills: BI to DNN
Consumers
Internal and external
6,000 and growing
What makes Uber unique
11. MISSION
Move the world with
global data, local
insights, and intelligent
decisions.
Data Platform Team
13. The Data Team
Ingest
Workflow
Management
Store
Produce Model
Ad-Hoc &
Streaming
Analytics
Business
Intelligence
Machine
Learning
Metadata/
Knowledge
Experimentation
/
Segmentation
Visualization
Data
Infrastructure
Data Platforms
Data Services
& Analytics
Disperse
14. Kafka
Schemaless
SOA
BI Apps Ad-hocExperimentation ML Notebooks
Cluster
Management
All-Active
Observability
Security
Raw
Data
Raw
Tables
Hadoop
Hive Presto Spark
Modeled
Tables
Vertica
Vertica
Warehouse
AthenaX
Apollo
Streaming
Real-time
Metadata/Workflow Management
Data Infrastructure
16. The hype
● Ability of a machine to learn without being explicitly programmed
● Identify hidden patterns in the world based on current and historical
data and use it to predict the future
● Ability of a machine to get better at a task with data and experience
● Learn from mistakes and improve when given newer/more information
19. UNDERSTAND
BUSINESS NEED(S)
DEFINE MINIMUM
VIABLE PRODUCT (MVP)
○ Customers + cross-functional team
○ Define objectives and key results
○ Data-driven
○ Research
○ Ruthless prioritization
2. prototype
3. productionize
4. measure
1. define
Problem Definition
20. UNDERSTAND
BUSINESS NEED(S)
DEFINE MINIMUM
VIABLE PRODUCT (MVP)
2. prototype
1. define
GET DATA
DATA PREPARATION
TRAIN MODELS
EVALUATE MODELS
3. productionize
4. measure
validation
computational cost
interpretability
SQL, Spark
data cleansing and pre-
processing,
R / Python
CPU or GPU
Exploration
21. UNDERSTAND
BUSINESS NEED(S)
2. prototype
1. define
DATA PREPARATION
TRAIN MODELS
EVALUATE MODELS
4. measure GET DATA
PRODUCTIONIZE
MODELS
3. productionize
DEPLOY MODELS
Engineers + Data Scientists,
Java or Go,
unit tests
MAKE PREDICTIONSReal-time or
batch
Experimentation and
rollout monitoring;
Retraining strategy
DEFINE MINIMUM
VIABLE PRODUCT (MVP)
Production
22. UNDERSTAND
BUSINESS NEED(S)
DEFINE MINIMUM
VIABLE PRODUCT (MVP)
2. prototype
1. define
DATA PREPARATION
TRAIN MODELS
EVALUATE MODELS
GET DATA
DEPLOY MODELS
PRODUCTIONIZE
MODELS
MONITOR
PREDICTIONS
4. measure
MAKE PREDICTIONS
3. productionize
Automatically detect
degradations
GATHER AND
ANALYZE INSIGHTS
Deep-dive analyses
inform future product
roadmap
Measure
24. Senior Software Engineer
Previously: Big data and big network R&D in gaming, social media &
finance
Currently: Developer on Data Science Workbench
/ About Adam
25. A growing Data Science community was facing
problems with many aspects of their workflows
Our world in 2016 NEW
Getting Started
CollaborationShared Standards
Moving Models to
Production
Scalability
Available Features
Data Access
26. To unleash the productivity of
Uber’s Data Science
community
Mission
28. We Wanted More!
● Diverse customers working from same data
○ Data scientists
○ Developers
○ Interns
○ Operations
○ External parties
● Scalability with access to internal data, computation and accounts
● Acceptable licensing cost for large number of casual users
31. Our World Today
Getting Started
Collaboration
Shared Standards
Scalability
Available Features
Data Access
Fully hosted 1-click Jupyter Notebook & RStudio IDE
Pre-baked Environments
Sharing options on notebooks; 1-click Shiny dashboard publication
All internal data sources / Multi-DC / Secure / GDPR Compliant
Various Session Sizes, Types (CPU, GPU)/Access to Compute
Engines
Documentation Support
32. Common Use-Cases
● Large-scale data exploration
● Feature generation and model training
● Ad-hoc analysis and prototypes
● Review and collaboration
34. RStudio and Shiny are trademarks of RStudio, Inc
"Jupyter" is a trademark of the NumFOCUS foundation, of which Project Jupyter is a part.
"Python" is a registered trademark of the PSF. The Python logos (in several variants) are use trademarks of the PSF as well.
39. The World of Tomorrow!
Getting Started
Collaboration
Customized team environments
Social media-like interface; more flexible dashboards
Distributed deep learning
Low friction workflow
Available Features
Available Features
Moving Models
to Production
40. DSW Impact
Safety
Trip classification
Risk
Driver account check
Driver referral risk scoring
Uber Eats
Restaurant recommendations
Support
NLP model for support tickets
Operations
Lifetime value (LTV) model
more
!
And with that, I will pass you back to Atul to
discuss the impact that DSW is having.
42. We’re hiring!
Excited to build the data platform that moves the world?
Come join us!
http://t.uber.com/datahire
San Francisco, Palo Alto, Seattle, Bangalore