Nonnegative Gaussian Process Regression

Have anyone tried a Nonnegative Gaussian Process Regression? If you have, do you have any example code you may share?

What I mean is that the output is supposed to be non-negative.

I found a paper on this method but it does not use Bayesian method at all.

Depending on what the non-negative outcome is (your post doesn’t say): if it is a continuous non-zero positive outcome, you could consider log-transforming it and modelling the result with a GP?

2 Likes

I appreciate the suggestion. The outcome is units of sale, which technically can be 0.
I think the issue I am debating with log-transformation is that I think it is more customary to mean-center the outcome variable before running a GP-regression. I guess it is ok to compute log(y) then mean-center it…I would then add the constant back before exponentiation.

If these are count data (i.e., non-continuous), may consider a count model (Poisson, negative binomial) with the logarithmic transformation as the link function and the GP for the linear predictor. I’m not a GP expert, so don’t know whether or how that may complicate things, but I don’t see how or why this wouldn’t be possible. At least you’d be treating the outcome data correctly.

1 Like

I need to think about this. Even though it is technically count, it is not customary to treat them as Poisson-like count because of the scale. But I appreciate your suggestion.

However, I would still like to know if there is a more direct way (like the paper I cited) to handle non-negativity in Stan…

It is completely valid to use GP as a prior for your desired data model through log or other link function. This is not different from generalised linear models, for which there are more than enough literature with formal justifications. Now the important part is what would be a good data model and knowing data is non-negative (if 0 is valid value) is not yet enough information. Is it possible that there are lot of 0’s (e.g. sales will be 0 for some time if the product is out of stock).

2 Likes