Classify / Predict: ensemble of classifiers / predictors
c1 = Classify[X -> Y, Method -> "LogisticRegression"] c2 = Classify[X -> Y, Method -> "NearestNeighbors"] c = MachineLearning`PackageScope`CombinePredictors[{c1, c2}] ClassifierInformation[c]
p1 = Predict[X -> Y, Method -> "LinearRegression"] p2 = Predict[X -> Y, Method -> "NearestNeighbors"] p = MachineLearning`PackageScope`CombinePredictors[{p1, p2}] PredictorInformation[p]
The question formulation asks for access to the internals of Classify
in order to get the ensembles, but there is way to make ensembles of classifiers (i.e. ClassifierFunction[___]
functions) through the argument "Probabilities" -- see the (short) package ClassifierEnsembles.m.
Very detailed explanations for using and evaluating classifier ensembles made with that package are given in:
ROC for classifier ensembles, bootstrapping, damaging, and interpolation (at community.wolfram.com), or
the same article at WordPress (loads faster).
Here is an image of ROC curves for comparing the performance of a classifier ensemble with its individual classifiers: