class_docstr: Time Series Convolutional Neural Network (CNN), as described in [1].
  
  Parameters
  ----------
  should inherited fields be listed here?
  n_epochs       : int, default = 2000
      the number of epochs to train the model
  batch_size      : int, default = 16
      the number of samples per gradient update.
  kernel_size     : int, default = 7
      the length of the 1D convolution window
  avg_pool_size   : int, default = 3
      size of the average pooling windows
  n_conv_layers   : int, default = 2
      the number of convolutional plus average pooling layers
  filter_sizes    : array of shape (n_conv_layers) default = [6, 12]
  random_state    : int or None, default=None
      Seed for random number generation.
  verbose         : boolean, default = False
      whether to output extra information
  loss            : string, default="mean_squared_error"
      fit parameter for the keras model
  activation      : keras.activations or string, default `linear`
      function to use in the output layer.
  optimizer       : keras.optimizers or string, default `None`.
      when `None`, internally uses `keras.optimizers.Adam(0.01)`
  use_bias        : bool, default=True
      whether to use bias in the output layer.
  metrics         : list of strings, default=["accuracy"],
  
  References
  ----------
  .. [1] Zhao et. al, Convolutional neural networks for
  time series classification, Journal of
  Systems Engineering and Electronics, 28(1):2017.
  
  Notes
  -----
  Adapted from the implementation from Fawaz et. al
  https://github.com/hfawaz/dl-4-tsc/blob/master/classifiers/cnn.py
class_docstr_tok: ["Time","Series","Convolutional","Neural","Network","(","CNN",")",",","as","described","in","[","1","]",".","Parameters","--","--","--","--","--","should","inherited","fields","be","listed","here","?","n_epochs",":","int",",","default","=","2000","the","number","of","epochs","to","train","the","model","batch_size",":","int",",","default","=","16","the","number","of","samples","per","gradient","update",".","kernel_size",":","int",",","default","=","7","the","length","of","the","1D","convolution","window","avg_pool_size",":","int",",","default","=","3","size","of","the","average","pooling","windows","n_conv_layers",":","int",",","default","=","2","the","number","of","convolutional","plus","average","pooling","layers","filter_sizes",":","array","of","shape","(","n_conv_layers",")","default","=","[","6",",","12","]","random_state",":","int","or","None",",","default=None","Seed","for","random","number","generation",".","verbose",":","boolean",",","default","=","False","whether","to","output","extra","information","loss",":","string",",","default=","''","mean_squared_error","''","fit","parameter","for","the","keras","model","activation",":","keras.activations","or","string",",","default","`","linear","`","function","to","use","in","the","output","layer",".","optimizer",":","keras.optimizers","or","string",",","default","`","None","`",".","when","`","None","`",",","internally","uses","`","keras.optimizers.Adam","(","0.01",")","`","use_bias",":","bool",",","default=True","whether","to","use","bias","in","the","output","layer",".","metrics",":","list","of","strings",",","default=","[","``","accuracy","''","]",",","References","--","--","--","--","--","..","[","1","]","Zhao","et",".","al",",","Convolutional","neural","networks","for","time","series","classification",",","Journal","of","Systems","Engineering","and","Electronics",",","28","(","1",")",":2017",".","Notes","--","--","-","Adapted","from","the","implementation","from","Fawaz","et",".","al","https",":","\/\/github.com\/hfawaz\/dl-4-tsc\/blob\/master\/classifiers\/cnn.py"]
docstr: Fit the classifier on the training set (X, y).
  
  Parameters
  ----------
  X : np.ndarray of shape = (n_instances (n), n_dimensions (d), series_length (m))
      The training input samples.
  y : np.ndarray of shape n
      The training data class labels.
  
  Returns
  -------
  self : object
docstr_tok: ["Fit","the","classifier","on","the","training","set","(","X",",","y",")",".","Parameters","--","--","--","--","--","X",":","np.ndarray","of","shape","=","(","n_instances","(","n",")",",","n_dimensions","(","d",")",",","series_length","(","m",")",")","The","training","input","samples",".","y",":","np.ndarray","of","shape","n","The","training","data","class","labels",".","Returns","--","--","--","-","self",":","object"]
code: def _fit(self, X, y):
      """Fit the classifier on the training set (X, y).
  
      Parameters
      ----------
      X : np.ndarray of shape = (n_instances (n), n_dimensions (d), series_length (m))
          The training input samples.
      y : np.ndarray of shape n
          The training data class labels.
  
      Returns
      -------
      self : object
      """
      # Transpose to conform to Keras input style.
      X = X.transpose(0, 2, 1)
  
      check_random_state(self.random_state)
      self.input_shape = X.shape[1:]
      self.model_ = self.build_model(self.input_shape)
      if self.verbose:
          self.model.summary()
  
      self.history = self.model_.fit(
          X,
          y,
          batch_size=self.batch_size,
          epochs=self.n_epochs,
          verbose=self.verbose,
          callbacks=deepcopy(self.callbacks) if self.callbacks else [],
      )
      return self
  
file_path: sktime/sktime/regression/deep_learning/cnn.py
imports: from copy import deepcopy
  from sklearn.utils import check_random_state
  from sktime.networks.cnn import CNNNetwork
  from sktime.regression.deep_learning.base import BaseDeepRegressor
  from sktime.utils.validation._dependencies import _check_dl_dependencies
label_desc: Use image node_id 3 for calling the CNNRegressor obj's underlying member method code with example usage: obj._fit(X, y) and returns: self