kappaml_core.meta package¶
Submodules¶
kappaml_core.meta.base module¶
- class kappaml_core.meta.base.MetaEstimator(models: ~typing.List[~river.base.regressor.Regressor | ~river.base.classifier.Classifier], meta_learner: ~river.base.classifier.Classifier = HoeffdingTreeClassifier ( grace_period=200 max_depth=980 split_criterion="info_gain" delta=1e-07 tau=0.05 leaf_prediction="nba" nb_threshold=0 nominal_attributes=None splitter=GaussianSplitter ( n_splits=10 ) binary_split=False min_branch_fraction=0.01 max_share_to_split=0.99 max_size=100. memory_estimate_period=1000000 stop_mem_management=False remove_poor_attrs=False merit_preprune=True ), metric: ~river.metrics.base.Metric = MAE: 0., mfe_groups: list = ['general'], window_size: int = 200, meta_update_frequency: int = 50)[source]¶
Bases:
ModelSelectorMeta-estimator for model selection using meta-learning.
This implements a meta-estimator that uses a list of base estimator models and a meta learner. The meta learner uses meta features from stream characteristics to select the best base estimator at a given point in time.
- Parameters:
models (list of Estimator) – A list of base estimator models.
meta_learner (Classifier) – default=HoeffdingTreeClassifier Meta learner used to predict the best base estimator.
metric (Metric) – Metric used to evaluate the performance of the base estimators.
mfe_groups (list (default=['general'])) – Groups of meta-features to use from PyMFE
window_size (int (default=200)) – The size of the window used for extracting meta-features.
meta_update_frequency (int (default=50)) – How frequently to extract meta-features and update the meta-learner. Higher values mean less frequent updates but more stable meta-model.
- property best_model¶
The current best model.
kappaml_core.meta.meta_classifier module¶
- class kappaml_core.meta.meta_classifier.MetaClassifier(models: ~typing.List[~river.base.classifier.Classifier], meta_learner: ~river.base.classifier.Classifier = HoeffdingTreeClassifier ( grace_period=200 max_depth=980 split_criterion="info_gain" delta=1e-07 tau=0.05 leaf_prediction="nba" nb_threshold=0 nominal_attributes=None splitter=GaussianSplitter ( n_splits=10 ) binary_split=False min_branch_fraction=0.01 max_share_to_split=0.99 max_size=100. memory_estimate_period=1000000 stop_mem_management=False remove_poor_attrs=False merit_preprune=True ), metric=Accuracy: 0.00%, mfe_groups: list = ['general'], window_size: int = 200, meta_update_frequency: int = 50)[source]¶
Bases:
MetaEstimator,ModelSelectionClassifierMeta-classifier.
This implements a meta-classifier that uses a list of base classifier models and a meta learner. The meta learner uses meta features from stream characteristics to select the best base classifier at a given point in time.
- Parameters:
models (list of Classifier) – A list of base classifier models.
meta_learner (Classifier) – default=HoeffdingTreeClassifier Meta learner used to predict the best base estimator.
metric (Metric) – default=Accuracy Metric used to evaluate the performance of the base classifiers.
mfe_groups (list (default=['general'])) – Groups of meta-features to use from PyMFE
window_size (int (default=200)) – The size of the window used for extracting meta-features.
meta_update_frequency (int (default=50)) – How frequently to extract meta-features and update the meta-learner. Higher values mean less frequent updates but more stable meta-model.
kappaml_core.meta.meta_regressor module¶
- class kappaml_core.meta.meta_regressor.MetaRegressor(models: ~typing.List[~river.base.regressor.Regressor], meta_learner: ~river.base.classifier.Classifier = HoeffdingTreeClassifier ( grace_period=200 max_depth=980 split_criterion="info_gain" delta=1e-07 tau=0.05 leaf_prediction="nba" nb_threshold=0 nominal_attributes=None splitter=GaussianSplitter ( n_splits=10 ) binary_split=False min_branch_fraction=0.01 max_share_to_split=0.99 max_size=100. memory_estimate_period=1000000 stop_mem_management=False remove_poor_attrs=False merit_preprune=True ), metric=MAE: 0., mfe_groups: list = ['general'], window_size: int = 200, meta_update_frequency: int = 50)[source]¶
Bases:
MetaEstimator,ModelSelectionRegressorMeta-regressor for model selection using meta-learning.
This implements a meta-regressor that uses a list of base regressor models and a meta learner. The meta learner uses meta features from stream characteristics to select the best base regressor at a given point in time.
- Parameters:
models (list of Regressor) – A list of base regressor models.
meta_learner (Classifier) – default=HoeffdingTreeClassifier Meta learner used to predict the best base estimator.
metric (Metric) – default=MAE Metric used to evaluate the performance of the base regressors.
mfe_groups (list (default=['general'])) – Groups of meta-features to use from PyMFE
window_size (int (default=200)) – The size of the window used for extracting meta-features.
meta_update_frequency (int (default=50)) – How frequently to extract meta-features and update the meta-learner. Higher values mean less frequent updates but more stable meta-model.
Module contents¶
The kappaml_core.meta module contains meta-learning algorithms
- class kappaml_core.meta.MetaClassifier(models: ~typing.List[~river.base.classifier.Classifier], meta_learner: ~river.base.classifier.Classifier = HoeffdingTreeClassifier ( grace_period=200 max_depth=980 split_criterion="info_gain" delta=1e-07 tau=0.05 leaf_prediction="nba" nb_threshold=0 nominal_attributes=None splitter=GaussianSplitter ( n_splits=10 ) binary_split=False min_branch_fraction=0.01 max_share_to_split=0.99 max_size=100. memory_estimate_period=1000000 stop_mem_management=False remove_poor_attrs=False merit_preprune=True ), metric=Accuracy: 0.00%, mfe_groups: list = ['general'], window_size: int = 200, meta_update_frequency: int = 50)[source]¶
Bases:
MetaEstimator,ModelSelectionClassifierMeta-classifier.
This implements a meta-classifier that uses a list of base classifier models and a meta learner. The meta learner uses meta features from stream characteristics to select the best base classifier at a given point in time.
- Parameters:
models (list of Classifier) – A list of base classifier models.
meta_learner (Classifier) – default=HoeffdingTreeClassifier Meta learner used to predict the best base estimator.
metric (Metric) – default=Accuracy Metric used to evaluate the performance of the base classifiers.
mfe_groups (list (default=['general'])) – Groups of meta-features to use from PyMFE
window_size (int (default=200)) – The size of the window used for extracting meta-features.
meta_update_frequency (int (default=50)) – How frequently to extract meta-features and update the meta-learner. Higher values mean less frequent updates but more stable meta-model.
- class kappaml_core.meta.MetaRegressor(models: ~typing.List[~river.base.regressor.Regressor], meta_learner: ~river.base.classifier.Classifier = HoeffdingTreeClassifier ( grace_period=200 max_depth=980 split_criterion="info_gain" delta=1e-07 tau=0.05 leaf_prediction="nba" nb_threshold=0 nominal_attributes=None splitter=GaussianSplitter ( n_splits=10 ) binary_split=False min_branch_fraction=0.01 max_share_to_split=0.99 max_size=100. memory_estimate_period=1000000 stop_mem_management=False remove_poor_attrs=False merit_preprune=True ), metric=MAE: 0., mfe_groups: list = ['general'], window_size: int = 200, meta_update_frequency: int = 50)[source]¶
Bases:
MetaEstimator,ModelSelectionRegressorMeta-regressor for model selection using meta-learning.
This implements a meta-regressor that uses a list of base regressor models and a meta learner. The meta learner uses meta features from stream characteristics to select the best base regressor at a given point in time.
- Parameters:
models (list of Regressor) – A list of base regressor models.
meta_learner (Classifier) – default=HoeffdingTreeClassifier Meta learner used to predict the best base estimator.
metric (Metric) – default=MAE Metric used to evaluate the performance of the base regressors.
mfe_groups (list (default=['general'])) – Groups of meta-features to use from PyMFE
window_size (int (default=200)) – The size of the window used for extracting meta-features.
meta_update_frequency (int (default=50)) – How frequently to extract meta-features and update the meta-learner. Higher values mean less frequent updates but more stable meta-model.