In questa unità vengono esaminati i seguenti argomenti:
- sull'interpretazione di foreste casuali
- addestramento di foreste casuali
- pro e contro delle foreste casuali
Interpretazione delle foreste casuali
Le foreste casuali sono più complesse da interpretare rispetto agli alberi decisionali. Foreste casuali contengono alberi decisionali addestrati con rumore casuale. Pertanto, è più difficile giudizi sulla struttura ad albero decisionale. Tuttavia, possiamo interpretare il valore le foreste in un paio di modi.
Un approccio per interpretare una foresta casuale è semplicemente quello di addestrare e interpretare un con l'algoritmo CART. Poiché sia le foreste casuali che CART vengono addestrati con lo stesso algoritmo di base, "condividono la stessa visione globale" del del set di dati. Questa opzione funziona bene per set di dati semplici e per comprendere il l'interpretazione complessiva del modello.
L'importanza variabile è un'altra buona interpretabilità l'importanza di un approccio umile. Ad esempio, la tabella seguente classifica l'importanza variabile di diverse caratteristiche per un modello di foresta casuale addestrato sul Set di dati del censimento (anche nota come Per adulti).
Tabella 8. Importanza variabile di 14 caratteristiche diverse. di Gemini Advanced.
Funzionalità | Punteggio somma | Diminuzione media dell'accuratezza | Diminuzione media dell'AUC | Profondità minima media | Num nodi | Riduzione media di PR-AUC | Num. come radice |
---|---|---|---|---|---|---|---|
relazione | 4203592,6 |
0,0045 |
0,0172 |
4,970 |
57040 |
0,0093 |
1095 |
capital_gain | 3363045,1 |
0,0199 |
0,0194 |
2,852 |
56468 |
0,0655 |
457 |
marital_status | 3128996,3 |
0,0018 |
0,0230 |
6,633 |
52391 |
0,0107 |
750 |
età | 2520658,8 |
0,0065 |
0,0074 |
4,969 |
356784 |
0,0033 |
200 |
istruzione | 2015905,4 |
0,0018 |
-0,0080 |
5,266 |
115751 |
-0,0129 |
205 |
occupazione | 1939409,3 |
0,0063 |
-0,0040 |
5,017 |
221935 |
-0,0060 |
62 |
education_num | 1673648,4 |
0,0023 |
-0,0066 |
6,009 |
58303 |
-0,0080 |
197 |
fnlwgt | 1564189,0 |
-0,0002 |
-0,0038 |
9,969 |
431987 |
-0,0049 |
0 |
hours_per_week | 1333976,3 |
0,0030 |
0,0007 |
6,393 |
206526 |
-0,0031 |
20 |
capital_loss | 866863,8 |
0,0060 |
0,0020 |
8,076 |
58531 |
0,0118 |
1 |
classe di lavoro | 644208,4 |
0,0025 |
-0,0019 |
9,898 |
132196 |
-0,0023 |
0 |
native_country | 538841,2 |
0,0001 |
-0,0016 |
9,434 |
67211 |
-0,0058 |
0 |
genere | 226049,3 |
0,0002 |
0,0002 |
10,911 |
37754 |
-0,0011 |
13 |
razza | 168180,9 |
-0,0006 |
-0,0004 |
11,571 |
42262 |
-0,0031 |
0 |
Come puoi vedere, definizioni diverse di importanza delle variabili hanno scale diverse e può portare a differenze nel ranking delle caratteristiche.
Importazioni delle variabili derivanti dalla struttura del modello (ad es. somma punteggio, profondità minima media, num nodi e num come radice nella tabella precedente) sono calcolato in modo simile per gli alberi decisionali (consulta la sezione "Carrello | Importanza variabile") e foreste casuali.
Importanza delle variabili di permutazione (ad esempio, diminuzione media di {accuracy, auc, pr-auc} nella tabella qui sopra) sono misure indipendenti dal modello che possono essere calcolate in base a qualsiasi modello di machine learning con un set di dati di convalida. Con una foresta casuale, Tuttavia, invece di utilizzare un set di dati di convalida, puoi calcolare la permutazione l'importanza variabile con una valutazione immediata.
SHAP (SHapley Additive exPlanations) è un metodo indipendente dal modello per spiegare le singole previsioni o l'interpretazione a livello di modello. (Vedi Machine learning interpretabile di Molnar per un'introduzione all'interpretazione agnostica del modello). SHAP è di solito è costoso da calcolare, ma può accelerato in modo significativo foreste, quindi è un buon modo di interpretare le foreste decisionali.
Esempio di utilizzo
Nella lezione precedente abbiamo addestrato un albero decisionale CART su un piccolo set di dati
chiamando il numero tfdf.keras.CartModel
. Per addestrare un modello di foresta casuale,
sostituisci semplicemente tfdf.keras.CartModel
con tfdf.keras.RandomForestModel
:
model = tfdf.keras.RandomForestModel()
model.fit(tf_train_dataset)
Pro e contro
Questa sezione contiene un breve riepilogo dei pro e dei contro delle foreste casuali.
Vantaggi:
- Come gli alberi decisionali, le foreste casuali supportano nativemente numeriche caratteristiche categoriche e spesso non richiedono la pre-elaborazione delle caratteristiche.
- Poiché gli alberi decisionali sono indipendenti, le foreste casuali possono essere parallelo. Di conseguenza, puoi addestrare rapidamente foreste casuali.
- Le foreste casuali hanno parametri predefiniti che spesso forniscono ottimi risultati. Ottimizzazione questi parametri spesso hanno uno scarso effetto sul modello.
Svantaggi:
- Poiché gli alberi decisionali non vengono potati, possono essere grandi. Modelli con più sono comuni più di 1 milione di nodi. La dimensione (e quindi la velocità di inferenza) una foresta casuale a volte può essere un problema.
- Le foreste casuali non possono apprendere e riutilizzare le rappresentazioni interne. Ciascuna (e ogni ramo di ogni albero decisionale) deve apprendere nuovamente pattern del set di dati. In alcuni set di dati, in particolare quelli non tabulari (ad es. immagini, di testo), ciò porta le foreste casuali a risultati peggiori rispetto ad altri metodi.