Un albero decisionale è un algoritmo di apprendimento supervisionato non parametrico che viene utilizzato sia per le attività di classificazione che di regressione. Presenta una struttura gerarchica ad albero che consiste in un nodo radice, rami, nodi interni e nodi foglia.
Come si può vedere dal diagramma seguente, un albero decisionale inizia con un nodo radice, che non ha rami in entrata. I rami in uscita dal nodo radice alimentano quindi i nodi interni, noti anche come nodi decisionali. Sulla base delle funzionalità disponibili, entrambi i tipi di nodo conducono valutazioni per formare sottoinsiemi omogenei, indicati da nodi foglia o nodi terminali. I nodi foglia rappresentano tutti i possibili risultati all'interno del set di dati.
Ad esempio, immaginiamo che tu stia cercando di valutare se andare a fare surf o meno. Per fare questa scelta, puoi utilizzare le seguenti regole decisionali:
Questo tipo di struttura di diagramma di flusso crea anche una rappresentazione facilmente comprensibile del processo decisionale, consentendo ai diversi gruppi di un'organizzazione di capire meglio perché è stata presa una determinata decisione.
L'apprendimento basato sugli alberi decisionali utilizza una strategia "divide et impera" conducendo una ricerca approfondita per identificare i punti di divisione ottimali all'interno di un albero. Questa suddivisione viene poi ripetuta in modo ricorsivo, dall'alto verso il basso, fino a quando tutti o la maggior parte dei record vengono classificati con etichette di classe specifiche.
La classificazione di tutti i punti dati come set omogenei dipende in gran parte dalla complessità dell'albero decisionale. Gli alberi più piccoli possono raggiungere più facilmente i nodi foglia puri, vale a dire i punti dati in una singola classe. Tuttavia, man mano che un albero cresce di dimensioni, diventa sempre più difficile mantenere questa purezza, e capita spesso che quantità insufficiente di dati rientri in un determinato albero secondario. Quando ciò si verifica, si parla frammentazione dei dati, che può portare a un overfitting.
Di conseguenza, gli alberi decisionali migliori sono quelli più piccoli, il che è coerente con il principio della parsimonia o rasoio di Occam: "le entità non devono essere moltiplicate oltre più del necessario". In altre parole, gli alberi decisionali devono aggiungere complessità solo se necessario, poiché la spiegazione più semplice è spesso la migliore. Per ridurre la complessità e prevenire l'overfitting, di solito si utilizza il criterio di potatura (pruning), un processo che rimuove i rami che si dividono su caratteristiche di scarsa importanza. La stima del modello può quindi essere valutata attraverso il processo di convalida incrociata.
Un altro modo in cui gli alberi decisionali possono mantenere la loro precisione è formando un ensemble tramite un algoritmo di random forest: questo classificatore prevede risultati più accurati, in particolare quando i singoli alberi non sono correlati tra loro.
L'algoritmo di Hunt, sviluppato negli anni '60 per modellare l'apprendimento umano in psicologia, costituisce la base di molti algoritmi di albero decisionale popolari, tra i quali:
- ID3: lo sviluppo di ID3, abbreviazione di "Iterative Dichotomiser 3", viene accreditato a Ross Quinlan. Questo algoritmo sfrutta l'entropia e l'information gain come metriche per valutare le suddivisioni candidate. Alcune delle ricerche di Quinlan del 1986 su questo algoritmo sono disponibili qui.
- C4.5: questo algoritmo è considerato un'iterazione successiva di ID3, anch'esso sviluppato da Quinlan. Può utilizzare l'information gain o il gain ratio per valutare i punti di divisione all'interno degli alberi decisionali.
- CART: il termine CART è l'abbreviazione di "classification and regression trees" (alberi di classificazione e regressione) ed è stato introdotto da Leo Breiman. Questo algoritmo utilizza tipicamente l'indice di eterogeneità di Gini per identificare l'attributo ideale su cui effettuare la divisione. L'indice di Gini misura la frequenza con cui un attributo scelto a caso viene classificato in modo errato. Quando si valuta utilizzando questo indice, un valore più basso è più ideale.
Sebbene esistano diversi modi per selezionare l'attributo migliore in ogni nodo, ci sono due metodi che fungono da criterio di suddivisione popolare per i modelli di albero decisionale, ovvero l'information gain e l'indice di eterogeneità di Gini, che aiutano a valutare la qualità di ogni condizione di test e quanto sarà in grado di classificare i campioni in una classe.
Senza parlare di entropia, è difficile spiegare l'information gain. L'entropia è un concetto derivante dalla teoria dell'informazione che misura l'impurità dei valori del campione. È definita con dalla seguente formula, dove:
I valori di entropia possono essere compresi tra 0 e 1. Se tutti i campioni nel set di dati S appartengono a una classe, allora l'entropia sarà uguale a zero. Se la metà dei campioni è classificata in una classe e l'altra metà in un'altra, l'entropia sarà massima, cioè 1. Per selezionare la funzionalità migliore su cui suddividere e trovare l'albero decisionale ottimale, è necessario utilizzare l'attributo con meno entropia.
L'information gain rappresenta la differenza di entropia prima e dopo una divisione su un dato attributo. L'attributo con il maggiore information gain produrrà la migliore suddivisione in quanto sta ottenendo i migliori risultati nella classificazione dei dati di formazione in base alla classificazione target. L'acquisizione di informazioni è solitamente rappresentata con la seguente formula,
dove
Esaminiamo un esempio per consolidare questi concetti. Immaginiamo di avere il seguente set di dati arbitrario:
Per questo set di dati, l'entropia è 0,94, e può essere calcolata trovando la proporzione di giorni in cui "Gioca a tennis" è "Sì", ovvero 9/14, e la proporzione di giorni in cui "Gioca a tennis" è "No", cioè 5/14. Questi valori possono essere inseriti nella formula dell'entropia riportata in precedenza.
Entropia (Tennis) = -(9/14) log2(9/14) – (5/14) log2 (5/14) = 0,94
Possiamo quindi calcolare l'information gain per ciascuno degli attributi individualmente. Ad esempio, l'information gain per l'attributo "Umidità" è il seguente:
Gain (Tennis, Umidità) = (0,94)-(7/14)*(0,985) – (7/14)*(0,592) = 0,151
Riassumendo,
- 7/14 rappresenta la proporzione di valori in cui l'umidità equivale a "alta" rispetto al numero totale di valori di umidità. In questo caso, il numero di valori in cui l'umidità equivale a "alta" è uguale al numero di valori in cui l'umidità equivale a "normale".
- 0,985 è l'entropia quando Umidità = "alta"
- 0,59 è l'entropia quando Umidità = "normale"
Ripetere il calcolo per l'information gain per ogni attributo nella tabella precedente e selezionare l'attributo con l'information gain più elevato come primo punto di divisione nell'albero decisionale. In questo caso, Outlook produce il massimo information gain. Da lì, il processo viene ripetuto per ogni albero secondario.
L'indice di eterogeneità di Gini è la probabilità di classificare erroneamente un punto dati casuale nel set di dati se venisse etichettato in base alla distribuzione delle classi del set di dati. In modo simile all'entropia, se il set S è puro (cioè appartenente ad una classe) allora la sua impurità è zero. Questo è indicato dalla seguente formula:
Sebbene gli alberi decisionali possano essere utilizzati in molteplici di casi d'uso, altri algoritmi in genere li superano. Detto questo, gli alberi decisionali sono comunque utili per le attività di data mining e knowledge discovery. Di seguito approfondiremo i vantaggi e le sfide principali dell'utilizzo degli alberi decisionali:
IBM Granite è la nostra famiglia di modelli AI aperti, efficienti e affidabili, su misura per le aziende e ottimizzati per scalare le applicazioni di AI. Esplora le opzioni di linguaggio, codice, serie temporali e guardrail.
Abbiamo intervistato 2.000 organizzazioni in merito alle loro iniziative di AI per scoprire cosa funziona, cosa non funziona e come giocare d'anticipo.
Esplora gli approcci di apprendimento supervisionato, come le macchine a vettori di supporto e i classificatori probabilistici.
Impara i concetti fondamentali e sviluppa le tue competenze con laboratori pratici, corsi, progetti guidati, prove e molto altro.
Scopri come scegliere il foundation model di AI più adatto al tuo caso d'uso.
Addestra, convalida, adatta e implementa le funzionalità di AI generativa, foundation model e machine learning con IBM watsonx.ai, uno studio aziendale di nuova generazione per builder AI. Crea applicazioni AI in tempi ridotti e con una minima quantità di dati.
Metti l'AI al servizio della tua azienda grazie all'esperienza leader di settore e alla gamma di soluzioni di IBM nel campo dell'AI.
Reinventa i flussi di lavoro e le operazioni critiche aggiungendo l'AI per massimizzare le esperienze, il processo decisionale in tempo reale e il valore di business.