code: def _build_likelihood(self):
          r
          K = self.kern.K(self.X) + tf.eye(tf.shape(self.X)[0], dtype=settings.float_type) * self.likelihood.variance
          L = tf.cholesky(K)
          m = self.mean_function(self.X)
          logpdf = multivariate_normal(self.Y, m, L)  # (R,) log-likelihoods for each independent dimension of Y
  
          return tf.reduce_sum(logpdf)
docs: r"""
          Construct a tensorflow function to compute the likelihood.
  
              \log p(Y | theta).