I modelli di foreste decisionali sono composti da alberi decisionali. Gli algoritmi di apprendimento delle foreste decisionali (come le foreste casuali) si basano, almeno in parte, sull'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 come vengono combinati gli alberi decisionali per addestrare le foreste decisionali.
In YDF, utilizza lo studente CART per addestrare i singoli modelli di alberi decisionali:
# 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" organizzate gerarchicamente a forma di albero. Le domande sono generalmente chiamate condizione, split o test. In questo corso useremo il termine "condizione". Ogni nodo non foglia contiene una condizione e ogni nodo foglia contiene una previsione.
Gli alberi botanici generalmente crescono con la radice nella parte inferiore; tuttavia, gli alberi decisionali di solito sono rappresentati dalla radice (il primo nodo) in cima.
Figura 1. Un semplice albero decisionale di classificazione. La leggenda in verde non fa parte dell'albero decisionale.
L'inferenza di un modello di albero decisionale viene calcolata eseguendo il routing di un esempio dalla radice (in alto) a uno dei nodi foglia (in basso) in base alle condizioni. 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 funzionalità:
num_legs | num_eyes |
---|---|
4 | 2 |
La previsione sarebbe dog. Il percorso di inferenza sarà:
- num_legs ≥ 3 → Sì
- num_eyes ≥ 3 → No
Figura 2. Il percorso di inferenza che culmina nel *cane* foglia nell'esempio *{num_legs : 4, num_eyes : 2}*.
Nell'esempio precedente, le foglie dell'albero decisionale contengono previsioni di classificazione, ovvero ogni foglia contiene una specie animale tra un insieme di possibili specie.
Analogamente, gli alberi decisionali possono prevedere valori numerici etichettando le foglie con previsioni regressive (valori numerici). Ad esempio, il seguente albero decisionale prevede un punteggio numerico di tenerezza di un animale compreso tra 0 e 10.
Figura 3. Un albero decisionale che esegue previsioni numeriche.