class_docstr: Fits a GP by tuning the kernel hyper-params. 
docstr: Builds the GP from the hyper-parameters. 
docstr_tok: ["Builds","the","GP","from","the","hyper-parameters","."]
code: def _child_build_gp(
      self,
      mean_func,
      noise_var,
      gp_cts_hps,
      gp_dscr_hps=None,
      other_gp_params=None,
      build_posterior=True,
  ):
      """Builds the GP from the hyper-parameters."""
      kernel_options = self._get_nn_gp_kernel_options()
      kernel, gp_cts_hps, gp_dscr_hps = get_nn_gp_kernel(
          self.kernel_type,
          self.nn_type,
          gp_cts_hps,
          gp_dscr_hps,
          self.tp_comp,
          kernel_options,
      )
      ret = NNGP(
          self.X,
          self.Y,
          kernel,
          mean_func,
          noise_var,
          self.nn_type,
          list_of_dists=self.list_of_dists,
          build_posterior=build_posterior,
      )
      return ret, gp_cts_hps, gp_dscr_hps
  
imports: import numpy
  from .None import otmann
  from ..gp import gp_core
  from ..utils.ancillary_utils import get_list_of_floats_as_str
  from ..utils.reporters import get_reporter
  from ..utils.option_handler import get_option_specs, load_options
label_desc: Use image node_id 5 for calling the NNGPFitter obj's underlying member method code with example usage: obj._child_build_gp(mean_func, noise_var, gp_cts_hps, gp_dscr_hps, other_gp_params, build_posterior) and returns: ret,  gp_cts_hps,  gp_dscr_hps