class_docstr: Class for fitting Gaussian processes. 
class_docstr_tok: ["Class","for","fitting","Gaussian","processes","."]
docstr: Sets up posterior sampling for tuning the parameters of the GP. 
docstr_tok: ["Sets","up","posterior","sampling","for","tuning","the","parameters","of","the","GP","."]
code: def _set_up_post_sampling_hp_tune(self):
      """Sets up posterior sampling for tuning the parameters of the GP."""
      if self.options.post_hp_tune_method == "slice":
          self.hp_sampler_cts = lambda model, init_sample, num_samples, burn: model.draw_samples(
              "slice", num_samples, init_sample, burn
          )
      elif self.options.post_hp_tune_method == "nuts":
          self.hp_sampler_cts = lambda model, init_sample, num_samples, burn: model.draw_samples(
              "nuts", num_samples, init_sample, burn
          )
  
      self.hp_sampler_dscr = (
          lambda model, init_sample, num_samples: model.draw_samples(
              "metropolis", num_samples, init_sample
          )
      )
  
      # Priors for all the hyper parameters
      self.hp_priors = []
      for _, bounds in enumerate(self.cts_hp_bounds):
          self.hp_priors.append(
              continuous.ContinuousUniform(bounds[0], bounds[-1])
          )
  
      for _, vals in enumerate(self.dscr_hp_vals):
          self.hp_priors.append(
              discrete.Categorical(
                  vals, np.repeat(1.0 / len(vals), len(vals))
              )
          )
  
imports: from __future__ import division
  from argparse import Namespace
  from itertools import product
  import sys
  import numpy
  from ..distributions.model import Model
  from ..distributions import continuous
  from ..distributions import discrete
  from ..utils.general_utils import stable_cholesky, draw_gaussian_samples, project_symmetric_to_psd_cone, solve_lower_triangular, solve_upper_triangular
  from ..utils.oper_utils import direct_ft_maximise, pdoo_maximise, random_maximise, random_sample_cts_dscr
  from ..utils.option_handler import get_option_specs, load_options
  from ..utils.reporters import get_reporter
label_desc: Use image node_id 8 for calling the GPFitter obj's underlying member method code with example usage: obj._set_up_post_sampling_hp_tune() without return types