gpytorch/variational/grid_interpolation_variational_strategy.py
Killed 54 out of 76 mutantsSurvived
Survived mutation testing. These mutants show holes in your test suite.Mutant 238
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -35,7 +35,7 @@
def __init__(self, model, grid_size, grid_bounds, variational_distribution):
grid = torch.zeros(grid_size, len(grid_bounds))
for i in range(len(grid_bounds)):
- grid_diff = float(grid_bounds[i][1] - grid_bounds[i][0]) / (grid_size - 2)
+ grid_diff = float(grid_bounds[i][1] + grid_bounds[i][0]) / (grid_size - 2)
grid[:, i] = torch.linspace(grid_bounds[i][0] - grid_diff, grid_bounds[i][1] + grid_diff, grid_size)
inducing_points = torch.zeros(int(pow(grid_size, len(grid_bounds))), len(grid_bounds))
Mutant 239
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -35,7 +35,7 @@
def __init__(self, model, grid_size, grid_bounds, variational_distribution):
grid = torch.zeros(grid_size, len(grid_bounds))
for i in range(len(grid_bounds)):
- grid_diff = float(grid_bounds[i][1] - grid_bounds[i][0]) / (grid_size - 2)
+ grid_diff = float(grid_bounds[i][1] - grid_bounds[i][1]) / (grid_size - 2)
grid[:, i] = torch.linspace(grid_bounds[i][0] - grid_diff, grid_bounds[i][1] + grid_diff, grid_size)
inducing_points = torch.zeros(int(pow(grid_size, len(grid_bounds))), len(grid_bounds))
Mutant 241
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -35,7 +35,7 @@
def __init__(self, model, grid_size, grid_bounds, variational_distribution):
grid = torch.zeros(grid_size, len(grid_bounds))
for i in range(len(grid_bounds)):
- grid_diff = float(grid_bounds[i][1] - grid_bounds[i][0]) / (grid_size - 2)
+ grid_diff = float(grid_bounds[i][1] - grid_bounds[i][0]) / (grid_size + 2)
grid[:, i] = torch.linspace(grid_bounds[i][0] - grid_diff, grid_bounds[i][1] + grid_diff, grid_size)
inducing_points = torch.zeros(int(pow(grid_size, len(grid_bounds))), len(grid_bounds))
Mutant 242
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -35,7 +35,7 @@
def __init__(self, model, grid_size, grid_bounds, variational_distribution):
grid = torch.zeros(grid_size, len(grid_bounds))
for i in range(len(grid_bounds)):
- grid_diff = float(grid_bounds[i][1] - grid_bounds[i][0]) / (grid_size - 2)
+ grid_diff = float(grid_bounds[i][1] - grid_bounds[i][0]) / (grid_size - 3)
grid[:, i] = torch.linspace(grid_bounds[i][0] - grid_diff, grid_bounds[i][1] + grid_diff, grid_size)
inducing_points = torch.zeros(int(pow(grid_size, len(grid_bounds))), len(grid_bounds))
Mutant 254
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -42,7 +42,7 @@
prev_points = None
for i in range(len(grid_bounds)):
for j in range(grid_size):
- inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, i].fill_(grid[j, i])
+ inducing_points[j * grid_size ** i : (j + 2) * grid_size ** i, i].fill_(grid[j, i])
if prev_points is not None:
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, :i].copy_(prev_points)
prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
Mutant 258
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -45,7 +45,7 @@
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, i].fill_(grid[j, i])
if prev_points is not None:
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, :i].copy_(prev_points)
- prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
+ prev_points = inducing_points[: grid_size * (i + 1), : (i + 1)]
super(GridInterpolationVariationalStrategy, self).__init__(
model, inducing_points, variational_distribution, learn_inducing_locations=False
Mutant 260
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -45,7 +45,7 @@
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, i].fill_(grid[j, i])
if prev_points is not None:
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, :i].copy_(prev_points)
- prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
+ prev_points = inducing_points[: grid_size ** (i + 2), : (i + 1)]
super(GridInterpolationVariationalStrategy, self).__init__(
model, inducing_points, variational_distribution, learn_inducing_locations=False
Mutant 261
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -45,7 +45,7 @@
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, i].fill_(grid[j, i])
if prev_points is not None:
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, :i].copy_(prev_points)
- prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
+ prev_points = inducing_points[: grid_size ** (i + 1), : (i - 1)]
super(GridInterpolationVariationalStrategy, self).__init__(
model, inducing_points, variational_distribution, learn_inducing_locations=False
Mutant 262
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -45,7 +45,7 @@
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, i].fill_(grid[j, i])
if prev_points is not None:
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, :i].copy_(prev_points)
- prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
+ prev_points = inducing_points[: grid_size ** (i + 1), : (i + 2)]
super(GridInterpolationVariationalStrategy, self).__init__(
model, inducing_points, variational_distribution, learn_inducing_locations=False
Mutant 263
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -45,7 +45,7 @@
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, i].fill_(grid[j, i])
if prev_points is not None:
inducing_points[j * grid_size ** i : (j + 1) * grid_size ** i, :i].copy_(prev_points)
- prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
+ prev_points = None
super(GridInterpolationVariationalStrategy, self).__init__(
model, inducing_points, variational_distribution, learn_inducing_locations=False
Mutant 264
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -48,7 +48,7 @@
prev_points = inducing_points[: grid_size ** (i + 1), : (i + 1)]
super(GridInterpolationVariationalStrategy, self).__init__(
- model, inducing_points, variational_distribution, learn_inducing_locations=False
+ model, inducing_points, variational_distribution, learn_inducing_locations=True
)
object.__setattr__(self, "model", model)
Mutant 265
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -50,7 +50,7 @@
super(GridInterpolationVariationalStrategy, self).__init__(
model, inducing_points, variational_distribution, learn_inducing_locations=False
)
- object.__setattr__(self, "model", model)
+ object.__setattr__(self, "XXmodelXX", model)
self.register_buffer("grid", grid)
Mutant 269
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -55,7 +55,7 @@
self.register_buffer("grid", grid)
def _compute_grid(self, inputs):
- n_data, n_dimensions = inputs.size(-2), inputs.size(-1)
+ n_data, n_dimensions = inputs.size(-2), inputs.size(+1)
batch_shape = inputs.shape[:-2]
inputs = inputs.reshape(-1, n_dimensions)
Mutant 273
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -56,7 +56,7 @@
def _compute_grid(self, inputs):
n_data, n_dimensions = inputs.size(-2), inputs.size(-1)
- batch_shape = inputs.shape[:-2]
+ batch_shape = inputs.shape[:-3]
inputs = inputs.reshape(-1, n_dimensions)
interp_indices, interp_values = Interpolation().interpolate(self.grid, inputs)
Mutant 285
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -63,7 +63,7 @@
interp_indices = interp_indices.view(*batch_shape, n_data, -1)
interp_values = interp_values.view(*batch_shape, n_data, -1)
- if (interp_indices.dim() - 2) != len(self._variational_distribution.batch_shape):
+ if (interp_indices.dim() + 2) != len(self._variational_distribution.batch_shape):
batch_shape = _mul_broadcast_shape(interp_indices.shape[:-2], self._variational_distribution.batch_shape)
interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-2:])
interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-2:])
Mutant 286
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -63,7 +63,7 @@
interp_indices = interp_indices.view(*batch_shape, n_data, -1)
interp_values = interp_values.view(*batch_shape, n_data, -1)
- if (interp_indices.dim() - 2) != len(self._variational_distribution.batch_shape):
+ if (interp_indices.dim() - 3) != len(self._variational_distribution.batch_shape):
batch_shape = _mul_broadcast_shape(interp_indices.shape[:-2], self._variational_distribution.batch_shape)
interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-2:])
interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-2:])
Mutant 287
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -63,7 +63,7 @@
interp_indices = interp_indices.view(*batch_shape, n_data, -1)
interp_values = interp_values.view(*batch_shape, n_data, -1)
- if (interp_indices.dim() - 2) != len(self._variational_distribution.batch_shape):
+ if (interp_indices.dim() - 2) == len(self._variational_distribution.batch_shape):
batch_shape = _mul_broadcast_shape(interp_indices.shape[:-2], self._variational_distribution.batch_shape)
interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-2:])
interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-2:])
Mutant 289
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -64,7 +64,7 @@
interp_values = interp_values.view(*batch_shape, n_data, -1)
if (interp_indices.dim() - 2) != len(self._variational_distribution.batch_shape):
- batch_shape = _mul_broadcast_shape(interp_indices.shape[:-2], self._variational_distribution.batch_shape)
+ batch_shape = _mul_broadcast_shape(interp_indices.shape[:-3], self._variational_distribution.batch_shape)
interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-2:])
interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-2:])
return interp_indices, interp_values
Mutant 292
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -65,7 +65,7 @@
if (interp_indices.dim() - 2) != len(self._variational_distribution.batch_shape):
batch_shape = _mul_broadcast_shape(interp_indices.shape[:-2], self._variational_distribution.batch_shape)
- interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-2:])
+ interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-3:])
interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-2:])
return interp_indices, interp_values
Mutant 295
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -66,7 +66,7 @@
if (interp_indices.dim() - 2) != len(self._variational_distribution.batch_shape):
batch_shape = _mul_broadcast_shape(interp_indices.shape[:-2], self._variational_distribution.batch_shape)
interp_indices = interp_indices.expand(*batch_shape, *interp_indices.shape[-2:])
- interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-2:])
+ interp_values = interp_values.expand(*batch_shape, *interp_values.shape[-3:])
return interp_indices, interp_values
@property
Mutant 298
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -70,7 +70,7 @@
return interp_indices, interp_values
@property
- @cached(name="prior_distribution_memo")
+ @cached(name="XXprior_distribution_memoXX")
def prior_distribution(self):
out = self.model.forward(self.inducing_points)
res = MultivariateNormal(out.mean, out.lazy_covariance_matrix.add_jitter())
Mutant 299
--- gpytorch/variational/grid_interpolation_variational_strategy.py
+++ gpytorch/variational/grid_interpolation_variational_strategy.py
@@ -70,7 +70,7 @@
return interp_indices, interp_values
@property
- @cached(name="prior_distribution_memo")
+
def prior_distribution(self):
out = self.model.forward(self.inducing_points)
res = MultivariateNormal(out.mean, out.lazy_covariance_matrix.add_jitter())