La magia dell'Ensemble Learning

Ciao, Habr! Invitiamo Data Engineer e specialisti di Machine Learning a una lezione dimostrativa gratuita «Portare i modelli ML in un ambiente industriale attraverso esempi di raccomandazioni online». Pubblicheremo anche un articolo di Luca Monno — Head of Financial Analytics presso CDP SpA.

Uno dei metodi di machine learning più utili e semplici è l'Ensemble Learning. L'Ensemble Learning è un metodo alla base di XGBoost, Bagging, Random Forest e molti altri algoritmi.

Su Towards Data Science ci sono molti articoli interessanti, ma ne ho scelti due (il primo e seconda), che mi sono piaciuti di più. Allora perché scrivere un altro articolo sull'EL? Perché voglio mostrarvi, come funziona con un esempio semplice, che mi ha fatto capire che non c'è alcuna magia qui.

Quando ho visto per la prima volta l'EL in azione (lavorando con alcuni modelli di regressione molto semplici) non riuscivo a credere ai miei occhi e ricordo ancora il professore che mi ha insegnato questo metodo.

Avevo due modelli diversi (due algoritmi di apprendimento deboli) con punteggi out-of-sample R² rispettivamente pari a 0,90 e 0,93. Prima di guardare il risultato, pensavo che avrei ottenuto un R² compreso tra i due valori iniziali. In altre parole, credevo che l'EL potesse essere usato per far sì che il modello funzionasse non peggio del peggiore, ma nemmeno così bene come avrebbe potuto funzionare il miglior modello.

Con mia grande sorpresa, i risultati della semplice media delle previsioni hanno dato un R² di 0,95. 

Inizialmente ho cominciato a cercare un errore, ma poi ho pensato che potesse nascondersi una sorta di magia!

Che cos'è l'Ensemble Learning

Con l'EL è possibile unire le previsioni di due o più modelli per ottenere un modello più affidabile e performante. Esistono molte metodologie per lavorare con ensemble di modelli. Qui tratterò le due più utili per fornire una panoramica generale.

Utilizzando regressione si possono mediare le prestazioni dei modelli esistenti.

Utilizzando classificazione si possono consentire ai modelli di scegliere le etichette. L'etichetta selezionata più frequentemente sarà quella scelta dal nuovo modello.

Perché l'EL funziona meglio

La principale ragione per cui l'EL funziona meglio è che ogni previsione ha un errore (lo sappiamo dalla teoria della probabilità); combinare due previsioni può aiutare a ridurre l'errore e, di conseguenza, a migliorare le prestazioni (RMSE, R², ecc.).

Nella seguente diagramma si può vedere come due algoritmi deboli funzionano con un set di dati. Il primo algoritmo ha un coefficiente angolare maggiore di quanto necessario, mentre il secondo è quasi pari a zero (forse a causa di un'eccessiva regolarizzazione). Ma l'ensemble mostra risultati molto migliori. 

Se si guarda al valore di R², il primo e il secondo algoritmo di apprendimento avranno rispettivamente valori pari a -0.01¹ e 0.22, mentre per l'ensemble sarà 0.73.

La magia dell'Ensemble Learning

Ci sono molte ragioni per cui un algoritmo può risultare un cattivo modello anche in un esempio così basilare come questo: forse si è deciso di utilizzare la regolarizzazione per evitare l'overfitting, o si è scelto di non escludere alcune anomalie, oppure si è usata la regressione polinomiale e si è selezionato un grado non corretto (ad esempio, si è usato un polinomio di secondo grado, mentre nei dati di test è visibile un'evidente asimmetria, per la quale sarebbe stato meglio un grado superiore).

Quando l'EL funziona meglio

Consideriamo due algoritmi di apprendimento che lavorano con gli stessi dati.

La magia dell'Ensemble Learning

Qui si può vedere che la combinazione di due modelli non ha migliorato significativamente le prestazioni. Inizialmente, per i due algoritmi di apprendimento i valori di R² erano -0.37 e 0.22, rispettivamente, mentre per l'ensemble è risultata -0.04. Quindi, il modello EL ha ottenuto un valore medio delle prestazioni.

Tuttavia, tra questi due esempi c'è una grande differenza: nel primo esempio gli errori dei modelli erano negativamente correlati, mentre nel secondo erano positivamente correlati (i coefficienti dei tre modelli non sono stati valutati, ma sono stati semplicemente scelti dall'autore come esempio).

Pertanto, l'Ensemble Learning può essere utilizzato per migliorare l'equilibrio tra bias e varianza in qualsiasi situazione, ma quando gli errori dei modelli non sono positivamente correlati, l'uso dell'EL può portare a un aumento delle prestazioni.

Modelli omogenei e eterogenei

Molto spesso, l'EL viene utilizzato su modelli omogenei (come in questo esempio o in un bosco casuale), ma in realtà puoi combinare diversi modelli (regressione lineare + rete neurale + XGBoost) con diversi set di variabili esplicative. Probabilmente questo porterà a errori non correlati e a un aumento delle prestazioni.

Confronto con la diversificazione del portafoglio

L'EL funziona per analogia con la diversificazione nella teoria del portafoglio, ma è meglio per noi. 

Nella diversificazione cerchi di ridurre la varianza delle tue metriche investendo in azioni non correlate. Un portafoglio azionario ben diversificato darà un rendimento migliore del peggiore singolo titolo, ma mai migliore del migliore.

Citando Warren Buffett: 

"La diversificazione è una protezione dall'ignoranza; per chi non sa quello che sta facendo, essa [diversificazione] ha molto poco senso."

Nell'apprendimento automatico, l'EL aiuta a ridurre la varianza del tuo modello, ma ciò può portare alla creazione di un modello con prestazioni complessive migliori rispetto al miglior modello iniziale.

Riassumiamo

Combinare diversi modelli in uno è un metodo relativamente semplice che può portare a risolvere il problema del bias della varianza e a un aumento delle prestazioni.

Se hai due o più modelli che funzionano bene, non scegliere tra di essi: usali tutti (ma con cautela)!

È interessante svilupparsi in questa direzione? Iscriviti a una Demo-lezione gratuita «Portare i modelli ML in un ambiente industriale attraverso esempi di raccomandazioni online» e partecipa a un incontro online con Andrey Kuznetsov — Machine Learning Engineer in Mail.ru Group.

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster