class_docstr: Base class for all pipeline objects.
  
  Notes
  -----
  This class should not be instantiated, only subclassed.
code: def __init__(
      self,
      config=None,
      feat_type: Optional[FEAT_TYPE_TYPE] = None,
      steps=None,
      dataset_properties=None,
      include=None,
      exclude=None,
      random_state=None,
      init_params=None,
  ):
      self.init_params = init_params if init_params is not None else {}
      self.include = include if include is not None else {}
      self.exclude = exclude if exclude is not None else {}
      self.dataset_properties = (
          dataset_properties if dataset_properties is not None else {}
      )
      self.random_state = random_state
      self.feat_type = feat_type
  
      if steps is None:
          self.steps = self._get_pipeline_steps(
              feat_type=feat_type, dataset_properties=dataset_properties
          )
      else:
          self.steps = steps
  
      self._validate_include_exclude_params()
  
      self.config_space = self.get_hyperparameter_search_space(
          feat_type=feat_type
      )
  
      if config is None:
          self.config = self.config_space.get_default_configuration()
      else:
          if isinstance(config, dict):
              config = Configuration(self.config_space, config)
          if self.config_space != config.configuration_space:
              print(self.config_space._children)
              print(config.configuration_space._children)
              import difflib
  
              diff = difflib.unified_diff(
                  str(self.config_space).splitlines(),
                  str(config.configuration_space).splitlines(),
              )
              diff = "\n".join(diff)
              raise ValueError(
                  "Configuration passed does not come from the "
                  "same configuration space. Differences are: "
                  "%s" % diff
              )
          self.config = config
  
      self.set_hyperparameters(
          self.config, feat_type=feat_type, init_params=init_params
      )
  
      super().__init__(steps=self.steps)
  
      self._additional_run_info = {}
  
imports: from abc import ABCMeta
  from typing import Dict, Optional, Union
  import numpy
  import scipy.sparse
  from ConfigSpace import Configuration
  from sklearn.pipeline import Pipeline
  import autosklearn.pipeline.create_searchspace_util
  from autosklearn.askl_typing import FEAT_TYPE_TYPE
  from .components.base import AutoSklearnChoice, AutoSklearnComponent
label_desc: Use image node_id 1 to create a new BasePipeline object from inherited base classes: Pipeline with example: obj = BasePipeline(config, feat_type, steps, dataset_properties, include, exclude, random_state, init_params)