SOTAVerified

Kernel-Based Ensemble Learning in Python

2019-12-17Code Available0· sign in to hype

Benjamin Guedj, Bhargav Srinivasa Desikan

Code Available — Be the first to reproduce this paper.

Reproduce

Code

Abstract

We propose a new supervised learning algorithm, for classification and regression problems where two or more preliminary predictors are available. We introduce KernelCobra, a non-linear learning strategy for combining an arbitrary number of initial predictors. KernelCobra builds on the COBRA algorithm introduced by biau2016cobra, which combined estimators based on a notion of proximity of predictions on the training data. While the COBRA algorithm used a binary threshold to declare which training data were close and to be used, we generalize this idea by using a kernel to better encapsulate the proximity information. Such a smoothing kernel provides more representative weights to each of the training points which are used to build the aggregate and final predictor, and KernelCobra systematically outperforms the COBRA algorithm. While COBRA is intended for regression, KernelCobra deals with classification and regression. KernelCobra is included as part of the open source Python package Pycobra (0.2.4 and onward), introduced by guedj2018pycobra. Numerical experiments assess the performance (in terms of pure prediction and computational complexity) of KernelCobra on real-life and synthetic datasets.

Tasks

Reproductions