Overview of Examples

This examples directory provides numerous ipython notebooks that demonstrate the use of GPyTorch.

  1. Getting started
  2. Specialty Models/Tasks
  3. Scalable GP Regression Models
  4. Scalable GP Classification Models
  5. Deep Kernel Learning

Getting started

These are no-frills GP models, which will work in most small data applications. If you are looking to get familiar with GPyTorch, start here.

Some advanced techniques that you can apply to soup up these simple models:

Specialty Models and Tasks

  • Multitask GP Regression - check out the examples in the multitask GP folder
  • Bayesian Optimization - example coming soon!

Scalable GP Regression Models

If you have more than ~1,000 training data points, the simple GP models might start acting a bit slow. There are multiple methods to scale up GP regression, and the correct choice depends on your application. GPyTorch supports the following inducing point methods:

While there are lots of different choices, switching between methods requires a quick one-line change to your model. In addition, it is fairly straightforward to create your own custom scalable GP method. (Tutorial coming soon!) This is especially useful if your data is structured (e.g. if your data lies on a regularly-spaced grid).

Additionally, it is possible to use stochastic variational inference for regression problems. This is useful if you have an extremely large dataset. Some examples:

Scalable GP Classification Models

There are multiple methods for scalable GP classification, and the correct choice depends on your application. Some examples:

Deep Kernel Learning

GPyTorch seemlessly integrates with PyTorch, making it extremely easy to combine GPs with neural networks. The following examples use the Deep Kernel Learning method: