Connect with us

Che cos’è l’Apprendimento Ensemble?

IA 101

Che cos’è l’Apprendimento Ensemble?

mm

Una delle tecniche di apprendimento automatico più potenti è l’apprendimento ensemble. Ensemble learning è l’uso di più modelli di apprendimento automatico per migliorare l’affidabilità e l’accuratezza delle previsioni. Eppure, come l’uso di più modelli di apprendimento automatico porta a previsioni più accurate? Quali tecniche vengono utilizzate per creare modelli di apprendimento ensemble? Esploreremo la risposta a queste domande, esaminando il ragionamento alla base dell’uso dei modelli ensemble e i principali modi di creare modelli di apprendimento ensemble.

Che cos’è l’Apprendimento Ensemble?

In semplice, l’apprendimento ensemble è il processo di addestramento di più modelli di apprendimento automatico e combinazione dei loro output. I modelli diversi vengono utilizzati come base per creare un modello predittivo ottimale. Combinare un insieme diversificato di modelli di apprendimento automatico individuali può migliorare la stabilità del modello complessivo, portando a previsioni più accurate. I modelli di apprendimento ensemble sono frequentemente più affidabili dei modelli individuali e, di conseguenza, spesso si classificano primi in molte competizioni di apprendimento automatico.

Esistono diverse tecniche che un ingegnere può utilizzare per creare un modello di apprendimento ensemble. Le tecniche di apprendimento ensemble semplici includono cose come la media dei output dei diversi modelli, mentre ci sono anche metodi più complessi e algoritmi sviluppati appositamente per combinare le previsioni di molti modelli di base.

Perché Utilizzare Metodi di Addestramento Ensemble?

I modelli di apprendimento automatico possono essere diversi tra loro per una varietà di motivi. Diversi modelli di apprendimento automatico possono operare su diversi campioni dei dati di popolazione, diverse tecniche di modellazione possono essere utilizzate e una diversa ipotesi può essere utilizzata.

Immagina di giocare a un gioco di trivia con un grande gruppo di persone. Se sei in una squadra da solo, ci saranno sicuramente alcuni argomenti di cui hai conoscenza e molti argomenti di cui non hai conoscenza. Ora supponi di giocare in una squadra con altre persone. Come te, avranno alcune conoscenze riguardanti le loro specialità e nessuna conoscenza di altri argomenti. Tuttavia, quando le vostre conoscenze vengono combinate, avete previsioni più accurate per più campi e il numero di argomenti di cui la vostra squadra non ha conoscenza si riduce. Questo è lo stesso principio che sta alla base dell’apprendimento ensemble, combinando le previsioni dei diversi membri della squadra (modelli individuali) per migliorare l’accuratezza e minimizzare gli errori.

Gli statistici hanno dimostrato che quando a una folla di persone viene chiesto di indovinare la risposta giusta per una domanda data con una gamma di risposte possibili, tutte le loro risposte formano una distribuzione di probabilità. Le persone che conoscono realmente la risposta giusta sceglieranno la risposta giusta con fiducia, mentre le persone che sceglierebbero risposte sbagliate distribuiranno le loro ipotesi acrosso la gamma di risposte possibili sbagliate. Tornando all’esempio del gioco di trivia, se tu e i tuoi due amici conoscete la risposta giusta è A, tutti e tre voterete A, mentre le altre tre persone della vostra squadra che non conoscono la risposta sono probabili a indovinare in modo errato B, C, D o E. Il risultato è che A ha tre voti e le altre risposte hanno probabilmente solo uno o due voti massimo.

Tutti i modelli hanno alcuni errori. Gli errori per un modello saranno diversi dagli errori prodotti da un altro modello, poiché i modelli stessi sono diversi per i motivi descritti sopra. Quando tutti gli errori vengono esaminati, non saranno raggruppati intorno a una risposta o un’altra, ma saranno sparsi intorno. Le ipotesi errate sono essenzialmente distribuite su tutte le risposte possibili sbagliate, annullandosi a vicenda. Nel frattempo, le ipotesi corrette dei diversi modelli saranno raggruppate intorno alla risposta giusta. Quando vengono utilizzati metodi di addestramento ensemble, la risposta giusta può essere trovata con maggiore affidabilità.

Metodi di Addestramento Ensemble Semplici

I metodi di addestramento ensemble semplici di solito coinvolgono semplicemente l’applicazione di tecniche di riassunto statistico, come la determinazione della moda, della media o della media ponderata di un insieme di previsioni.

La moda si riferisce all’elemento più frequentemente presente all’interno di un insieme di numeri. Per ottenere la moda, i modelli di apprendimento individuali restituiscono le loro previsioni e queste previsioni vengono considerate voti per la previsione finale. La determinazione della media delle previsioni viene effettuata semplicemente calcolando la media aritmetica delle previsioni, arrotondata al numero intero più vicino. Infine, una media ponderata può essere calcolata assegnando pesi diversi ai modelli utilizzati per creare previsioni, con i pesi che rappresentano l’importanza percepita di quel modello. La rappresentazione numerica della previsione di classe viene moltiplicata per un peso da 0 a 1,0, le previsioni ponderate individuali vengono quindi sommate e il risultato viene arrotondato al numero intero più vicino.

