GPyTorch distribution objects are essentially the same as torch distribution objects. For the most part, GpyTorch relies on torch's distribution library. However, we offer two custom distributions.
We implement a custom ~gpytorch.distributions.MultivariateNormal
that accepts ~gpytorch.lazy.LazyTensor
objects for covariance matrices. This allows us to use custom linear algebra operations, which makes this more efficient than PyTorch's MVN implementation.
In addition, we implement a ~gpytorch.distributions.MultitaskMultivariateNormal
which can be used with multi-output Gaussian process models.
Note
If Pyro is available, all GPyTorch distribution objects inherit Pyro's distribution methods as well.
gpytorch.distributions
gpytorch.distributions
Distribution
MultivariateNormal
MultitaskMultivariateNormal
(Borrowed from Pyro.) Degenerate discrete distribution (a single point).
Discrete distribution that assigns probability one to the single element in its support. Delta distribution parameterized by a random choice should not be used with MCMC based inference, as doing so produces incorrect results.
- param v
The single support element.
- param log_density
An optional density for this Delta. This is useful to keep the class of Delta distributions closed under differentiable transformation.
- param event_dim
Optional event dimension, defaults to zero.
- type v
torch.Tensor
- type log_density
torch.Tensor
- type event_dim
int