docstr: Do necessary checking for config
  :param config:
  :return:
docstr_tok: ["Do","necessary","checking","for","config",":","param","config",":",":","return",":"]
code: def _check_config(self, **config):
      """
      Do necessary checking for config
      :param config:
      :return:
      """
      config_parameters = set(config.keys())
      if not config_parameters.issuperset(
          self._get_required_parameters()
      ):
          invalidInputError(
              False,
              "Missing required parameters in configuration. "
              + "Required parameters are: "
              + str(self._get_required_parameters()),
          )
      if (
          self.check_optional_config
          and not config_parameters.issuperset(
              self._get_optional_parameters()
          )
      ):
          invalidInputError(
              False,
              "Missing optional parameters in configuration. "
              + "Optional parameters are: "
              + str(self._get_optional_parameters()),
          )
      return True
  
imports: import pickle
  import numpy
  import time
  from tensorflow.keras.models import Model
  from tensorflow.keras.layers import Reshape, Dense, Dropout, Add, Permute, RNN, GRUCell
  from tensorflow.keras.layers import Input, InputSpec, Wrapper, Lambda, Conv2D, multiply, Softmax
  from tensorflow.keras.initializers import TruncatedNormal, Constant
  import tensorflow.keras.backend
  import tensorflow
  from bigdl.chronos.metric.forecast_metrics import Evaluator
label_desc: Use image node_id 19 for calling the MTNetKeras obj's underlying member method code with example usage: obj._check_config() and returns: True