Tipi di condizioni

Questa unità è incentrata sui diversi tipi di conditions utilizzate per creare alberi decisionali.

Condizioni allineate all'asse e oblique

Una condizione allineata all'asse riguarda una sola funzionalità. Una condizione oblicata comporta più funzionalità. Ad esempio, di seguito è riportata una condizione allineata all'asse:

num_legs ≥ 2

Sebbene la seguente condizione sia obliqua:

num_legs ≥ num_fingers

Spesso, gli alberi decisionali vengono addestrati solo con condizioni allineate all'asse. Tuttavia, le suddivisioni oblique sono più potenti perché sono in grado di esprimere pattern più complessi. Le divisioni oblique a volte producono risultati migliori a scapito di costi di addestramento e inferenza più elevati.

Codice YDF
In YDF, gli alberi decisionali vengono addestrati con condizione allineata all'asse per impostazione predefinita. Puoi abilitare gli alberi con obliquo decisionale con il parametro split_axis="SPARSE_OBLIQUE".

La condizione allineata all'asse è "num_legs >= 3". La condizione obliqua è "num_gambe + peso * 5 >= 12".

Figura 4. Esempi di condizione allineata all'asse e obliqua.

 

La rappresentazione grafica delle due condizioni precedenti restituisce la seguente separazione degli spazi delle caratteristiche:

Un grafico del peso rispetto a num_legs. La condizione allineata all'asse non ignora la ponderazione e, pertanto, è solo una linea verticale. La condizione obliqua mostra una linea inclinata negativamente.

Figura 5. Separazione dello spazio delle caratteristiche per le condizioni nella Figura 4.

 

Condizioni binarie e non binarie

Le condizioni con due possibili risultati (ad esempio, vero o falso) sono chiamate condizioni binarie. Gli alberi decisionali che contengono solo condizioni binarie vengono chiamati alberi di decisione binari.

Le condizioni non binarie hanno più di due risultati possibili. Pertanto, le condizioni non binarie hanno un potere discriminativo maggiore rispetto alle condizioni binarie. Le decisioni contenenti una o più condizioni non binarie sono chiamate alberi di decisioni non binarie.

Confronto tra alberi decisionali binari e non binari. L'albero di decisioni binarie contiene due condizioni binarie, mentre l'albero di decisioni non binario contiene una condizione non binaria.

Figura 6: alberi di decisione binarie e non binarie.

 

È inoltre più probabile che si verifichino condizioni con troppa potenza. Per questo motivo, le foreste decisionali in genere usano alberi di decisione binaria.

Il tipo di condizione più comune è la condizione di soglia espressa come segue:

featurethreshold

Ad esempio:

num_legs ≥ 2

Esistono altri tipi di condizioni. Di seguito sono riportati altri tipi di condizioni binarie di uso comune:

 

Tabella 2. Tipi comuni di condizioni binarie.

Nome Condizione Esempio
condizione della soglia $\mathrm{feature}_i \geq \mathrm{threshold}$ $\mathrm{num\_legs} \geq 2$
condizione di uguaglianza $\mathrm{feature}_i = \mathrm{value}$ $\mathrm{species} = ''gatto"$
condizione impostata $\mathrm{feature}_i \in \mathrm{collection}$ $\mathrm{species} \in \{``gatto", ``cane", ``bird"INSTANCE$
condizione obliqua $\sum_{i} \mathrm{weight}_i \mathrm{feature}_i \geq \mathrm{threshold}$ $5 \ \mathrm{num\_legs} + 2 \ \mathrm{num\_eyes} \geq 10$
funzionalità mancante $\mathrm{feature}_i \mathrm{is} \mathrm{Manca}$ $\mathrm{num\_legs} \mathrm{is} \mathrm{Manca}$