JuliaGaussianProcesses / JuliaGaussianProcesses/AbstractGPs.jl

LatentGP API: support for input-specific likelihoods

Open
#202 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
287
Forks
27
PR merge metrics
No merged PRs in 30d

Description

#201 made me realise that we can't currently handle input-specific likelihoods in our LatentGP.

In particular, consider this line: https://github.com/JuliaGaussianProcesses/AbstractGPs.jl/blob/83dc67dda55ef9c1013131dfe04fc9babb9059c9/src/latent_gp.jl#L29

The likelihood passes straight through to the LatentFiniteGP, meaning that it never gets to know about x.
Were we to insist that the lik field of the LatentGP be possible to evaluate on a vector of inputs, and change the above line to something along the lines of

(lgp::LatentGP)(x) = LatentFiniteGP(lgp.f(x, lgp.Σy), lgp.lik(x))

this would not be a problem.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with src/latent_gp.jl at the line linked in the issue, then inspect how LatentGP constructs LatentFiniteGP and how likelihoods are represented. Review issue #201 for the motivating case. Done means LatentGP can support likelihoods evaluated for input-specific x without breaking the existing LatentFiniteGP path.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
machine-learning
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.