Metodi di Addestramento Ensemble Avanzati

Esistono tre tecniche di addestramento ensemble avanzate principali, ciascuna delle quali è progettata per affrontare un tipo specifico di problema di apprendimento automatico. Le tecniche di “bagging” vengono utilizzate per ridurre la varianza delle previsioni di un modello, con varianza che si riferisce a quanto l’esito delle previsioni differisce quando si basa sulla stessa osservazione. Le tecniche di “boosting” vengono utilizzate per combattere il bias dei modelli. Infine, la “stacking” viene utilizzata per migliorare le previsioni in generale.

I metodi di apprendimento ensemble possono essere generalmente divisi in due gruppi diversi: metodi sequenziali e metodi ensemble paralleli.

I metodi ensemble sequenziali prendono il nome “sequenziali” perché i modelli di base vengono generati sequenzialmente. Nel caso dei metodi sequenziali, l’idea essenziale è che la dipendenza tra i modelli di base viene sfruttata per ottenere previsioni più accurate. Gli esempi mal etichettati hanno i loro pesi regolati mentre gli esempi correttamente etichettati mantengono gli stessi pesi. Ogni volta che viene generato un nuovo learner, i pesi vengono modificati e l’accuratezza (sperabilmente) migliora.

In contrasto con i modelli ensemble sequenziali, i metodi ensemble paralleli generano i modelli di base in parallelo. Quando si esegue l’apprendimento ensemble parallelo, l’idea è di sfruttare il fatto che i modelli di base sono indipendenti, poiché il tasso di errore generale può essere ridotto mediando le previsioni dei learner individuali.

I metodi di addestramento ensemble possono essere omogenei o eterogenei. La maggior parte dei metodi di apprendimento ensemble è omogenea, il che significa che utilizzano un unico tipo di modello di base/algoritmo. In contrasto, gli ensemble eterogenei utilizzano algoritmi di apprendimento diversi, diversificando e variando gli learner per garantire che l’accuratezza sia il più alta possibile.

Esempi di Algoritmi di Apprendimento Ensemble

Visualizzazione dell’ensemble boosting. Foto: Sirakorn via Wikimedia Commons, CC BY SA 4.0, (https://commons.wikimedia.org/wiki/File:Ensemble_Boosting.svg)

Gli esempi di metodi ensemble sequenziali includono AdaBoost, XGBoost e Gradient tree boosting. Questi sono tutti modelli di boosting. Per questi modelli di boosting, l’obiettivo è convertire i learner deboli e scarsamente performanti in learner più potenti. Modelli come AdaBoost e XGBoost iniziano con molti learner deboli che si eseguono solo leggermente meglio di una ipotesi casuale. Man mano che il training continua, vengono applicati pesi ai dati e regolati. Le istanze che sono state classificate in modo errato dai learner nelle fasi di addestramento precedenti vengono date più peso. Dopo che questo processo viene ripetuto per il numero desiderato di round di addestramento, le previsioni vengono unite attraverso una somma ponderata (per i compiti di regressione) e un voto ponderato (per i compiti di classificazione).

Il processo di apprendimento bagging. Foto: SeattleDataGuy via Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Bagging.png)

Un esempio di modello ensemble parallelo è un classificatore Random Forest e Random Forest è anche un esempio di tecnica di bagging. Il termine “bagging” deriva da “bootstrap aggregation”. I campioni vengono presi dal set di dati totale utilizzando una tecnica di campionamento chiamata “bootstrap sampling”, che vengono utilizzati dai modelli di base per effettuare previsioni. Per i compiti di classificazione, i output dei modelli di base vengono aggregati utilizzando il voto, mentre vengono mediati insieme per i compiti di regressione. Random Forest utilizza alberi decisionali individuali come loro modelli di base e ogni albero nell’ensemble viene costruito utilizzando un campione diverso del set di dati. Un subset casuale di funzionalità viene anche utilizzato per generare l’albero. Ciò porta a alberi decisionali individuali altamente casualizzati, che vengono tutti combinati insieme per fornire previsioni affidabili.

Visualizzazione dell’ensemble stacking. Foto: Supun Setunga via Wikimedia Commons, CC BY S.A 4.0 (https://commons.wikimedia.org/wiki/File:Stacking.png)

In termini di tecniche di ensemble stacking, più modelli di regressione o classificazione vengono combinati insieme attraverso un modello di livello superiore, meta-modello. I modelli di base di livello inferiore vengono addestrati alimentandoli con l’intero set di dati. I output dei modelli di base vengono quindi utilizzati come funzionalità per addestrare il meta-modello. I modelli di ensemble stacking sono frequentemente eterogenei.

Blogger e programmatore con specializzazioni in Machine Learning e Deep Learning argomenti. Daniel spera di aiutare gli altri a utilizzare il potere dell'AI per il bene sociale.