L’apprendimento supervisionato (supervised learning) nella Data Science è oggi il sotto ramo più comune dell’apprendimento automatico.
In genere, i nuovi professionisti della machine learning inizieranno il loro viaggio nel campo della data science facendo la conoscenza degli algoritmi di apprendimento supervisionato.
Pertanto, il primo di queste tre serie di post circa l’apprendimento automatico riguarderà proprio l’apprendimento supervisionato.
Machine learning supervisionato: di cosa si tratta?
Gli algoritmi di apprendimento automatico supervisionati sono progettati per apprendere con l’esempio. Il nome di apprendimento “supervisionato”, del resto, deriva proprio dall’idea che addestrare questo tipo di algoritmo è come avere un insegnante che supervisioni l’intero processo (l’essere umano).
Durante il training di un algoritmo di apprendimento supervisionato, quindi, i dati saranno costituiti da input associati dalla macchina agli output corretti che ci si aspetta da questa. L’algoritmo, dunque, cercherà modelli nei dati correlati agli output desiderati e “richiesti” dall’analista nel campo nel quale sta operando.
Dopo l’addestramento, inoltre, un algoritmo di apprendimento supervisionato acquisirà nuovi input invisibili e determinerà quale etichetta dare loro; i nuovi input, infine, verranno classificati in base ai dati di addestramento imparati precedentemente.
L’obiettivo di un modello di apprendimento supervisionato è, dunque, prevedere l’“etichetta” corretta da dare come risposta ai dati di input appena presentati.
Un esempio di machine learning supervisionato
Un esempio chiaro di apprendimento automatico supervisionato potrebbe essere insegnare a una macchina a riconoscere l’immagine di un cane. Addestreresti la macchina mostrandole immagini di varie razze di cani, etichettati come “cani” rispetto alle immagini di altri animali, es. etichettati come “gatti”, “topi” ecc.
Quando la macchina si imbatte nell’immagine di un cane, dunque, lo riconoscerebbe come tale in base ai dati su cui era stata addestrata. E lo fa calcolando le caratteristiche specifiche dell’immagine di input e confrontandole con le caratteristiche di immagini o oggetti etichettati in precedenza, restituendo l’output atteso.
Vantaggi e svantaggi dell’apprendimento supervisionato
Un vantaggio dell’apprendimento supervisionato – tanto che viene promosso per chiunque voglia formarsi nella data science – è che il sistema può essere controllato meglio e l’accuratezza in genere aumenta con il numero di esempi etichettati o modelli forniti nei vari training.
D’altra parte, saranno sempre gli analisti a dover etichettare gli esempi o gli schemi da utilizzare per la formazione, e ciò può richiedere molto tempo e lavoro. Per tale motivo, sussistono ancora dei limiti intrinsechi alla scalabilità con questo approccio.
Gli altri tipi di apprendimento automatico
L’apprendimento automatico supervisionato è solo uno dei 3 tipi di apprendimento automatico nel machine learning.
In questo specifico campo della data science, infatti, sono disponibili più algoritmi che possono essere utilizzati per modellare i dati a seconda del caso d’uso. La maggior parte degli esperimenti riguarda 3 tipi di machine learning:
- apprendimento supervisionato;
- apprendimento non supervisionato;
- apprendimento per rinforzo.
– Apprendimento non supervisionato
A differenza dell’apprendimento supervisionato che stiamo trattando oggi, nell’apprendimento non supervisionato la macchina non è fornita di esempi etichettati o di schemi precedenti su cui basare l’analisi dei dati immessi. La macchina deve scoprire schemi e trarre inferenze da sola, senza avere le risposte corrette a priori. Classificherà o raggrupperà i dati, dunque, scoprendo la somiglianza delle funzionalità.
– Apprendimento per rinforzo
Nell’apprendimento per rinforzo, infine, la macchina impara per tentativi ed errori, dalle conseguenze delle sue azioni e da successive scelte. Quando viene intrapresa un’azione, infatti, il successo del risultato viene valutato in punteggio positivo o negativo. L’algoritmo cerca di ricevere punteggi positivi e il modello viene addestrato di conseguenza su feedback continui (rinforzo).
Ciascuno di questi sistemi di apprendimento presenta vantaggi distinti in diverse situazioni, a seconda della natura del problema e dell’output desiderato. Puoi scoprire tutti i tipi di apprendimento automatico negli altri approfondimenti dedicati del blog.
Tutte le fasi del supervised learning
Il supervised learning è, dunque, un approccio di apprendimento automatico definito dall’uso di set di dati etichettati. Questi set di dati sono progettati per addestrare o “supervisionare” gli algoritmi nella classificazione dei dati o nella previsione accurata dei risultati. Utilizzando input e output etichettati, quindi, il modello può misurare la sua precisione e apprendere nel tempo. Come funziona l’apprendimento supervisionato, precisamente? Scopriamo insieme le varie fasi del supervised learning.
1) Preparazione dell’addestramento
Come abbiamo visto, nell’apprendimento supervisionato a ogni insieme di dati di input è associato il corretto output. In questa fase, quindi, i dati sono insieme di caratteristiche esatte e precise assegnate con la supervisione umana.
2) Divisione in test
Una volta decisa la raccolta massiva dei dati con cui si acquisiscono sia le caratteristiche sia il corrispondente e corretto output della macchina, si procede alla divisione del dataset completo in training e test specifici.
3) Addestramento dell’algoritmo sul training dataset
A questo punto, si procede all’addestramento dell’algoritmo sulla base del training specifico designato. Tale fase è la più cruciale dell’intero processo, poiché si apprendono proprio le relazioni tra input e output corretti e i migliori approcci per sviluppare al meglio questo sistema. Non si tratta solo di un singolo addestramento ma, al contrario, di cilci di apprendimento e di conferma o validazione chiamati “cross validation”.
4) Test finale
A questo punto si procede al test finale, nel quale avviene una somministrazione di input ignoti durante l’addestramento. Si continua poi con un confronto tra input e output per valutare, infine, la qualità della comprensione e dell’addestramento della machine learning con diverse metriche. Considerato il contesto, se l’errore è abbastanza basso il training può considerarsi concluso e si può passare alla produzione, ovvero la somministrazione di nuovi input alla macchina per ampliare le relazioni di dati apprese nel corso dell’addestramento.
I tipi di apprendimento automatico supervisionato
L’apprendimento supervisionato può essere suddiviso in due sottocategorie: classificazione e regressione. Vediamole insieme.
– Classificazione
I problemi di classificazione utilizzano un algoritmo per assegnare accuratamente i dati del test a categorie specifiche, come separare le mele dalle arance. Oppure, nel mondo reale, gli algoritmi di apprendimento supervisionato possono essere utilizzati per classificare lo spam in una cartella separata dalla tua casella di posta. Classificatori lineari, macchine vettoriali di supporto, alberi decisionali e foreste casuali sono tutti tipi comuni di algoritmi di classificazione.
– Regressione
La regressione è un altro metodo di apprendimento supervisionato che utilizza un algoritmo per comprendere la relazione tra variabili dipendenti e indipendenti. I modelli di regressione sono utili per prevedere valori numerici basati su diversi punti dati, come le proiezioni dei ricavi di vendita per una determinata attività. Alcuni algoritmi di regressione popolari sono la regressione lineare, la regressione logistica e la regressione polinomiale.
Qual è la differenza tra machine learning supervisionato e non supervisionato?
La principale distinzione tra i due approcci è l’uso di set di dati etichettati. Per dirla semplicemente, l’apprendimento supervisionato utilizza dati di input e output etichettati, mentre un algoritmo di apprendimento non supervisionato non lo fa.
Nell’apprendimento supervisionato, quindi, l’algoritmo “impara” dal set di dati di addestramento effettuando in modo automatico previsioni sui dati e regolando la risposta corretta. Sebbene i modelli di apprendimento supervisionato tendano ad essere più accurati rispetto ai modelli di apprendimento non supervisionato, richiedono comunque l’intervento umano in anticipo per etichettare i dati in modo appropriato. Ad esempio, un modello di apprendimento supervisionato può prevedere la durata del tuo tragitto giornaliero in base all’ora del giorno, alle condizioni meteorologiche e così via. Ma prima, dovrai allenarlo perché sappia che con un tempo prevalentemente piovo il tuo tempo di guida si allunga.
I modelli di apprendimento non supervisionato, al contrario, lavorano da soli per scoprire la struttura intrinseca dei dati senza etichetta. Si noti che richiedono ancora un intervento umano per la convalida delle variabili di output. Ad esempio, un modello di apprendimento non supervisionato può identificare che gli acquirenti online spesso acquistano gruppi di prodotti contemporaneamente. Tuttavia, un analista di dati (data analyst) dovrebbe confermare che ha senso per un motore di raccomandazione raggruppare i dati che risultano dall’elaborazione.
L’apprendimento supervisionato è la sottocategoria più semplice dell’apprendimento automatico e funge da introduzione all’apprendimento automatico per molti professionisti della data science.
Attraverso questa procedura di apprendimento di machine learning, dunque, un sistema risponde in maniera corretta a degli input umani se addestrato nell’analisi dei dati stessi.
Nell’apprendimento supervisionato, l’algoritmo “impara” dal set di dati di addestramento effettuando in modo iterativo previsioni sui dati e regolando per la risposta corretta. I modelli di apprendimento senza supervisione, al contrario, lavorano da soli per scoprire la struttura intrinseca dei dati senza etichetta. Si noti che richiedono ancora un intervento umano per la convalida delle variabili di output.
Nell’apprendimento automatico sono disponibili più algoritmi che possono essere utilizzati per modellare i dati a seconda del caso d’uso, la maggior parte dei quali rientra in 3 categorie: apprendimento supervisionato, apprendimento non supervisionato e apprendimento per rinforzo. Ciascuno di questi presenta vantaggi distinti in diverse situazioni, a seconda della natura del problema e dell’output desiderato.
Risposte