class_docstr: Custom time series classifier. todo: write docstring.
  
  todo: describe your custom time series classifier here
  
  Hyper-parameters
  ----------------
  parama : int
      descriptive explanation of parama
  paramb : string, optional (default='default')
      descriptive explanation of paramb
  paramc : boolean, optional (default= whether paramb is not the default)
      descriptive explanation of paramc
  and so on
  
  Components
  ----------
  est : sktime.estimator, BaseEstimator descendant
      descriptive explanation of est
  est2: another estimator
      descriptive explanation of est2
  and so on
docstr: Predict labels for sequences in X.
  
  private _predict containing the core logic, called from predict
  
  Parameters
  ----------
  X : guaranteed to be of a type in self.get_tag("X_inner_mtype")
      if self.get_tag("X_inner_mtype") = "numpy3D":
      3D np.ndarray of shape = [n_instances, n_dimensions, series_length]
      if self.get_tag("X_inner_mtype") = "pd-multiindex:":
      pd.DataFrame with columns = variables,
      index = pd.MultiIndex with first level = instance indices,
      second level = time indices
      for list of other mtypes, see datatypes.SCITYPE_REGISTER
      for specifications, see examples/AA_datatypes_and_datasets.ipynb
  
  Returns
  -------
  y : should be of mtype in self.get_tag("y_inner_mtype")
      1D iterable, of shape [n_instances]
      or 2D iterable, of shape [n_instances, n_dimensions]
      predicted class labels
      indices correspond to instance indices in X
      if self.get_tag("capaility:multioutput") = False, should be 1D
      if self.get_tag("capaility:multioutput") = True, should be 2D
code: def _predict(self, X):
      """Predict labels for sequences in X.
  
      private _predict containing the core logic, called from predict
  
      Parameters
      ----------
      X : guaranteed to be of a type in self.get_tag("X_inner_mtype")
          if self.get_tag("X_inner_mtype") = "numpy3D":
          3D np.ndarray of shape = [n_instances, n_dimensions, series_length]
          if self.get_tag("X_inner_mtype") = "pd-multiindex:":
          pd.DataFrame with columns = variables,
          index = pd.MultiIndex with first level = instance indices,
          second level = time indices
          for list of other mtypes, see datatypes.SCITYPE_REGISTER
          for specifications, see examples/AA_datatypes_and_datasets.ipynb
  
      Returns
      -------
      y : should be of mtype in self.get_tag("y_inner_mtype")
          1D iterable, of shape [n_instances]
          or 2D iterable, of shape [n_instances, n_dimensions]
          predicted class labels
          indices correspond to instance indices in X
          if self.get_tag("capaility:multioutput") = False, should be 1D
          if self.get_tag("capaility:multioutput") = True, should be 2D
      """
  
file_path: sktime/extension_templates/classification.py
imports: import numpy
  from sktime.classification.base import BaseClassifier
label_desc: Use image node_id 3 for calling the MyTimeSeriesClassifier obj's underlying member method code with example usage: obj._predict(X) without return types