class_docstr: Sparse GP regression.
  
  The key reference is :cite:t:`titsias2009variational`.
  
  For a use example see :doc:`../../../../notebooks/getting_started/large_data`.
docstr: Construct a tensorflow function to compute the bound on the marginal
  likelihood. For a derivation of the terms in here, see the associated
  SGPR notebook.
docstr_tok: ["Construct","a","tensorflow","function","to","compute","the","bound","on","the","marginal","likelihood",".","For","a","derivation","of","the","terms","in","here",",","see","the","associated","SGPR","notebook","."]
code: def elbo(self) -> tf.Tensor:
      """
      Construct a tensorflow function to compute the bound on the marginal
      likelihood. For a derivation of the terms in here, see the associated
      SGPR notebook.
      """
      common = self._common_calculation()
      output_shape = tf.shape(self.data[-1])
      num_data = to_default_float(output_shape[0])
      output_dim = to_default_float(output_shape[1])
      const = -0.5 * num_data * output_dim * np.log(2 * np.pi)
      logdet = self.logdet_term(common)
      quad = self.quad_term(common)
      return const + logdet + quad
  
imports: from typing import NamedTuple, Optional, Tuple
  import numpy
  import tensorflow
  from check_shapes import check_shapes, inherit_check_shapes
  from ..None import posteriors
  from ..base import InputData, MeanAndVariance, RegressionData, TensorData
  from ..config import default_float, default_jitter
  from ..covariances.dispatch import Kuf, Kuu
  from ..inducing_variables import InducingPoints
  from ..kernels import Kernel
  from ..likelihoods import Gaussian
  from ..mean_functions import MeanFunction
  from ..utilities import add_noise_cov, assert_params_false, to_default_float
  from .model import GPModel
  from .training_mixins import InternalDataTrainingLossMixin
  from .util import InducingPointsLike, data_input_to_tensor, inducingpoint_wrapper
label_desc: Use image node_id 5 for calling the SGPR_deprecated obj's underlying member method code with example usage: obj.elbo() and returns: unknown