class_docstr: MINImally RandOm Convolutional KErnel Transform (MiniRocket) multivariate.
  
  MiniRocketMultivariate [1]_ is an almost deterministic version of Rocket. If creates
  convolutions of length of 9 with weights restricted to two values, and uses 84 fixed
  convolutions with six of one weight, three of the second weight to seed dilations.
  MiniRocketMultivariate works with univariate and multivariate time series.
  
  This transformer fits one set of paramereters per individual series,
  and applies the transform with fitted parameter i to the i-th series in transform.
  Vanilla use requires same number of series in fit and transform.
  
  To fit and transform series at the same time,
  without an identification of fit/transform instances,
  wrap this transformer in ``FitInTransform``,
  from ``sktime.transformations.compose``.
  
  Parameters
  ----------
  num_kernels : int, default=10,000
     number of random convolutional kernels.
  max_dilations_per_kernel : int, default=32
      maximum number of dilations per kernel.
  n_jobs : int, default=1
      The number of jobs to run in parallel for `transform`. ``-1`` means using all
      processors.
  random_state : None or int, default = None
  
  See Also
  --------
  MultiRocketMultivariate, MiniRocket, MiniRocketMultivariate, Rocket
  
  References
  ----------
  .. [1] Dempster, Angus and Schmidt, Daniel F and Webb, Geoffrey I,
      "MINIROCKET: A Very Fast (Almost) Deterministic Transform for Time Series
      Classification",2020,
      https://dl.acm.org/doi/abs/10.1145/3447548.3467231,
      https://arxiv.org/abs/2012.08791
  
  Examples
  --------
   >>> from sktime.transformations.panel.rocket import MiniRocketMultivariate
   >>> from sktime.datasets import load_basic_motions
   >>> X_train, y_train = load_basic_motions(split="train")
   >>> X_test, y_test = load_basic_motions(split="test") # doctest: +SKIP
   >>> trf = MiniRocketMultivariate(num_kernels=512) # doctest: +SKIP
   >>> trf.fit(X_train) # doctest: +SKIP
   MiniRocketMultivariate(...)
   >>> X_train = trf.transform(X_train) # doctest: +SKIP
   >>> X_test = trf.transform(X_test) # doctest: +SKIP
docstr: Transform input time series.
  
  Parameters
  ----------
  X : 3D np.ndarray of shape = [n_instances, n_dimensions, series_length]
      panel of time series to transform
  y : ignored argument for interface compatibility
  
  Returns
  -------
  pandas DataFrame, transformed features
docstr_tok: ["Transform","input","time","series",".","Parameters","--","--","--","--","--","X",":","3D","np.ndarray","of","shape","=","[","n_instances",",","n_dimensions",",","series_length","]","panel","of","time","series","to","transform","y",":","ignored","argument","for","interface","compatibility","Returns","--","--","--","-","pandas","DataFrame",",","transformed","features"]
code: def _transform(self, X, y=None):
      """Transform input time series.
  
      Parameters
      ----------
      X : 3D np.ndarray of shape = [n_instances, n_dimensions, series_length]
          panel of time series to transform
      y : ignored argument for interface compatibility
  
      Returns
      -------
      pandas DataFrame, transformed features
      """
      from numba import get_num_threads, set_num_threads
  
      from sktime.transformations.panel.rocket._minirocket_multi_numba import (
          _transform_multi,
      )
  
      X = X.astype(np.float32)
      # change n_jobs depended on value and existing cores
      prev_threads = get_num_threads()
      if self.n_jobs < 1 or self.n_jobs > multiprocessing.cpu_count():
          n_jobs = multiprocessing.cpu_count()
      else:
          n_jobs = self.n_jobs
      set_num_threads(n_jobs)
      X_ = _transform_multi(X, self.parameters)
      set_num_threads(prev_threads)
      return pd.DataFrame(X_)
  
file_path: sktime/sktime/transformations/panel/rocket/_minirocket_multivariate.py
imports: import multiprocessing
  import numpy
  import pandas
  from sktime.transformations.base import BaseTransformer
label_desc: Use image node_id 3 for calling the MiniRocketMultivariate obj's underlying member method code with example usage: obj._transform(X, y) and returns: pd