Exemple #1
0
 def test_ModelListGP_single(self):
     tkwargs = {"device": self.device, "dtype": torch.float}
     train_x1, train_x2, train_y1, train_y2 = _get_random_data(n=10, **tkwargs)
     model1 = SingleTaskGP(train_X=train_x1, train_Y=train_y1)
     model = ModelListGP(model1)
     model.to(**tkwargs)
     test_x = torch.tensor([[0.25], [0.75]], **tkwargs)
     posterior = model.posterior(test_x)
     self.assertIsInstance(posterior, GPyTorchPosterior)
     self.assertIsInstance(posterior.mvn, MultivariateNormal)
Exemple #2
0
 def test_ModelListGPSingle(self, cuda=False):
     tkwargs = {
         "device": torch.device("cuda") if cuda else torch.device("cpu"),
         "dtype": torch.float,
     }
     train_x1, train_x2, train_y1, train_y2 = _get_random_data(n=10, **tkwargs)
     model1 = SingleTaskGP(train_X=train_x1, train_Y=train_y1)
     model = ModelListGP(gp_models=[model1])
     model.to(**tkwargs)
     test_x = (torch.tensor([0.25, 0.75]).type_as(model.train_targets[0]),)
     posterior = model.posterior(test_x)
     self.assertIsInstance(posterior, GPyTorchPosterior)
     self.assertIsInstance(posterior.mvn, MultivariateNormal)
 def test_ModelListGPSingle(self, cuda=False):
     tkwargs = {
         "device": torch.device("cuda") if cuda else torch.device("cpu"),
         "dtype": torch.float,
     }
     train_x1, train_x2, train_y1, train_y2 = _get_random_data(n=10, **tkwargs)
     model1 = SingleTaskGP(train_X=train_x1, train_Y=train_y1)
     model = ModelListGP(gp_models=[model1])
     model.to(**tkwargs)
     test_x = (torch.tensor([0.25, 0.75]).type_as(model.train_targets[0]),)
     posterior = model.posterior(test_x)
     self.assertIsInstance(posterior, GPyTorchPosterior)
     self.assertIsInstance(posterior.mvn, MultivariateNormal)
def _get_model(n, fixed_noise=False, use_octf=False, **tkwargs):
    train_x1, train_y1 = _get_random_data(batch_shape=torch.Size(),
                                          m=1,
                                          n=10,
                                          **tkwargs)
    train_x2, train_y2 = _get_random_data(batch_shape=torch.Size(),
                                          m=1,
                                          n=11,
                                          **tkwargs)
    octfs = [Standardize(m=1), Standardize(m=1)] if use_octf else [None, None]
    if fixed_noise:
        train_y1_var = 0.1 + 0.1 * torch.rand_like(train_y1, **tkwargs)
        train_y2_var = 0.1 + 0.1 * torch.rand_like(train_y2, **tkwargs)
        model1 = FixedNoiseGP(
            train_X=train_x1,
            train_Y=train_y1,
            train_Yvar=train_y1_var,
            outcome_transform=octfs[0],
        )
        model2 = FixedNoiseGP(
            train_X=train_x2,
            train_Y=train_y2,
            train_Yvar=train_y2_var,
            outcome_transform=octfs[1],
        )
    else:
        model1 = SingleTaskGP(train_X=train_x1,
                              train_Y=train_y1,
                              outcome_transform=octfs[0])
        model2 = SingleTaskGP(train_X=train_x2,
                              train_Y=train_y2,
                              outcome_transform=octfs[1])
    model = ModelListGP(model1, model2)
    return model.to(**tkwargs)
def _get_model(n, fixed_noise=False, **tkwargs):
    train_x1, train_x2, train_y1, train_y2 = _get_random_data(n=n, **tkwargs)
    if fixed_noise:
        train_y1_var = 0.1 + 0.1 * torch.rand_like(train_y1, **tkwargs)
        train_y2_var = 0.1 + 0.1 * torch.rand_like(train_y2, **tkwargs)
        model1 = FixedNoiseGP(train_X=train_x1,
                              train_Y=train_y1,
                              train_Yvar=train_y1_var)
        model2 = FixedNoiseGP(train_X=train_x2,
                              train_Y=train_y2,
                              train_Yvar=train_y2_var)
    else:
        model1 = SingleTaskGP(train_X=train_x1, train_Y=train_y1)
        model2 = SingleTaskGP(train_X=train_x2, train_Y=train_y2)
    model = ModelListGP(model1, model2)
    return model.to(**tkwargs)
Exemple #6
0
def _get_model(n, **tkwargs):
    train_x1, train_x2, train_y1, train_y2 = _get_random_data(n=n, **tkwargs)
    model1 = SingleTaskGP(train_X=train_x1, train_Y=train_y1)
    model2 = SingleTaskGP(train_X=train_x2, train_Y=train_y2)
    model = ModelListGP(gp_models=[model1, model2])
    return model.to(**tkwargs)
def _get_model(n, **tkwargs):
    train_x1, train_x2, train_y1, train_y2 = _get_random_data(n=n, **tkwargs)
    model1 = SingleTaskGP(train_X=train_x1, train_Y=train_y1)
    model2 = SingleTaskGP(train_X=train_x2, train_Y=train_y2)
    model = ModelListGP(gp_models=[model1, model2])
    return model.to(**tkwargs)