approfondimento

Random Forest e Tree Bag, cosa sono e come sono usati



Indirizzo copiato

Sono due algoritmi di apprendimento automatico che fanno leva su più alberi decisionali per migliorare le prestazioni di un albero specifico. Sono diversi e vanno considerati l’uno estensione dell’altro e, pure apportando vantaggi indiscutibili, cozzano contro limiti e difficoltà

Pubblicato il 15 nov 2023



Random forest Tree bag

Gli algoritmi di apprendimento Random Forest e Tree Bag non sono la medesima cosa e, in realtà, il primo può essere considerato una versione evoluta dell’altro.

Per capire meglio cos’è l’algoritmo Random Forest è utile definire il Tree Bag, noto anche con il nome di Bagged Trees of Bootstrp Aggregation e che, di fatto, è un metodo di apprendimento che usa più alberi decisionali addestrati ognuno su un set casuale di dati.

Parallelamente, l’algoritmo Random Forest è estensione del bagging e, al posto di usare tutte le variabili che hanno contribuito a costruire gli alberi decisionali, si basa su un solo sottoinsieme casuale di variabili al fine di ridurre la varianza del modello stesso.

Un discorso astratto e complesso che merita di essere sviscerato in profondità, iniziando dal concetto stesso di albero decisionale.

Cosa sono gli alberi decisionali

Usati nel Machine learning, gli alberi decisionali (Decision Tree) sono degli algoritmi che rientrano nell’ apprendimento supervisionato e vengono usati per:

  • le attività di classificazione: gli alberi determinano se un evento atteso si è verificato o no
  • le attività di regressione: processi statistici che permettere di prevedere (stimandole) le relazioni tra variabili.

Immagine che contiene diagramma, cerchio, linea, schermataDescrizione generata automaticamente

L’obiettivo della regressione e della classificazione è quello di individuare relazioni tra i dati di input che permettano di restituire output corretti.

Gli alberi decisionali iniziano da una radice (Root node), si diramano lungo sotto-nodi (Interal node) e terminano con i Leaf node (i nodi foglia) che, tipicamente, rappresentano il risultato finale dell’intero albero decisionale.

Un albero decisionale cerca di trovare il modo migliore per suddividere i dati usando metriche appropriate.

Il nodo radice rappresenta un intero set di dati ed è il punto da cui l’albero viene avviato. I nodi interni rappresentano funzionalità che dividono i dati in sottoinsiemi secondo metriche e specifiche peculiari e, a seguire, i nodi foglia sono quei sottoinsiemi di dati che non possono essere suddivisi ulteriormente.

Non è del tutto fuori luogo tracciare un paragone tra un albero decisionale e un diagramma di flusso, tenendo presente che, dal nodo radice, si sviluppano più nodi decisionali (i nodi interni) che affrontano quesiti dai quali derivano più risposte (i nodi finali, detti “foglie”).

Nell’ambito del Machine learning, gli alberi decisionali costituiscono un metodo efficace per prendere decisioni, giacché consentono di affrontare un problema in ogni sua sfaccettatura e valutarne i possibili risultati.

Cosa sono gli algoritmi Random Forest e Tree Bag

Random Forest è un algoritmo di Machine learning che unisce i risultati restituiti da diversi alberi decisionali al fine di avere un unico risultato. Un algoritmo che gestisce sia i problemi di classificazione sia quelli di regressione e questo, senza dubbio, ne ha favorito la diffusione e l’uso.

La valutazione di tutti i risultati possibili di un problema consente l’analisi delle conseguenze di ogni singola decisione ed è un atout sia per i processi decisionali di un’organizzazione sia per gli sviluppatori di applicazioni.

Potere avere una rappresentazione visiva delle possibilità che si prospettano trasmette chiarezza a qualsiasi livello o compartimento aziendale.

Il modello Random Forest è quindi una struttura formata da più alberi decisionali dai quali si snodano quesiti che formano i nodi della struttura stessa e che hanno come obiettivo quello di trovare il modo migliore per suddividere i dati. Queste strutture sono di norma addestrate mediante l’algoritmo CART (Classification and Regression Tree) e tramite l’uso di metriche, tra le quali:

  • l’impurità di Gini: misura la frequenza con la quale un elemento scelto in modo casuale può essere etichettato in modo errato se l’etichettatura fosse anch’essa casuale. In termini semplici e pratici, l’impurità di Gini indica quale probabilità esiste di classificare in modo sbagliato dei dati a seconda delle informazioni presenti in un nodo. Più il risultato tende allo zero, più le previsioni possono essere considerate attendibili
  • l’errore quadratico medio: misura usata in statistica per valutare le discrepanze tra i valori stimati e quelli osservati
  • il guadagno di informazioni: in parole semplici, il guadagno di informazioni stabilisce quanto una caratteristica di un dato sia utile per prevedere l’output. Viene calcolato con la differenza tra l’entropia di un nodo genitore e quella media dei nodi figli
  • l’entropia: quantifica l’impurità (o l’incertezza) in un insieme di dati.

