diff --git a/botorch/posteriors/gpytorch.py b/botorch/posteriors/gpytorch.py index da79563160..dd04957625 100644 --- a/botorch/posteriors/gpytorch.py +++ b/botorch/posteriors/gpytorch.py @@ -23,6 +23,7 @@ from linear_operator import settings as linop_settings from linear_operator.operators import ( BlockDiagLinearOperator, + DenseLinearOperator, LinearOperator, SumLinearOperator, ) @@ -323,6 +324,7 @@ def scalarize_posterior_gpytorch( if isinstance(cov_scaled, LinearOperator): cov_scaled = cov_scaled.to_dense() new_cov = cov_scaled.view(sum_shape).sum(dim=sum_dims[0]).sum(dim=sum_dims[1]) + new_cov = DenseLinearOperator(new_cov) return new_mean, new_cov