Cabs that know where you're going, before you do

Probabilistic models predict pickup and drop off locations

back to our blogs

Cabs that know where you're going, before you do

Probabilistic models predict pickup and drop off locations

In our NeurIPS 2018 paper “Gaussian Process Conditional Density Estimation”, we developed a probabilistic model that can learn complex conditional distributions. The model can, for example, learn the distribution of taxi drop-offs, given that we know where the passenger was picked-up. For every different passenger pick-up location, the model gives us a distribution of possible drop-off locations. 

Conditional density map (animated)

This work bridges a gap between two fields in machine learning: conditional generative modelling and Gaussian processes. Challenges remain when applying both these fields to machine learning problems. Generative models using deep networks are difficult to control and don’t work well when you have sparse datasets. Gaussian processes work well for all sorts of data but only produce simple densities.

Our work combines these two fields and, as a result, you get the best of worlds. We now have a fully probabilistic model extended with the right features to tackle all sorts of datasets.

“We were amazed when we saw that we could learn the conditional density of NYC’s yellow cabs by only looking at a handful of past trajectories.”

How does it work?

A Gaussian process (GP) is a probabilistic model for functions. It has two significant advantages that we exploit: we can specify prior beliefs leading to greater data efficiency, and we can obtain uncertainty estimates for predictions.

In the experiments, we applied our model to large datasets (1.5 million points) and small datasets (1,000 points), as well as image generation and regression scenarios (with 1,000 output dimensions).

We used these GPs to map a Gaussian distribution to our target distribution. We trained the GP and learnt the mapping by looking at examples of the target distribution in the dataset and generalising them over the complete domain.

What’s the impact of this work?

Conditional density estimation can be used in a range of cross-industry use cases. Some examples are logistics, smart cities and resource forecasting. Not surprisingly, the topic has received a lot of attention in recent years.

However, most existing models make use of neural networks, a popular parametric function approximator, whereas we adopt a Bayesian non-parametric GP.

Using a GP allows us to specify our prior beliefs about the mapping, resulting in a model that can gracefully accommodate sparse, missing or low data regimes.

There has been tremendous progress in scaling up GP models to large datasets in recent times. This is due to both engineering and theoretical advances and our work is part of this progress.

It has been an exciting couple of years: the combination of new computational tools and the new theory is opening up many possibilities which wouldn’t have been feasible even a few years ago.

Find out more

The NeurIPS 2018 machine learning research conference accepted eight research papers from PROWLER.io and the world-leading institutions and researchers we regularly collaborate with. You can read our abstract here and access the full paper “Gaussian Process Conditional Density Estimation” here.

Join us to make AI that will change the world

join our team