docstr: Check candidate compatibility with `model_init_params` template guidelines
  
  Parameters
  ----------
  exp_id: String
      Candidate Experiment ID
  params: Dict
      Candidate "model_init_params" to compare to the template in :attr:`model_params`
  score: Number
      Value of the candidate Experiment's target metric
  template_params: Dict (optional)
      If given, used as the template hyperparameters against which to compare candidate
      `params`, rather than the standard guideline template of the "model_init_params" in
      :attr:`model_params`. This is used by :meth:`does_match_init_params_guidelines_multi`
  
  Returns
  -------
  Boolean
      True if candidate `params` match `model_init_params` guidelines. Else, False
  
  Notes
  -----
  Template hyperparameters are generally considered "guidelines" if they are declared as
  concrete values, rather than space choices present in :attr:`space`
docstr_tok: ["Check","candidate","compatibility","with","`","model_init_params","`","template","guidelines","Parameters","--","--","--","--","--","exp_id",":","String","Candidate","Experiment","ID","params",":","Dict","Candidate","``","model_init_params","''","to","compare","to","the","template","in",":","attr",":","`","model_params","`","score",":","Number","Value","of","the","candidate","Experiment","'s","target","metric","template_params",":","Dict","(","optional",")","If","given",",","used","as","the","template","hyperparameters","against","which","to","compare","candidate","`","params","`",",","rather","than","the","standard","guideline","template","of","the","``","model_init_params","''","in",":","attr",":","`","model_params","`",".","This","is","used","by",":","meth",":","`","does_match_init_params_guidelines_multi","`","Returns","--","--","--","-","Boolean","True","if","candidate","`","params","`","match","`","model_init_params","`","guidelines",".","Else",",","False","Notes","--","--","-","Template","hyperparameters","are","generally","considered","``","guidelines","''","if","they","are","declared","as","concrete","values",",","rather","than","space","choices","present","in",":","attr",":","`","space","`"]
code: def does_match_init_params_guidelines(
      self, exp_id, params, score, template_params=None
  ) -> bool:
      """Check candidate compatibility with `model_init_params` template guidelines
  
      Parameters
      ----------
      exp_id: String
          Candidate Experiment ID
      params: Dict
          Candidate "model_init_params" to compare to the template in :attr:`model_params`
      score: Number
          Value of the candidate Experiment's target metric
      template_params: Dict (optional)
          If given, used as the template hyperparameters against which to compare candidate
          `params`, rather than the standard guideline template of the "model_init_params" in
          :attr:`model_params`. This is used by :meth:`does_match_init_params_guidelines_multi`
  
      Returns
      -------
      Boolean
          True if candidate `params` match `model_init_params` guidelines. Else, False
  
      Notes
      -----
      Template hyperparameters are generally considered "guidelines" if they are declared as
      concrete values, rather than space choices present in :attr:`space`
      """
      _res = does_match_guidelines(
          dict(model_init_params=params),
          self.mini_spaces["model_init_params"],
          dict(
              model_init_params=(
                  template_params
                  or self.model_params["model_init_params"]
              )
          ),
          dims_to_ignore=[
              ("model_init_params", "build_fn"),
              ("model_init_params", "n_jobs"),
              ("model_init_params", "nthread"),
              # TODO: Remove below once loss_functions are hashed in description files
              ("model_init_params", "compile_params", "loss_functions"),
          ],
      )
  
      return _res
  
imports: from hyperparameter_hunter.feature_engineering import EngineerStep, FeatureEngineer
  from hyperparameter_hunter.i_o.exceptions import IncompatibleCandidateError
  from hyperparameter_hunter.compat.keras_helper import keras_callback_to_dict, keras_initializer_to_dict
  from hyperparameter_hunter.settings import G
  from hyperparameter_hunter.space.dimensions import Categorical, RejectedOptional
  from hyperparameter_hunter.space.space_core import Space
  from hyperparameter_hunter.utils.boltons_utils import remap, get_path
  from hyperparameter_hunter.utils.general_utils import multi_visit
  from hyperparameter_hunter.utils.optimization_utils import does_fit_in_space, get_ids_by, get_scored_params
  from copy import deepcopy
  from numbers import Number
  from pathlib import Path
  from typing import Dict, List, Tuple, Union
  import wrapt
label_desc: Use image node_id 7 for calling the ResultFinder obj's underlying member method code with example usage: obj.does_match_init_params_guidelines(exp_id, params, score, template_params) and returns: _res