BasePipeline class
==================
.. class:: BasePipeline(self, model: sam_ml.models.main_classifier.Classifier | sam_ml.models.main_regressor.Regressor, vectorizer: str | sam_ml.data.preprocessing.embeddings.Embeddings_builder | None, scaler: str | sam_ml.data.preprocessing.scaler.Scaler | None, selector: str | tuple[str, int] | sam_ml.data.preprocessing.feature_selection.Selector | None, sampler: str | sam_ml.data.preprocessing.sampling.Sampler | sam_ml.data.preprocessing.sampling_pipeline.SamplerPipeline | None, model_name: str)
BasePipeline class - parent class :class:`Model`
.. list-table::
:widths: 25 75
:header-rows: 0
* - Parameters
-
model : Classifier or Regressor class object
Model used in pipeline (:class:`Classifier` or :class:`Regressor`)
vectorizer : str, Embeddings_builder, or None
object or algorithm of :class:`Embeddings_builder` class which will be used for automatic string column vectorizing (None for no vectorizing)
scaler : str, Scaler, or None
object or algorithm of :class:`Scaler` class for scaling the data (None for no scaling)
selector : str, Selector, or None
object, tuple of algorithm and feature number, or algorithm of :class:`Selector` class for feature selection (None for no selecting)
sampler : str, Sampler, SamplerPipeline, or None
object or algorithm of :class:`Sampler` / :class:`SamplerPipeline` class for sampling the train data (None for no sampling)
model_name : str
name of the model
* - Attributes
-
cv_scores : dict[str, float]
dictionary with cross validation results
data_classes_trained : bool
If ``True``, the preprocessing step classes are fitted. Important for methods that use warm_start
feature_names : list[str]
names of all the features that the model saw during training. Is empty if model was not fitted yet.
grid : ConfigurationSpace
hyperparameter tuning grid of the model
model : model object
model with 'fit', 'predict', 'set_params', and 'get_params' method (see sklearn API)
model_name : str
name of the model. Used in loading bars and dictionaries as identifier of the model
model_type : str
kind of estimator (e.g. 'RFC' for RandomForestClassifier)
rCVsearch_results : pd.DataFrame or None
results from randomCV hyperparameter tuning. Is ``None`` if randomCVsearch was not used yet.
steps : list[tuple[str, any]]
list with preprocessing + model pipeline steps as tuples
string_columns : list[str]
list with detected string columns that are used in auto-vectorizing
train_score : float
train score value
train_time : str
train time in format: "0:00:00" (hours:minutes:seconds)
.. raw:: html
Methods
.. list-table::
:widths: 25 75
:header-rows: 1
* - Method
- Description
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._auto_vectorizing`
- Function to detect string columns and creating a vectorizer for each, and vectorize them
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._changed_parameters`
- Function to get parameters that differ from the default ones
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._data_prepare`
- Function to run data class objects on data to prepare them for the model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._get_all_scores`
- Function to create multiple scores for given y_true-y_pred pairs
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._get_score`
- Calculate a score for given y true and y prediction values
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._inherit_from_model`
- Function to inherit methods and attributes from model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._make_cv_scores`
- Function to create from the crossvalidation results a dictionary
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._make_scorer`
- Function to create a dictionary with scorer for the crossvalidation
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._print_scores`
- Function to print out the values of a dictionary
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline._validate_component`
- Function to create the data preprocessing steps
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.cross_validation`
- Random split crossvalidation
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.cross_validation_small_data`
- One-vs-all cross validation for small datasets
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.evaluate`
- Function to create multiple scores with predict function of model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.evaluate_score`
- Function to create a score with self.__get_score of model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.feature_importance`
- Function to generate a matplotlib plot of the top45 feature importance from the model.
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.fit`
- Function to fit the model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.fit_warm_start`
- Function to warm_start fit the model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.get_deepcopy`
- Function to create a deepcopy of object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.get_params`
- Function to get the parameter from the model object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.get_random_config`
- Function to generate one grid configuration
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.get_random_configs`
- Function to generate grid configurations
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.load_model`
- Function to load a pickled model class object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.predict`
- Function to predict with predict-method from model object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.predict_proba`
- Function to predict with predict_proba-method from model object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.randomCVsearch`
- Hyperparametertuning with randomCVsearch
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.replace_grid`
- Function to replace self.grid
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.save_model`
- Function to pickle and save the class object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.set_params`
- Function to set the parameter of the model object
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.smac_search`
- Hyperparametertuning with SMAC library HyperparameterOptimizationFacade [can only be used in the sam_ml version with swig]
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.train`
- Function to train the model
* - :meth:`~sam_ml.models.main_pipeline.BasePipeline.train_warm_start`
- Function to warm_start train the model
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._auto_vectorizing
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._changed_parameters
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._data_prepare
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._get_all_scores
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._get_score
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._inherit_from_model
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._make_cv_scores
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._make_scorer
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._print_scores
.. automethod:: sam_ml.models.main_pipeline.BasePipeline._validate_component
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.cross_validation
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.cross_validation_small_data
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.evaluate
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.evaluate_score
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.feature_importance
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.fit
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.fit_warm_start
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.get_deepcopy
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.get_params
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.get_random_config
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.get_random_configs
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.load_model
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.predict
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.predict_proba
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.randomCVsearch
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.replace_grid
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.save_model
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.set_params
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.smac_search
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.train
.. automethod:: sam_ml.models.main_pipeline.BasePipeline.train_warm_start