Description
Motivation
For problems where each observation is from one of a selection of tasks, existing MultiTaskGPs
assume the same noise across all tasks. This is not necessarily a good assumption, especially in a multi-fidelity setting where low fidelities are likely much noisier than higher fidelities.
Describe the solution you'd like to see implemented in BoTorch.
I'd like a MultiTaskHadamardLikelihood
, that learns a different noise value for each task. This could also be made the default likelihood for all MultiTaskGPs
.
Describe any alternatives you've considered to the above solution.
None
Is this related to an existing issue in BoTorch or another repository? If so please include links to those Issues here.
I have a pending PR in the gpytorch library that didn't receive much attention: cornellius-gp/gpytorch#2481, relating to issue cornellius-gp/gpytorch#877. If that PR is left unmerged, that code could be duplicated in BoTorch; if is merged, then BoTorch models should be changed to use the new likelihood.
There are also a couple of TODOs in BoTorch that relate to this:
botorch/botorch/models/gpytorch.py
Line 832 in 094e3ef
botorch/botorch/models/multitask.py
Line 203 in 094e3ef
Pull Request
Yes
Code of Conduct
- I agree to follow BoTorch's Code of Conduct