Altri argomenti

Questo modulo esamina i seguenti argomenti:

  • Interpretazione delle foreste casuali
  • foreste casuali di addestramento
  • pro e contro delle foreste casuali

Interpretazione delle foreste casuali

Le foreste casuali sono più complesse da interpretare rispetto agli alberi decisionali. Le foreste casuali contengono alberi decisionali addestrati con rumore casuale. Pertanto, è più difficile esprimere giudizi sulla struttura dell'albero decisionale. Tuttavia, possiamo interpretare i modelli di foresta random in due modi.

Un approccio per interpretare una foresta casuale è semplicemente addestrare e interpretare un albero decisionale con l'algoritmo CART. Poiché sia la foresta casuale che l'albero CART vengono addestrati con lo stesso algoritmo di base, "condividono la stessa visualizzazione globale" del set di dati. Questa opzione è ideale per set di dati semplici e per comprendere l'interpretazione complessiva del modello.

Le Importanze delle variabili sono un altro buon approccio all'interpretabilità. Ad esempio, la tabella seguente assegna un ranking all'importanza variabile di diverse funzionalità per un modello di foresta casuale addestrato sul set di dati del censimento (noto anche come Adult).

Tabella 8. Importanza variabile di 14 diverse funzionalità.

Funzionalità Somma punteggi Diminuzione media della precisione Riduzione media dell'AUC Profondità minima media Num nodes Riduzione media dell'AUC ponderata per la qualità Num come utente root
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

professione

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

workclass

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 dell'importanza delle variabili hanno scale diverse e possono portare a differenze nel ranking delle funzionalità.

Le importanza delle variabili che provengono dalla struttura del modello (ad es. somma del punteggio, profondità minima media, numero di nodi e numero come radice nella tabella sopra) vengono calcolate in modo simile per gli alberi decisionali (vedi sezione "Raccogli | Importanza delle variabili") e le foreste casuali.

L'importanza delle variabili di permutazione (ad es. la diminuzione media in {accuracy, auc, pr-auc} nella tabella sopra) sono misure indipendenti dal modello che possono essere calcolate su qualsiasi modello di machine learning con un set di dati di convalida. Con la foresta random, tuttavia, anziché utilizzare un set di dati di convalida, puoi calcolare l'importanza delle variabili di permutazione con la valutazione out-of-bag.

SHAP (SHapley Additive exPlanations) è un metodo indipendente dal modello per spiegare le singole previsioni o l'interpretazione in base al modello. Consulta Interpretable Machine Learning di Molnar per un'introduzione all'interpretazione indipendente dal modello. SHAP è solitamente costoso da calcolare, ma può essere notevolmente accelerato per le foreste di alberi decisionali, quindi è un buon modo per interpretarle.

Esempio di utilizzo

Nella lezione precedente abbiamo addestrato un albero decisionale CART su un piccolo set di dati chiamando tfdf.keras.CartModel. Per addestrare un modello di foresta casuale, basta sostituire 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 le reti decisionali, le foreste casuali supportano in modo nativo le caratteristiche numeriche e categoriche e spesso non richiedono la preelaborazione delle caratteristiche.
  • Poiché gli alberi decisionali sono indipendenti, le foreste casuali possono essere addestrate in parallelo. Di conseguenza, puoi addestrare rapidamente le foreste casuali.
  • Le foreste casuali hanno parametri predefiniti che spesso danno ottimi risultati. La regolazione di questi parametri spesso ha scarso effetto sul modello.

Svantaggi:

  • Poiché gli alberi decisionali non vengono potati, possono essere di grandi dimensioni. I modelli con più di 1 milione di nodi sono comuni. Le dimensioni (e quindi la velocità di inferenza) della foresta aleatoria possono a volte rappresentare un problema.
  • Le foreste casuali non possono apprendere e riutilizzare le rappresentazioni interne. Ogni albero decisionale (e ogni ramo di ogni albero decisionale) deve riaprendere il pattern del set di dati. In alcuni set di dati, in particolare non tabulari (ad es. immagini, text), questo porta le foreste casuali a risultati peggiori rispetto ad altri metodi.