Les modèles CART peuvent-ils être rendus robustes?


14

Un collègue de mon bureau m'a dit aujourd'hui "Les modèles d'arbres ne sont pas bons parce qu'ils sont pris par des observations extrêmes".

Une recherche ici a abouti à ce fil qui soutient essentiellement la revendication.

Ce qui m'amène à la question - dans quelle situation un modèle CART peut-il être robuste, et comment est-il montré?

Réponses:


15

Non, pas dans leurs formes actuelles. Le problème est que les fonctions de perte convexe ne peuvent pas être rendues robustes à la contamination par des valeurs aberrantes (c'est un fait bien connu depuis les années 70 mais continue d'être redécouvert périodiquement, voir par exemple cet article pour une récente redécouverte):

http://www.cs.columbia.edu/~rocco/Public/mlj9.pdf

Maintenant, dans le cas des arbres de régression, le fait que CART utilise des marginaux (ou alternativement des projections univariées) peut être utilisé: on peut penser à une version de CART où le critère sd est remplacé par un équivalent plus robuste (MAD ou mieux encore, Estimateur Qn).

Éditer:

Je suis récemment tombé sur un article plus ancien mettant en œuvre l'approche suggérée ci-dessus (utilisant un estimateur d'échelle M robuste au lieu du MAD). Cela conférera une robustesse aux valeurs aberrantes «y» aux CART / RF (mais pas aux valeurs aberrantes situées sur l'espace de conception, ce qui affectera les estimations des hyper-paramètres du modèle). Voir:

Galimberti, G., Pillati, M., et Soffritti, G. (2007). Arbres de régression robustes basés sur des estimateurs M. Statistica, LXVII, 173–190.


Merci kwak. Cet article semble parler de méthodes de renforcement. Les résultats qu'ils présentent valent-ils pour le cas du classificateur simple d'un modèle CART? (à première vue, cela ressemble à ça, mais je n'ai pas suffisamment lu l'article pour vraiment savoir)
Tal Galili

Le résultat qu'ils présentent vaut pour toute fonction de perte convexe, et a été initialement discuté par Tukey. Pour résumer, la mesure de propagation (Gini ou entropie) utilisée pour quantifier la qualité d'un nœud est sensible à la contamination par des valeurs aberrantes (c'est-à-dire des observations mal étiquetées dans l'ensemble de données). Ce problème affecte à la fois le bâtiment et la phase d'élagage. La contamination d'un ensemble de données par observation avec une étiquette incorrectement imputée rend généralement l'arbre résultant beaucoup trop complexe (vous pouvez le vérifier assez facilement par vous-même).
user603

Merci Kwak! Et n'y a-t-il pas de fonction de perte robuste?
Tal Galili

1
pas de fonction de perte convexe . Voir cet article «Un algorithme rapide pour l'estimateur déterminant de covariance minimale» pour un exemple de ce qui peut être fait avec des fonctions de perte non convexes (bien que cela ne soit pas lié à la classification, l'article vaut la peine d'être lu).
user603

2
@Tal CART est l'équivalent du boosting, d'un "classificateur pivot" (le critère qui se trouve dans chaque nœud d'arbre, comme une râpe d'attribut plus que quelque chose ou une valeur d'attribut dans set quelque chose).

6

Vous pourriez envisager d'utiliser l' ensachage de Breiman ou des forêts aléatoires . Une bonne référence est Breiman "Bagging Predictors" (1996). Également résumé dans Clifton Sutton "Arbres de classification et de régression, ensachage et amplification" du Handbook of Statistics.

Vous pouvez également voir Andy Liaw et Matthew Wiener R News discuter du package randomForest.


2
Pas pour gâcher la fête, mais comment une forêt aléatoire est-elle censée fournir une robustesse à la contamination par des valeurs aberrantes est un mystère.
user603

3
@kwak Pourtant, c'est une bonne réponse; les arbres en RF ne voient pas l'ensemble complet, donc beaucoup d'entre eux ne seront pas contaminés. Encore mieux - le suivi dans lequel les feuilles atterrissent dans les cas OOB peut être utilisé pour trouver des objets mal étiquetés et les éliminer. (Si je me souviens bien, cela est mentionné dans l'article de Breiman sur les RF).

4
Le problème est que les valeurs aberrantes donneront à un arbre «mauvais» (c'est-à-dire contaminé) un meilleur aspect que de bons arbres (non contaminés). C'est ce qu'on appelle, l'effet de masquage et est facile à reproduire avec des données simulées. Le problème vient du fait que le critère que vous utilisez pour évaluer les arbres n'est pas en soi robuste aux valeurs aberrantes. Je sais que je commence à ressembler à un mollah fondamentaliste, mais à moins que chaque outil que vous utilisez ne soit rendu robuste, votre procédure peut être montrée sensible (à un niveau ou à un autre) aux valeurs aberrantes (et donc pas robuste).
user603

3

Si vous consultez le package 'gbm' dans R (boosting de gradient généralisé), le 'boosting' utilise des fonctions de perte qui ne sont pas nécessairement une erreur quadratique moyenne. Cela apparaît dans l'argument «distribution» pour fonctionner «gbm ()». Ainsi, l'élaboration de l'arbre via le boosting sera résistante aux valeurs aberrantes, semblable au fonctionnement des estimateurs M.

Vous pourriez commencer ici .

Une autre approche consisterait à construire l'arbre de la manière habituelle (partitions basées sur SSE), mais à élaguer l'arbre en utilisant la validation croisée avec une mesure d'ajustement robuste. Je pense que xpred dans rpart donnera des prédicteurs validés croisés (pour une variété de complexités d'arbres différentes), que vous pouvez ensuite appliquer votre propre mesure d'erreur, comme la valeur absolue moyenne.

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.