Queste metriche servono a valutare la qualità della suddivisione dei dati in sottoinsiemi.

Qui si collocano gli algoritmi Tree Bag, metodo d’insieme che migliora la generalizzazione. Costruisce diversi alberi per calcolare la media delle previsioni che ne risultano, ricorrendo a un campione scelto casualmente all’interno di un set di dati usati per l’addestramento. Questo campione viene selezionato con sostituzione, ossia con la possibilità che i dati vegano scelti più di una volta e, in base all’attività che deve essere svolta (classificazione o regressione), la media delle previsioni prodotte fornisce una stima più accurata. Ciò è coerente con la riduzione della varianza di un set di dati rumoroso. La varianza misura il grado di variabilità di valori: in altre parole, indica di quanto i dati di un set si discostano dal valore medio.

Come è evidente, Random Forest e Tree Bag sono due algoritmi diversi.

Come funziona Random Forest

Un algoritmo Random Forest necessita l’impostazione di tre parametri principali. Sono la dimensione dei nodi, il numero di strutture ad albero e il numero di caratteristiche campionate: Immagine che contiene schermata, designDescrizione generata automaticamente

dopo avere regolato questi tre parametri si può procedere con l’addestramento ed è possibile trovare risposte a problemi di regressione o di classificazione.

In sintesi, l’algoritmo Random Forest è una versione evoluta del bagging e fa leva sulla casualità per creare un insieme di alberi decisionali più accurati, perché meno correlati tra loro.

Vantaggi e svantaggi di Random Forest

L’uso dell’algoritmo Random Forest per problemi di classificazione o regressione non è esente da criticità e porta con sé alcuni vantaggi. Cominciando da questi ultimi:

  • minore rischio di overfitting. In statistica (e in informatica), l’overfitting si verifica quando un modello complesso si adatta al campione di dati a causa dell’eccesso dei parametri rispetto alle osservazioni effettuate e questo può premiare modelli del tutto sbagliati. Quando, in un Random Forest, c’è un numero consistente di alberi decisionali il classificatore non si adatta al modello
  • conferisce flessibilità. Questo ne fa un metodo usato dai Data scientist, anche in virtù del fatto che può essere impiegato sia in attività di classificazione sia di regressione
  • aiuta a determinare le caratteristiche: Random Forest rende più semplice la valutazione dell’importanza delle variabili, osservando quando l’esclusione o l’inclusione di una di queste inficia sulla precisione del modello.

Gli svantaggi non sono soltanto interpretativi. È vero che la previsione fornita da un singolo albero decisionale è più facile da interpretare rispetto a una foresta di alberi ma, in aggiunta, occorre considerare che:

  • gli algoritmi Random Forest richiedono più risorse perché elaborano una quantità maggiore di dati
  • richiedono tempo proprio perché, per fornire previsioni più accurate, devono calcolare i dati per ogni singolo albero decisionale.

La diffusione degli algoritmi Random Forest è comunque elemento valido per comprendere come, nell’eterno rapporto tra vantaggi e svantaggi, siano i primi a prevalere.

Le applicazioni degli algoritmi Random Forest

Deputati a supportare l’assunzione di decisioni migliori, gli algoritmi Random Forest sono attualmente impiegati in diversi settori, tra i quali spicca la finanza che ne fa uso per la valutazione dei clienti ad alto rischio e per rilevare le frodi.

Il fatto che un algoritmo serva la finanza lascia poco sorpresi, soprattutto se utile a restringere il campo davanti a un numero elevato di scenari plausibili.

Trovano una loro applicazione anche nella sanità, laddove permettono – per esempio – l’annotazione di sequenze geniche o la scoperta di biomarcatori, consentendo così alla farmacopea di essere compresa meglio nella misura in cui si dimostra abile nelle terapie.

Random Forest è usato anche nell’eCommerce e aiuta a prevedere le vendite.

Articoli correlati

Articolo 1 di 3