class_docstr: Base class for benchmarks.
  
  A benchmark consists of a set of tasks and a set of estimators.
  
  Parameters
  ----------
  id_format: str, optional (default=None)
      A regex used to enforce task/estimator ID to match a certain format
      if None, no format is enforced on task/estimator ID
docstr: Run the benchmark.
  
  Parameters
  ----------
  output_file : str
      Path to write results output file to.
  
  Returns
  -------
  pandas DataFrame of results
code: def run(self, output_file: str) -> pd.DataFrame:
      """Run the benchmark.
  
      Parameters
      ----------
      output_file : str
          Path to write results output file to.
  
      Returns
      -------
      pandas DataFrame of results
      """
      results_df = self.kotsu_run(
          self.estimators, self.validations, output_file
      )
      return results_df
  
file_path: sktime/sktime/benchmarking/benchmarks.py
imports: from typing import Callable, Optional, Union
  import pandas
  from sktime.base import BaseEstimator
  from sktime.utils.validation._dependencies import _check_soft_dependencies
label_desc: Use image node_id 4 for calling the BaseBenchmark obj's underlying member method code with example usage: obj.run(output_file) and returns: results_df