()
| 224 | |
| 225 | |
| 226 | def test_equivalence_vgp_and_svgp() -> None: |
| 227 | kernel = gpflow.kernels.Matern52() |
| 228 | likelihood = gpflow.likelihoods.StudentT() |
| 229 | |
| 230 | svgp_model = _create_svgp_model(kernel, likelihood, DatumVGP.q_mu, DatumVGP.q_sqrt, whiten=True) |
| 231 | vgp_model = _create_vgp_model(kernel, likelihood, DatumVGP.q_mu, DatumVGP.q_sqrt) |
| 232 | |
| 233 | likelihood_svgp = svgp_model.elbo(DatumVGP.data) |
| 234 | likelihood_vgp = vgp_model.elbo() |
| 235 | assert_allclose(likelihood_svgp, likelihood_vgp, rtol=1e-2) |
| 236 | |
| 237 | svgp_mu, svgp_var = svgp_model.predict_f(DatumVGP.Xs) |
| 238 | vgp_mu, vgp_var = vgp_model.predict_f(DatumVGP.Xs) |
| 239 | |
| 240 | assert_allclose(svgp_mu, vgp_mu) |
| 241 | assert_allclose(svgp_var, vgp_var) |
| 242 | |
| 243 | |
| 244 | def test_equivalence_vgp_and_opper_archambeau() -> None: |
nothing calls this directly
no test coverage detected
searching dependent graphs…