As a separate approach, you may want to consider using a coregionalized GP, as shown here. I think this is essentially what you’re after with “add a random effect GP”. This creates a GP with a vector output, one element for each class, where the outputs are correlated with one another and the degree of correlation is learned during sampling/optimization. The downside of this approach is it can be a bit overconfident/overfit, but otherwise it performs well.
Related topics
| Topic | Replies | Views | Activity | |
|---|---|---|---|---|
| Multi-output gaussian processes | 13 | 5654 | October 22, 2017 | |
| Multi observed latent Gaussian Processes | 11 | 1031 | May 27, 2022 | |
| Multidimensional gaussian process | 55 | 10669 | October 22, 2020 | |
| Multiple (uncertain) function observations of the same Gaussian process | 15 | 6742 | October 16, 2017 | |
| How to implement Hierarchical Gaussian Process in PyMC? | 4 | 4044 | May 8, 2023 |