Quand ne devrais-je pas utiliser un classificateur d'ensemble?


17

En général, dans un problème de classification où le but est de prédire avec précision l'appartenance à une classe hors échantillon, quand ne devrais-je pas utiliser un classificateur d'ensemble?

Cette question est étroitement liée à Pourquoi ne pas toujours utiliser l'apprentissage d'ensemble? . Cette question demande pourquoi nous n'utilisons pas tout le temps des ensembles. Je veux savoir s'il y a des cas où les ensembles sont connus pour être pires (pas seulement "pas meilleurs et une perte de temps") qu'un équivalent non-ensemble.

Et par «classificateur d'ensemble», je me réfère spécifiquement à des classificateurs comme AdaBoost et des forêts aléatoires, par opposition, par exemple, à une machine à vecteurs de support boostée par vous-même.


2
Je n'utiliserais pas de méthodes d'ensemble si vous n'avez pas de diversité entre les méthodes individuelles. En d'autres termes, l'ensemble est utile lorsque vous combinez un ensemble diversifié de méthodes.
prévisionniste

2
@forecaster Je n'ai pas pu m'empêcher d'ajouter un très bon article sur ce que les auteurs appellent la "bonne" et la "mauvaise" diversité pages.bangor.ac.uk/~mas00a/papers/gblkMCS10.pdf dans le contexte des ensembles
Vladislavs Dovgalecs

nuneturebjeologjecunelly jenspjere

Réponses:


7

Le modèle le plus proche du véritable processus de génération de données sera toujours le meilleur et battra la plupart des méthodes d'ensemble. Donc, si les données proviennent d'un processus linéaire, lm () sera bien supérieur aux forêts aléatoires, par exemple:

    set.seed(1234)
p=10
N=1000
#covariates
x = matrix(rnorm(N*p),ncol=p)
#coefficients:
b = round(rnorm(p),2)
y = x %*% b + rnorm(N)
train=sample(N, N/2)
data = cbind.data.frame(y,x)
colnames(data) = c("y", paste0("x",1:p))
#linear model
fit1 = lm(y ~ ., data = data[train,])
summary(fit1)
yPred1 =predict(fit1,data[-train,])
round(mean(abs(yPred1-data[-train,"y"])),2)#0.79

library(randomForest)
fit2 = randomForest(y ~ ., data = data[train,],ntree=1000)
yPred2 =predict(fit2,data[-train,])
round(mean(abs(yPred2-data[-train,"y"])),2)#1.33

13

Je ne recommande pas d'utiliser un classificateur d'ensemble lorsque votre modèle doit être interprétable et explicable. Parfois, vous avez besoin de prédictions et d' explications sur les prédictions.

Lorsque vous devez convaincre les gens que les prévisions valent la peine d'être crues, un modèle très précis peut être très convaincant, mais j'ai eu du mal à convaincre les gens d'agir sur les prédictions lorsque les méthodes sont trop complexes pour leur niveau de confort.

D'après mon expérience, la plupart des gens sont à l'aise avec les modèles additifs linéaires, les modèles qu'ils pourraient marquer à la main, et si vous essayez d'expliquer le boosting adaptatif, les hyper-plans et les effets d'interaction de 5ème niveau, ils répondront comme si vous leur proposiez de la magie noire.

D'un autre côté, les gens peuvent être à l'aise avec la complexité du modèle, mais veulent toujours intérioriser certaines informations. Les scientifiques, par exemple, pourraient ne pas considérer un modèle de boîte noire comme une avancée dans les connaissances humaines, même si le modèle est très précis.

L'analyse d'importance variable peut aider à la compréhension, mais si l'ensemble est plus précis qu'un modèle additif linéaire, l'ensemble exploite probablement certains effets non linéaires et d'interaction que l'analyse d'importance variable ne peut pas complètement expliquer.


Pas ce que je recherchais, mais de bons points. +1
shadowtalker

3

Je voudrais ajouter à la réponse de branco. Les ensembles peuvent être très compétitifs et fournir de très bons résultats. Chez les universitaires par exemple, c'est ce qui compte. Dans l'industrie, les ensembles peuvent être trop difficiles à mettre en œuvre / maintenir / modifier / porter. Le travail de Goef Hinton sur "Dark Knowledge" est exactement à ce sujet: comment transférer les "connaissances" d'un grand ensemble en un modèle facile à déplacer. Il déclare que les ensembles sont mauvais au moment du test: ils sont très redondants et le temps de calcul peut être préoccupant.

Son équipe a obtenu des résultats intéressants, je suggère de consulter ses publications ou au moins les diapositives. Si ma mémoire est bonne, c'était l'un des sujets chauds de 2013 ou 2014.

Les diapositives sur Dark Knowledge peuvent être trouvées ici: http://www.ttic.edu/dl/dark14.pdf

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.