[feature request] GPLVMs with missing data
See original GitHub issueI’m interested in using the pyro.contrib.gp.models.GPLVM
model in the case where some points in Y
(the observed data) are missing at random.
GPy has an example here.
This functionality isn’t available in pyro at the moment (I think - couldn’t find examples for this). Is this something that can be added? I’d be happy to contribute some code to do this.
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (3 by maintainers)
Top Results From Across the Web
Missing data imputation and heart failure readmission prediction
The GPLVM-based missing data imputation can provide both the mean ... This model can provide a mean estimate of each missing feature along ......
Read more >Gaussian Process Latent Variable Flows for ... - OpenReview
We compare this framework with traditional models like the Bayesian GPLVM. Our experiments focus on massively missing data settings. Reply Type: all.
Read more >Missing data imputation and heart failure readmission prediction
perform missing data imputation using GPLVM. This model can provide a mean estimate of each missing feature along with the variance ...
Read more >arXiv:2202.12979v1 [cs.LG] 25 Feb 2022
Generalised Gaussian Process Latent Variable Models (GPLVM) with ... the presence of massively missing data and ob-.
Read more >Applications and Extensions of GPLVM
Application: Deal with missing data in mocap. [K. Grochow, S. Martin, A. Hertzmann ... Is training with so little data a bug or...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
This worked! This is the class for reference:
I think I’m slightly in favour of changing the existing
Gaussian
likelihood class actually, and I can add an optional argument to the__init__
function likemask_missing_data=False
as there’s a lot of repeated code here. What would you say?Also, another quick comment, would it be possible to use this likelihood with the
(Sparse)GPRegression
classes? I ask becauselikelihood
doesn’t seem to be an optional argument for those classes, so perhaps it’d be a bit more work to get them to work under the missing data regime.@InfProbSciX I think you will need to also do
y = torch.masked_fill(y, y.isnan(), -999.)
ify
has NaN value. This note explains well whyNaN
happens duringbackward
.By the way, the
MaskedGaussian
interface looks great to me. 👍