diff --git a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/SingleClassifier.java b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/SingleClassifier.java
index 5c989f3..b2a09da 100644
--- a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/SingleClassifier.java
+++ b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/SingleClassifier.java
@@ -31,6 +31,7 @@
 import org.apache.samoa.core.Processor;
 import org.apache.samoa.instances.Instances;
 import org.apache.samoa.learners.AdaptiveLearner;
+import org.apache.samoa.learners.ClassificationLearner;
 import org.apache.samoa.learners.Learner;
 import org.apache.samoa.moa.classifiers.core.driftdetection.ChangeDetector;
 import org.apache.samoa.topology.Stream;
@@ -44,7 +45,7 @@
  * Classifier that contain a single classifier.
  * 
  */
-public final class SingleClassifier implements Learner, AdaptiveLearner, Configurable {
+public final class SingleClassifier implements ClassificationLearner, AdaptiveLearner, Configurable {
 
   private static final long serialVersionUID = 684111382631697031L;
 
diff --git a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/AdaptiveBagging.java b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/AdaptiveBagging.java
index 4b2c531..6680862 100644
--- a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/AdaptiveBagging.java
+++ b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/AdaptiveBagging.java
@@ -31,6 +31,7 @@
 import org.apache.samoa.core.Processor;
 import org.apache.samoa.instances.Instances;
 import org.apache.samoa.learners.AdaptiveLearner;
+import org.apache.samoa.learners.ClassificationLearner;
 import org.apache.samoa.learners.Learner;
 import org.apache.samoa.learners.classifiers.trees.VerticalHoeffdingTree;
 import org.apache.samoa.moa.classifiers.core.driftdetection.ADWINChangeDetector;
@@ -47,7 +48,7 @@
 /**
  * An adaptive version of the Bagging Classifier by Oza and Russell.
  */
-public class AdaptiveBagging implements Learner, Configurable {
+public class AdaptiveBagging implements ClassificationLearner, Configurable {
 
   private static final long serialVersionUID = 8217274236558839040L;
   private static final Logger logger = LoggerFactory.getLogger(AdaptiveBagging.class);
diff --git a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Bagging.java b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Bagging.java
index 5d7bbfc..7178738 100644
--- a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Bagging.java
+++ b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Bagging.java
@@ -28,6 +28,7 @@
 
 import org.apache.samoa.core.Processor;
 import org.apache.samoa.instances.Instances;
+import org.apache.samoa.learners.ClassificationLearner;
 import org.apache.samoa.learners.Learner;
 import org.apache.samoa.learners.classifiers.trees.VerticalHoeffdingTree;
 import org.apache.samoa.topology.Stream;
@@ -43,7 +44,7 @@
 /**
  * The Bagging Classifier by Oza and Russell.
  */
-public class Bagging implements Learner, Configurable {
+public class Bagging implements ClassificationLearner, Configurable {
 
   /** The Constant serialVersionUID. */
   private static final long serialVersionUID = -2971850264864952099L;
diff --git a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Boosting.java b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Boosting.java
index 4971fba..6512028 100644
--- a/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Boosting.java
+++ b/samoa-api/src/main/java/org/apache/samoa/learners/classifiers/ensemble/Boosting.java
@@ -30,6 +30,7 @@
 
 import org.apache.samoa.core.Processor;
 import org.apache.samoa.instances.Instances;
+import org.apache.samoa.learners.ClassificationLearner;
 import org.apache.samoa.learners.Learner;
 import org.apache.samoa.learners.classifiers.SingleClassifier;
 import org.apache.samoa.topology.Stream;
@@ -42,7 +43,7 @@
 /**
  * The Bagging Classifier by Oza and Russell.
  */
-public class Boosting implements Learner, Configurable {
+public class Boosting implements ClassificationLearner, Configurable {
 
   /** The Constant serialVersionUID. */
   private static final long serialVersionUID = -2971850264864952099L;
