Develop multi-output GP model with linear mean for each task and with learnable hyperparameters

Something’s off with the shapes where it adds pt.dot(X, self.A) and self.b. It’s hard for me to debug exactly without some example data, or knowing what the shapes are you’re going for.

The thing to be aware of here though is that the multiple outputs have been stacked into y as if they were a single output. This might or might not change how you do the mean function.

Otherwise though, your approach will work just fine once the shape issue is sorted out.