Replies: 1 comment 5 replies
-
The function that you are modeling has low intrinsic lengthscale (it changes rapidly). This is known to be a setting that is notoriously difficult for SVGP - you would need nearly
Increasing num_inducing_points should improve performance.
This affects optimization. Using k_means to initialize inducing points tends to work the best from my experience, but initializing to the first
It is larger than the loss for the exact GP, since the loss for SVGP is an ELBO. |
Beta Was this translation helpful? Give feedback.
-
Hello there. I am following an SVGP example from GPyTorch docs: SVGP
This code works fine on
elevators
dataset, but it is not working on my problem as it performs very poorly on testing data. I am applying SVGP on an inverted pendulum problem wherein the input features and output are given belowI am using a single-output SVGP and following the exact approach you described in the docs. I have also normalized the dataset.
Right now, I am playing with
batch_size
andnum_inducing_points
to get an improved performance ontesting
dataset. Also, in SVGP example, you are passing the first 500 features (X_train[:500, :]
) as inducing points to the model, whereas in some other examples, you are randomly selecting inducing points from the training dataset. Any difference?Please suggest me some tips to get good performance on testing data. I have tried a lot. FYI, simple GP works fine on this example.
I have some other related questions as well. It seems like the smaller number of inducing points (like 500) gives better results.
num_inducting_points
, I don't necessarily get better results. If I reduce thenum_inducting_points
, it throws an error likematrix is not positive definite after adding jitter
.batch_size
andnum_inducing_points
a lot many times.The code is given below. This is a complete working example:
You can see the performance of the model below. It performs well on training data (i.e., first 8k points), then it is messed up after that which is testing data.
Beta Was this translation helpful? Give feedback.
All reactions