neuropod
Introducing Neuropod, Uber ATG's Open Source Deep Learning Inference Engine
Deep learning (DL) is advancing very quickly and different DL frameworks are effective at different tasks. As a result, we've used several DL frameworks at Uber ATG over the last few years. In 2016, Caffe2 was our primary deep learning framework, and in early 2017 we put in a significant amount of work to integrate TensorFlow. This involved major integration hurdles with CUDA and cuDNN, conflicts between dependencies of Caffe2 and TensorFlow, library loading issues and more. In late 2017, we started developing more models in PyTorch.
Uber open-sources Neuropod to unify AI frameworks and turn models into products
Uber today open-sourced Neuropod, an abstraction layer on top of existing machine learning frameworks that provides an interface for developing, training, and deploying AI models. It's designed to make it easier for researchers to build models in the framework of their choice while simplifying productization, according to the company. In both industry and academia, it's not uncommon for data scientists to use multiple frameworks during development. For example, Uber's Advanced Technologies Group (ATG) integrated Google's TensorFlow before transitioning to Facebook's PyTorch, which led to memory corruption and debugging problems when running alongside TensorFlow. Neuropod aims to prevent incompatibilities by making frameworks look the same when running a model, with out-of-the-box support for TensorFlow, PyTorch, Keras, and TorchScript.