class_docstr: General class for handling a Gaussian Process in GPyOpt.
  
  :param kernel: GPy kernel to use in the GP model.
  :param noise_var: value of the noise variance if known.
  :param exact_feval: whether noiseless evaluations are available. IMPORTANT to make the optimization work well in noiseless scenarios (default, False).
  :param n_samples: number of MCMC samples.
  :param n_burnin: number of samples not used.
  :param subsample_interval: sub-sample interval in the MCMC.
  :param step_size: step-size in the MCMC.
  :param leapfrog_steps: ??
  :param verbose: print out the model messages (default, False).
  
  .. Note:: This model does MCMC over the hyperparameters.
docstr: Predictions with the model for all the MCMC samples. Returns posterior means and standard deviations at X. Note that this is different in GPy where the variances are given.
docstr_tok: ["Predictions","with","the","model","for","all","the","MCMC","samples",".","Returns","posterior","means","and","standard","deviations","at","X",".","Note","that","this","is","different","in","GPy","where","the","variances","are","given","."]
code: def predict(self, X):
      """
      Predictions with the model for all the MCMC samples. Returns posterior means and standard deviations at X. Note that this is different in GPy where the variances are given.
      """
  
      if X.ndim == 1:
          X = X[None, :]
      ps = self.model.param_array.copy()
      means = []
      stds = []
      for s in self.hmc_samples:
          if self.model._fixes_ is None:
              self.model[:] = s
          else:
              self.model[self.model._fixes_] = s
          self.model._trigger_params_changed()
          m, v = self.model.predict(X)
          means.append(m)
          stds.append(np.sqrt(np.clip(v, 1e-10, np.inf)))
      self.model.param_array[:] = ps
      self.model._trigger_params_changed()
      return means, stds
  
imports: import numpy
  import GPy
  from .base import BOModel
label_desc: Use image node_id 4 for calling the GPModel_MCMC obj's underlying member method code with example usage: obj.predict(X) and returns: means,  stds