Alberi decisionali

I modelli di foreste decisionali sono composti da alberi decisionali. Foresta decisionale (come le foreste casuali) si basano, almeno in parte, sui l'apprendimento degli alberi decisionali.

In questa sezione del corso studierai un piccolo set di dati di esempio e imparerai come viene addestrato un singolo albero decisionale. Nelle sezioni successive, scoprirai alberi decisionali vengono combinati per addestrare le foreste decisionali.

Codice YDF

In YDF, utilizza lo studente CART per addestrare singoli modelli di albero decisionale:

# https://ydf.readthedocs.io/en/latest/py_api/CartLearner
import ydf
model = ydf.CartLearner(label="my_label").train(dataset)

Il modello

Un albero decisionale è un modello composto da una raccolta di "domande" organizzato in modo gerarchico a forma di albero. Queste domande prendono in genere condition, una suddivisione o un test. Utilizzeremo il termine "condizione" nel per questa lezione. Ogni nodo non foglia contiene una condizione e ogni nodo foglia contiene una previsione.

Gli alberi botanici in genere crescono con la radice in basso. tuttavia, la decisione gli alberi sono solitamente rappresentati con la radice (il primo nodo) in alto.

Un albero decisionale contenente due condizioni e tre foglie. Il primo
condizione (la radice) è num_legs >= 3; la seconda condizione è
num_occhi >= 3. Le tre foglie sono pinguino, ragno,
e cane.

Figura 1. Un semplice albero decisionale per la classificazione. La legenda in verde non fa parte dell'albero decisionale. di Gemini Advanced.

 

L'inferenza di un modello di albero decisionale viene calcolata instradando un esempio dalla radice (in alto) a uno dei nodi foglia (in basso) secondo la le condizioni di traffico. Il valore della foglia raggiunta è la previsione dell'albero decisionale. L'insieme di nodi visitati è chiamato percorso di inferenza. Ad esempio: considera i seguenti valori delle caratteristiche:

num_legs num_eyes
4 2

La previsione sarà dog. Il percorso di inferenza sarebbe:

  1. num_legs ≥ 3 → Sì
  2. num_eyes ≥ 3 → No

La stessa illustrazione della Figura 1, ma questa illustrazione mostra la
  percorso di inferenza attraverso due condizioni, che termina nella foglia per il cane.

Figura 2. Il percorso di inferenza che culmina con la foglia *dog* nell'esempio *{num_legs : 4, num_eyes : 2}*. di Gemini Advanced.

 

Nell'esempio precedente, le foglie dell'albero decisionale contengono previsioni; cioè ogni foglia contiene una specie animale in un insieme di possibili specie.

Analogamente, gli alberi decisionali possono prevedere i valori numerici etichettando le foglie con previsioni regressive (valori numerici). Ad esempio, la seguente decisione albero prevede un punteggio numerico di tenerezza di un animale compreso tra 0 e 10.

Un albero decisionale in cui ogni foglia contiene una rappresentazione in virgola mobile diversa
  numero.

Figura 3. Un albero decisionale che esegue una previsione numerica. di Gemini Advanced.