Uber Open Source: Catching Up with Fritz Obermeyer and Noah Goodman from the Pyro Team

Molly Vorwerck
12 min readadvanced
--
View Original

Overview

The article features an interview with Fritz Obermeyer and Noah Goodman from Uber AI, discussing the significance of Pyro, an open-source deep probabilistic programming language. They highlight its role in advancing AI research and its unique features compared to other probabilistic programming solutions.

What You'll Learn

1

How to leverage Pyro for probabilistic programming in AI applications

2

Why open sourcing software can enhance collaboration and innovation

3

When to use deep probabilistic programming for complex data modeling

Prerequisites & Requirements

  • Understanding of probabilistic programming concepts
  • Familiarity with PyTorch and Python

Key Questions Answered

What inspired your team to create and open source Pyro?
The Pyro team was inspired by the unmet need for probabilistic programming in the machine learning community, particularly for Python users. They aimed to integrate existing machine learning tools with probabilistic programming to build innovative models.
Which companies and academic organizations currently use Pyro?
Pyro is utilized by numerous institutions including MIT, Harvard, Stanford, and the Broad Institute, among others. Many smaller research groups also implement Pyro for their AI projects, indicating its broad acceptance in the academic community.
How do we use Pyro at Uber?
At Uber, Pyro is employed for various applications including sensor fusion for self-driving vehicles, time series forecasting, ad spend allocation models, and research into fault attribution and anomaly detection.
What has been most gratifying about open sourcing Pyro?
The Pyro team finds it gratifying that external contributors have significantly enhanced the project, demonstrating the quality and ambition of contributions from the community, which exceeded their expectations.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Software
Pyro
A deep probabilistic programming language used for AI applications.
Software
Pytorch
The underlying framework that Pyro is built upon.

Key Actionable Insights

1
Consider integrating Pyro into your AI projects to leverage its capabilities in probabilistic programming.
Using Pyro can streamline the development of complex models and enhance collaboration with the academic community.
2
Engage with the open-source community to contribute to projects like Pyro, which can lead to professional growth and innovation.
Contributing to open-source projects allows engineers to gain experience, showcase their skills, and collaborate with experts in the field.
3
Utilize Pyro for research in areas like anomaly detection and fault attribution to advance your organization's AI capabilities.
These applications can provide valuable insights and improve operational efficiency in data-driven environments.

Common Pitfalls

1
Failing to adequately test open-source software can lead to bugs and unreliable performance.
This often occurs when resources are limited. Ensuring thorough testing and documentation is crucial for maintaining software quality.

Related Concepts

Probabilistic Programming
Deep Learning Frameworks
Open Source Software Development