Counting 3,028 Big Data & Machine Learning Frameworks, Toolsets, and Examples...
Suggestion? Feedback? Tweet @stkim1

Last Commit
Aug. 8, 2018
Apr. 14, 2018

DeepSuperLearner (2018) in Python

This is a sklearn implementation of the machine-learning DeepSuperLearner algorithm, A Deep Ensemble method for Classification Problems.

For details about DeepSuperLearner please refer to the Deep Super Learner: A Deep Ensemble for Classification Problems by Steven Young, Tamer Abdou, and Ayse Bener.

Installation and demo

  1. Clone this repository

    git clone
  2. Install the python library

    cd DeepSuperLearner
    python install


    ERT_learner = ExtremeRandomizedTrees(n_estimators=200, max_depth=None, max_features=1)
    kNN_learner = kNearestNeighbors(n_neighbors=11)
    LR_learner = LogisticRegression()
    RFC_learner = RandomForestClassifier(n_estimators=200, max_depth=None)
    XGB_learner = XGBClassifier(n_estimators=200, max_depth=3, learning_rate=1.)
    Base_learners = {'ExtremeRandomizedTrees':ERT_learner, 'kNearestNeighbors':kNN_learner, 'LogisticRegression':LR_learner,
                     'RandomForestClassifier':RFC_learner, 'XGBClassifier':XGB_learner}    
    X, y = datasets.make_classification(n_samples=1000, n_features=12,
                                        n_informative=2, n_redundant=6)
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
    DSL_learner = DeepSuperLearner(Base_learners), y_train)
    DSL_learner.get_precision_recall(X_test, y_test, show_graphs=True)    

See deepSuperLearner/ for full example.

Alt text


  1. For running example you need to install the XGB python lib as it is used as a base learner just as done in the paper.
  2. Although the algorithm is implemented for classification problems, it can be modified to perform on regression problems aswell.


  • Train on some sklearn data.
  • Restore paper classification results.