def predict(self, Xnew, full_cov=False, Y_metadata=None, kern=None,<EOL>likelihood=None, include_likelihood=True):
<EOL>mean, var = self._raw_predict(Xnew, full_cov=full_cov, kern=kern)<EOL>if include_likelihood:<EOL><INDENT>if likelihood is None:<EOL><INDENT>likelihood = self.likelihood<EOL><DEDENT>mean, var = likelihood.predictive_values(mean, var, full_cov,<EOL>Y_metadata=Y_metadata)<EOL><DEDENT>if self.normalizer is not None:<EOL><INDENT>mean = self.normalizer.inverse_mean(mean)<EOL>if full_cov & (mean.shape[<NUM_LIT:1>] > <NUM_LIT:1>):<EOL><INDENT>var = self.normalizer.inverse_covariance(var)<EOL><DEDENT>else:<EOL><INDENT>var = self.normalizer.inverse_variance(var)<EOL><DEDENT><DEDENT>return mean, var<EOL>
Predict the function(s) at the new point(s) Xnew. This includes the
likelihood variance added to the predicted underlying function
(usually referred to as f).

In order to predict without adding in the likelihood give
`include_likelihood=False`, or refer to self.predict_noiseless().

:param Xnew: The points at which to make a prediction
:type Xnew: np.ndarray (Nnew x self.input_dim)
:param full_cov: whether to return the full covariance matrix, or just
                 the diagonal
:type full_cov: bool
:param Y_metadata: metadata about the predicting point to pass to the
                   likelihood
:param kern: The kernel to use for prediction (defaults to the model
             kern). this is useful for examining e.g. subprocesses.
:param include_likelihood: Whether or not to add likelihood noise to
                           the predicted underlying latent function f.
:type include_likelihood: bool

:returns: (mean, var):
    mean: posterior mean, a Numpy array, Nnew x self.input_dim
    var: posterior variance, a Numpy array, Nnew x 1 if full_cov=False,
         Nnew x Nnew otherwise

    If full_cov and self.input_dim > 1, the return shape of var is
    Nnew x Nnew x self.input_dim. If self.input_dim == 1, the return
    shape is Nnew x Nnew. This is to allow for different normalizations
    of the output dimensions.

Note: If you want the predictive quantiles (e.g. 95% confidence
interval) use :py:func:"~GPy.core.gp.GP.predict_quantiles".