code: def test_sklearn_parameter_tuning(data_args, parameter_tuning_method):
      """Test if sklearn parameter tuners can handle sktime panel data and classifiers."""
      clf = CanonicalIntervalForest.create_test_instance()
      param_grid = {"n_intervals": [2, 3], "att_subsample_size": [2, 3]}
      fit_args = make_classification_problem(**data_args)
  
      parameter_tuning_method = parameter_tuning_method(
          clf, param_grid, cv=KFold(n_splits=3)
      )
      parameter_tuning_method.fit(*fit_args)
      assert isinstance(
          parameter_tuning_method.best_estimator_,
          CanonicalIntervalForest,
      )
  
file_path: sktime/sktime/classification/tests/test_sklearn_compatibility.py
imports: import numpy
  import pytest
  from sklearn.calibration import CalibratedClassifierCV
  from sklearn.ensemble import VotingClassifier
  from sklearn.experimental import enable_halving_search_cv
  from sklearn.model_selection import GridSearchCV, GroupKFold, GroupShuffleSplit, KFold, LeaveOneOut, LeavePGroupsOut, LeavePOut, RandomizedSearchCV, RepeatedKFold, ShuffleSplit, StratifiedKFold, StratifiedShuffleSplit, TimeSeriesSplit, cross_val_score
  from sklearn.pipeline import Pipeline
  from sktime.classification.interval_based import CanonicalIntervalForest
  from sktime.transformations.panel.pca import PCATransformer
  from sktime.utils._testing.panel import _make_panel_X, make_classification_problem
  from sktime.utils.validation._dependencies import _check_soft_dependencies
label_desc: Use image node_id 3 for calling a global function with example usage: test_sklearn_parameter_tuning(data_args, parameter_tuning_method) without return types