code: def validate_class_args(self, **kwargs):
      Schema(
          {
              Optional("optimize_mode"): self.choices(
                  "optimize_mode", "maximize", "minimize"
              ),
              Optional("utility"): self.choices(
                  "utility", "ei", "ucb", "poi"
              ),
              Optional("kappa"): float,
              Optional("xi"): float,
              Optional("nu"): float,
              Optional("alpha"): float,
              Optional("cold_start_num"): int,
              Optional("selection_num_warm_up"): int,
              Optional("selection_num_starting_points"): int,
          }
      ).validate(kwargs)
  
imports: import warnings
  import logging
  import numpy
  from schema import Schema, Optional
  from sklearn.gaussian_process.kernels import Matern
  from sklearn.gaussian_process import GaussianProcessRegressor
  from nni import ClassArgsValidator
  from nni.common.hpo_utils import validate_search_space
  from nni.tuner import Tuner
  from nni.utils import OptimizeMode, extract_scalar_reward
  from .target_space import TargetSpace
  from .util import UtilityFunction, acq_max
label_desc: Use image node_id 1 for calling the GPClassArgsValidator obj's underlying member method code with example usage: obj.validate_class_args() without return types