I modelli CART possono essere resi robusti?


14

Un collega nel mio ufficio mi ha detto oggi "I modelli di alberi non sono buoni perché vengono catturati da osservazioni estreme".

Una ricerca qui ha portato a questa discussione che sostanzialmente supporta l'affermazione.

Il che mi porta alla domanda: in quale situazione un modello CART può essere robusto e come viene mostrato?

Risposte:


15

No, non nelle loro forme attuali. Il problema è che le funzioni di perdita convessa non possono essere rese robuste alla contaminazione dagli outlier (questo è un fatto ben noto dagli anni '70 ma continua a essere riscoperto periodicamente, vedi ad esempio questo documento per una recente scoperta di questo tipo):

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

Ora, nel caso degli alberi di regressione, si può usare il fatto che CART utilizza i marginali (o in alternativa proiezioni univariate): si può pensare a una versione di CART in cui il criterio sd è sostituito da una controparte più robusta (MAD o meglio ancora, Stimatore Qn).

Modificare:

Di recente mi sono imbattuto in un documento più vecchio che implementava l'approccio suggerito sopra (usando un robusto stimatore M di scala anziché il MAD). Ciò conferirà robustezza agli "outlier" y ai CART / RF (ma non agli outlier situati nello spazio di progettazione, il che influenzerà le stime degli iperparametri del modello) Vedi:

Galimberti, G., Pillati, M., & Soffritti, G. (2007). Alberi di regressione robusti basati su stimatori M. Statistica, LXVII, 173–190.


Grazie kwak. Questo articolo sembra parlare di metodi di potenziamento. I risultati che presentano valgono per il semplice caso classificatore di un modello CART? (in apparenza sembra, ma non ho analizzato l'articolo abbastanza per saperlo davvero)
Tal Galili,

Il risultato che presentano vale per qualsiasi funzione di perdita convessa, ed è stato inizialmente discusso da Tukey. Per riassumere, la misura della diffusione (Gini o entropia) utilizzata per quantificare la qualità di un nodo è sensibile alla contaminazione da parte di valori anomali (ovvero osservazioni che sono etichettate erroneamente nel set di dati). Questo problema riguarda sia l'edificio sia il palcoscenico. La contaminazione di un set di dati mediante l'osservazione con un'etichetta erroneamente imputata in genere causerà l'albero troppo complesso (è possibile verificarlo abbastanza facilmente da soli).
user603

Grazie Kwak! E non esiste una funzione di perdita che sia robusta?
Tal Galili,

1
nessuna funzione di perdita convessa . Vedi questo articolo "Un algoritmo veloce per lo stimatore determinante della covarianza minima" per un esempio di cosa si può fare con le funzioni di perdita non convessa (sebbene non sia correlato alla classificazione, l'articolo merita una lettura).
user603

2
@Tal CART è equivalente al potenziamento di un "classificatore pivot" (il criterio che si trova in ciascun nodo dell'albero, come una grattugia di attributo di qualcosa o un valore di attributo nel set di qualcosa).

6

Potresti prendere in considerazione l'uso delle insaccature o delle foreste casuali di Breiman . Un buon riferimento è Breiman "Bagging Predictors" (1996). Riassunto anche in "Classification and Regressione Trees, Bagging and Boosting" di Clifton Sutton nel Manuale di Statistica.

Puoi anche vedere Andy Liaw e Matthew Wiener R mentre discutono del pacchetto randomForest.


2
Non rovinare la festa, ma come si suppone che la foresta a caso fornisca robustezza alla contaminazione da parte dei criminali è un mistero.
user603

3
@kwak Comunque, questa è una buona risposta; gli alberi in RF non vedono l'intero set, quindi molti di loro non saranno contaminati. Ancora meglio: il tracciamento in cui le foglie fanno atterrare i casi OOB può essere utilizzato per trovare oggetti senza etichetta ed eliminarli. (Come ricordo ora, questo è menzionato nel documento di Breiman sulla RF).

4
Il problema è che gli outlier renderanno alcuni alberi "cattivi" (cioè contaminati) più belli di quelli buoni (non contaminati). Questo si chiama effetto mascherante ed è facile da replicare con dati simulati. Il problema sorge perché il criterio che usi per valutare gli alberi non è di per sé robusto per i valori anomali. So che sto iniziando a sembrare un mullah fondamentalista, ma a meno che ogni strumento che usi non sia reso robusto, la tua procedura può essere dimostrata sensibile (a un livello o all'altro) ai valori anomali (e quindi non robusti).
user603

3

Se si controlla il pacchetto 'gbm' in R (boosting gradiente generalizzato), il 'boosting' utilizza funzioni di perdita che non sono necessariamente errore al quadrato. Questo appare nell'argomento 'distribution' per funzionare 'gbm ()'. Pertanto l'elaborazione dell'albero tramite il potenziamento sarà resistente ai valori anomali, simile a come funzionano gli stimatori M.

Potresti iniziare qui .

Un altro approccio sarebbe quello di costruire l'albero nel solito modo (partizioni basate su SSE), ma potare l'albero usando la validazione incrociata con una solida misura di adattamento. Penso che xpred in rpart fornirà predittori cross-validati (per una varietà di diverse complessità degli alberi), che è quindi possibile applicare la propria misura di errore, come il valore assoluto medio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.