class_docstr: Class for fitting Gaussian processes. 
class_docstr_tok: ["Class","for","fitting","Gaussian","processes","."]
docstr: Samples continous and discrete hyper-parameters for rand_exp_sampling. 
docstr_tok: ["Samples","continous","and","discrete","hyper-parameters","for","rand_exp_sampling","."]
code: def _sample_cts_dscr_hps_for_rand_exp_sampling(self):
      """Samples continous and discrete hyper-parameters for rand_exp_sampling."""
      sample_cts_hps, sample_dscr_hps, sample_probs = self.hp_sampler(
          self._tuning_objective, self.hp_tune_max_evals
      )
      sample_other_gp_params = [None] * len(sample_cts_hps)
      return (
          sample_cts_hps,
          sample_dscr_hps,
          sample_other_gp_params,
          sample_probs,
      )
  
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 15 for calling the GPFitter obj's underlying member method code with example usage: obj._sample_cts_dscr_hps_for_rand_exp_sampling() and returns: sample_cts_hps,  sample_dscr_hps,  sample_other_gp_params,  sample_probs