class_docstr: Classifier with automatic model selection.
  
  This model uses successive halving on a portfolio of complex models
  (HistGradientBoosting, RandomForest, SVC, LogisticRegression)
  to pick the best model family and hyper-parameters.
  
  AnyClassifier internally applies EasyPreprocessor, so no preprocessing
  is necessary.
  
  Parameters
  ----------
  n_jobs : int, default=None
      Number of processes to spawn for parallelizing the search.
  
  min_resources : {‘exhaust’, ‘smallest’} or int, default=’exhaust’
      The minimum amount of resource that any candidate is allowed to use
      for a given iteration.  Equivalently, this defines the amount of
      resources r0 that are allocated for each candidate at the first
      iteration. See the documentation of HalvingGridSearchCV for more
      information.
  
  verbose : integer, default=0
      Verbosity. Higher means more output.
  
  type_hints : dict or None
          If dict, provide type information for columns.
          Keys are column names, values are types as provided by
          detect_types.
  
   portfolio : str, default='baseline'
           Lets you choose a portfolio. Choose 'baseline' for multiple
           classifiers with default parameters, 'hgb' for
           high-performing HistGradientBoostingClassifiers,
           'svc' for high-performing support vector classifiers,
           'rf' for high-performing random forest classifiers,
           'lr' for high-performing logistic regression classifiers,
           'mixed' for a portfolio of different high-performing
           classifiers.
  
  Attributes
  ----------
  search_ : HalvingGridSearchCV instance
      Fitted HalvingGridSearchCV instance for inspection.
  
  est_ : sklearn estimator
      Best estimator (pipeline) found during search.
code: def __init__(
      self,
      n_jobs=None,
      min_resources="exhaust",
      verbose=0,
      type_hints=None,
      portfolio="baseline",
  ):
      self.verbose = verbose
      self.n_jobs = n_jobs
      self.min_resources = min_resources
      self.type_hints = type_hints
      self.portfolio = portfolio
  
imports: from importlib.metadata import version
  import warnings
  import numpy
  import pandas
  import sklearn
  from sklearn.metrics import make_scorer, average_precision_score
  from sklearn.base import BaseEstimator, ClassifierMixin, RegressorMixin
  from sklearn.preprocessing import LabelEncoder
  from sklearn.utils.multiclass import type_of_target
  from sklearn.pipeline import make_pipeline, Pipeline
  from sklearn.exceptions import UndefinedMetricWarning
  from sklearn.model_selection import StratifiedKFold, KFold
  from sklearn.model_selection._validation import _fit_and_score
  from sklearn.utils.validation import check_is_fitted
  from dabl._available_if import available_if
  from sklearn.dummy import DummyClassifier
  from sklearn.experimental import enable_halving_search_cv
  from sklearn.model_selection import HalvingGridSearchCV
  from .preprocessing import EasyPreprocessor, detect_types
  from .pipelines import get_fast_classifiers, get_fast_regressors, get_any_classifiers
  from .utils import _validate_Xyt
label_desc: Use image node_id 1 to create a new AnyClassifier object from inherited base classes: _DablBaseEstimator, ClassifierMixin with example: obj = AnyClassifier(n_jobs, min_resources, verbose, type_hints, portfolio)