OnlineSmoothBoost#
- class capymoa.classifier.OnlineSmoothBoost[source]#
- Bases: - MOAClassifier- Online Smooth Boost. - Online Smooth Boost [1] is a ensemble classifier. Incremental on-line boosting with Theoretical Justifications of Shang-Tse Chen. - >>> from capymoa.classifier import OnlineSmoothBoost >>> from capymoa.datasets import ElectricityTiny >>> from capymoa.evaluation import prequential_evaluation >>> >>> stream = ElectricityTiny() >>> classifier = OnlineSmoothBoost(stream.get_schema()) >>> results = prequential_evaluation(stream, classifier, max_instances=1000) >>> print(f"{results['cumulative'].accuracy():.1f}") 87.8 - __init__(
- schema: Schema | None = None,
- random_seed: int = 0,
- base_learner='trees.HoeffdingTree',
- boosting_iterations: int = 100,
- gamma=0.1,
- OnlineSmoothBoost Classifier - Parameters:
- schema – The schema of the stream. 
- random_seed – The random seed passed to the MOA learner. 
- base_learner – The base learner to be trained. Default trees.HoeffdingTree. 
- boosting_iterations – The number of boosting iterations (ensemble size). 
- gamma – The value of the gamma parameter. 
 
 
 - predict(instance)[source]#
- Predict the label of an instance. - The base implementation calls - predict_proba()and returns the label with the highest probability.- Parameters:
- instance – The instance to predict the label for. 
- Returns:
- The predicted label or - Noneif the classifier is unable to make a prediction.
 
 - predict_proba(instance)[source]#
- Return probability estimates for each label. - Parameters:
- instance – The instance to estimate the probabilities for. 
- Returns:
- An array of probabilities for each label or - Noneif the classifier is unable to make a prediction.
 
 - train(instance)[source]#
- Train the classifier with a labeled instance. - Parameters:
- instance – The labeled instance to train the classifier with. 
 
 - random_seed: int#
- The random seed for reproducibility. - When implementing a classifier ensure random number generators are seeded.