autoprognosis.plugins.ensemble.classifiers module

class AggregatingEnsemble(*args: Any, **kwargs: Any)

Bases: BaseEnsemble

Basic ensemble strategies:
  • average: average across all scores/prediction results, maybe with weights

  • maximization: simple combination by taking the maximum scores

  • majority vote

  • median: take the median value across all scores/prediction results

Parameters:
  • models – list. List of base models.

  • method – str. average, maximization, majority vote, median

  • explainer_plugins – list. List of explainers attached to the ensemble.

enable_explainer(explainer_plugins: list = [], explanations_nepoch: int = 10000) None
explain(X: DataFrame, *args: Any) DataFrame
fit(X: DataFrame, Y: DataFrame) AggregatingEnsemble
is_fitted() bool
classmethod load(buff: bytes) AggregatingEnsemble
name() str
predict(X: DataFrame, *args: Any) DataFrame
predict_proba(X: DataFrame, *args: Any) DataFrame
save() bytes
score(X: DataFrame, y: DataFrame, metric: str = 'aucroc') float
class BaseEnsemble(*args: Any, **kwargs: Any)

Bases: BaseEstimator

Abstract ensemble interface

enable_explainer(explainer_plugins: list = [], explanations_nepoch: int = 10000) None
abstract explain(X: DataFrame, *args: Any) DataFrame
abstract fit(X: DataFrame, Y: DataFrame) BaseEnsemble
abstract is_fitted() bool
abstract classmethod load(buff: bytes) BaseEnsemble
abstract name() str
predict(X: DataFrame, *args: Any) DataFrame
abstract predict_proba(X: DataFrame, *args: Any) DataFrame
abstract save() bytes
score(X: DataFrame, y: DataFrame, metric: str = 'aucroc') float
class StackingEnsemble(*args: Any, **kwargs: Any)

Bases: BaseEnsemble

Stacking ensemble(meta ensembling): Use a meta-learner on top of the base models

Parameters:
  • models – list. List of base models.

  • meta_model – Pipeline. The meta learner.

  • explainer_plugins – list. List of explainers attached to the ensemble.

enable_explainer(explainer_plugins: list = [], explanations_nepoch: int = 10000) None
explain(X: DataFrame, *args: Any) DataFrame
fit(X: DataFrame, Y: DataFrame) StackingEnsemble
is_fitted() bool
classmethod load(buff: bytes) StackingEnsemble
name() str
predict(X: DataFrame, *args: Any) DataFrame
predict_proba(X: DataFrame, *args: Any) DataFrame
save() bytes
score(X: DataFrame, y: DataFrame, metric: str = 'aucroc') float
class WeightedEnsemble(*args: Any, **kwargs: Any)

Bases: BaseEnsemble

Weighted ensemble

Parameters:
  • models – list. List of base models.

  • weights – list. The weights for each base model.

  • explainer_plugins – list. List of explainers attached to the ensemble.

enable_explainer(explainer_plugins: list = [], explanations_nepoch: int = 10000) None
explain(X: DataFrame, *args: Any) DataFrame
fit(X: DataFrame, Y: DataFrame) WeightedEnsemble
is_fitted() bool
classmethod load(buff: bytes) WeightedEnsemble
name() str
predict(X: DataFrame, *args: Any) DataFrame
predict_proba(X: DataFrame, *args: Any) DataFrame
save() bytes
score(X: DataFrame, y: DataFrame, metric: str = 'aucroc') float
class WeightedEnsembleCV(*args: Any, **kwargs: Any)

Bases: BaseEnsemble

Cross-validated Weighted ensemble, with uncertainity prediction support

Parameters:
  • models – list. List of base models.

  • weights – list. The weights for each base model.

  • explainer_plugins – list. List of explainers attached to the ensemble.

enable_explainer(explainer_plugins: list = [], explanations_nepoch: int = 10000) None
explain(X: DataFrame, *args: Any) DataFrame
fit(X: DataFrame, Y: DataFrame) WeightedEnsembleCV
is_fitted() bool
classmethod load(buff: bytes) WeightedEnsembleCV
name() str
predict(X: DataFrame, *args: Any) DataFrame
predict_proba(X: DataFrame, *args: Any) DataFrame
predict_proba_with_uncertainity(X: DataFrame, *args: Any) Tuple[DataFrame, DataFrame]
save() bytes
score(X: DataFrame, y: DataFrame, metric: str = 'aucroc') float