Preview 7 Open Source Projects from the Uber Open Summit

Overview

The article highlights seven open source projects showcased at the Uber Open Summit, emphasizing Uber's contributions to the open source community. It covers projects across various domains, including machine learning, web development, and infrastructure, providing insights into their functionalities and applications.

What You'll Learn

1

How to utilize Horovod for distributed training of machine learning models

2

Why Pyro is effective for probabilistic programming in AI applications

3

How to implement a plugin-based architecture using Fusion.js

4

When to use H3 for geospatial indexing in applications

5

How to leverage M3 for scalable metrics storage and querying

Key Questions Answered

What is Horovod and how does it facilitate distributed training?
Horovod is a distributed training framework designed for TensorFlow, Keras, and PyTorch, enabling faster training of machine learning models at scale. It simplifies the process for developers to run new models and is widely adopted by companies like Uber and NVIDIA.
What are the key features of Pyro as a probabilistic programming language?
Pyro is a deep probabilistic programming language built on PyTorch, designed for modern Bayesian machine learning. It allows for the use of deep neural networks in both models and inference, utilizing stochastic variational inference algorithms for large datasets.
How does Fusion.js improve web application performance?
Fusion.js is a plugin-based web framework that enhances performance by reducing page load times and interactivity delays. It has been adopted in over 120 web applications at Uber, significantly optimizing their web infrastructure.
What is the purpose of H3 in geospatial data management?
H3 is a hexagonal hierarchical geospatial indexing system used for indexing and visualizing geospatial data. It optimizes the Uber marketplace by enabling efficient data handling and visualization.
What capabilities does M3 provide for metrics storage?
M3 is a distributed time series database that supports scalable storage and querying of metrics. It integrates with Prometheus and is designed for real-time monitoring, handling petabytes of metrics at Uber.

Technologies & Tools

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

Machine Learning
Horovod
A distributed training framework for TensorFlow, Keras, and PyTorch.
Machine Learning
Pyro
A deep probabilistic programming language built on PyTorch.
Frontend
Fusion.js
A plugin-based universal web framework.
Backend
H3
A hexagonal hierarchical geospatial indexing system.
Infrastructure
M3
A distributed time series database and metrics platform.
Infrastructure
Jaeger
A tracing system for monitoring and troubleshooting transactions.
Visualization
Vis.gl
A suite of open-source visualization frameworks.

Key Actionable Insights

1
Implementing Horovod can significantly enhance the training speed of your machine learning models, especially in distributed environments.
By using Horovod, teams can leverage multiple GPUs across different nodes, which is essential for handling large datasets and complex models.
2
Utilizing Pyro for probabilistic programming can streamline your AI research and development processes.
With its advanced features for Bayesian inference, Pyro allows researchers to build complex models that can adapt to various data types and structures.
3
Adopting Fusion.js can lead to substantial performance improvements in web applications, reducing load times and enhancing user experience.
As seen in Uber's implementation, Fusion.js has proven effective in optimizing web performance, making it a valuable tool for developers.
4
H3 can be a game-changer for applications dealing with geospatial data, providing a robust framework for indexing and visualization.
Its hexagonal grid structure allows for efficient spatial queries and data representation, which is crucial for applications in urban planning and logistics.
5
M3's capabilities for metrics storage can empower organizations to implement advanced monitoring solutions.
By leveraging M3, teams can achieve a centralized system for managing metrics, facilitating better decision-making and operational efficiency.