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.