← all repositories
yzhao062/combo

Ensemble learning's utility belt for sklearn and beyond

combo unifies model combination algorithms—from simple averaging to research-grade stacking and local selection—across classification, clustering, and anomaly detection behind one consistent API.

661 stars Python ML Frameworks
combo
Collecting fresh signals — velocity needs a few days of history.
star history

What it does

combo is a Python library for combining machine learning models and their scores. It wraps methods from scikit-learn, XGBoost, and LightGBM into a single API that handles classification, clustering, and anomaly detection ensembles. The library implements everything from basic majority voting and averaging to specialized techniques like Dynamic Classifier Selection, Stacking, and Locally Selective Combination for outlier detection.

The interesting bit

Instead of treating ensemble learning as a classification-only game, combo applies the same unifying philosophy across disparate tasks—clustering and anomaly detection included. It also JIT-compiles hot paths with numba and parallelizes with joblib, which is more effort than you typically see in a research demo library.

Key highlights

  • Implements algorithms spanning general-purpose averaging, classification (DCS, DES, Stacking), clustering (EAC, Clusterer Ensemble), and anomaly detection (LSCP, XGBOD, AOM, MOA).
  • Claims unified APIs with detailed documentation and interactive examples.
  • Optimizes performance with numba JIT and joblib parallelization where possible.
  • Published in AAAI 2020 and integrates with mainstream ML libraries like scikit-learn, XGBoost, and LightGBM.

Caveats

  • The README explicitly lists Python 3.5–3.7 as supported versions, which may suggest the documentation has not kept pace with newer Python releases.

Verdict

Worth a look if you regularly ensemble models across different tasks and want a consistent interface. Skip it if you only need basic voting for classification and prefer staying within native scikit-learn utilities.

Frequently asked

What is yzhao062/combo?
combo unifies model combination algorithms—from simple averaging to research-grade stacking and local selection—across classification, clustering, and anomaly detection behind one consistent API.
Is combo open source?
Yes — yzhao062/combo is open source, released under the BSD-2-Clause license.
What language is combo written in?
yzhao062/combo is primarily written in Python.
How popular is combo?
yzhao062/combo has 661 stars on GitHub.
Where can I find combo?
yzhao062/combo is on GitHub at https://github.com/yzhao062/combo.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.