Fondamenti di IA

Supervised contro Unsupervised Learning

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

In machine learning, la maggior parte dei compiti può essere facilmente categorizzata in una di due classi diverse: problemi di apprendimento supervisionato o problemi di apprendimento non supervisionato. In apprendimento supervisionato, i dati hanno etichette o classi aggiunte, mentre nel caso dell’apprendimento non supervisionato i dati sono senza etichetta. Vediamo da vicino perché questa distinzione è importante e esaminiamo alcuni degli algoritmi associati a ciascun tipo di apprendimento.

Supervised vs Unsupervised Learning

La maggior parte dei compiti di machine learning rientra nel dominio dell’apprendimento supervisionato. Negli algoritmi di apprendimento supervisionato, le istanze singole/punti dati nel set di dati hanno una classe o etichetta assegnata. Ciò significa che il modello di machine learning può imparare a distinguere quali caratteristiche sono correlate con una classe data e che l’ingegnere di machine learning può verificare le prestazioni del modello vedendo quanti istanze sono state classificate correttamente. Gli algoritmi di classificazione possono essere utilizzati per discernere molti modelli complessi, a condizione che i dati siano etichettati con le classi appropriate. Ad esempio, un algoritmo di machine learning può imparare a distinguere diversi animali gli uni dagli altri in base a caratteristiche come “vibrisse”, “coda”, “artigli”, ecc.

In contrasto con l’apprendimento supervisionato, l’apprendimento non supervisionato consiste nel creare un modello in grado di estrarre modelli da dati non etichettati. In altre parole, il computer analizza le caratteristiche di input e determina da solo quali sono le caratteristiche e i modelli più importanti. L’apprendimento non supervisionato cerca di trovare le somiglianze innate tra diverse istanze. Se un algoritmo di apprendimento supervisionato mira a collocare i punti dati in classi note, gli algoritmi di apprendimento non supervisionato esamineranno le caratteristiche comuni alle istanze degli oggetti e le collocano in gruppi in base a queste caratteristiche, creando essenzialmente le proprie classi.

Esempi di algoritmi di apprendimento supervisionato sono la Regressione Lineare, la Regressione Logistica, i K-Nearest Neighbors, gli Alberi Decisionali e le Machine a Vettori di Supporto.

Nel frattempo, alcuni esempi di algoritmi di apprendimento non supervisionato sono l’Analisi delle Componenti Principali e il Clustering K-Means.

Algoritmo di Apprendimento Supervisionato

La Regressione Lineare è un algoritmo che prende due caratteristiche e traccia la relazione tra di esse. La Regressione Lineare viene utilizzata per prevedere valori numerici in relazione ad altre variabili numeriche. La Regressione Lineare ha l’equazione di Y = a + bX, dove b è la pendenza della linea e a è dove y incrocia l’asse X.

La Regressione Logistica è un algoritmo di classificazione binaria. L’algoritmo esamina la relazione tra le caratteristiche numeriche e trova la probabilità che l’istanza possa essere classificata in una delle due classi diverse. I valori di probabilità sono “compressi” verso 0 o 1. In altre parole, le probabilità forti si avvicineranno a 0,99 mentre le probabilità deboli si avvicineranno a 0.

I K-Nearest Neighbors assegnano una classe a nuovi punti dati in base alle classi assegnate a un certo numero di vicini nel set di addestramento. Il numero di vicini considerati dall’algoritmo è importante e troppi o troppo pochi vicini possono classificare male i punti.

Gli Alberi Decisionali sono un tipo di algoritmo di classificazione e regressione. Un albero decisionale opera dividendo un set di dati in porzioni sempre più piccole fino a quando le sottoporzioni non possono essere ulteriormente divise e il risultato è un albero con nodi e foglie. I nodi sono dove vengono prese decisioni sui punti dati utilizzando diversi criteri di filtro, mentre le foglie sono le istanze che sono state assegnate a una certa etichetta (un punto dati che è stato classificato). Gli algoritmi degli alberi decisionali sono in grado di gestire sia dati numerici che categoriali. Le divisioni vengono effettuate nell’albero su variabili/caratteristiche specifiche.

Le Machine a Vettori di Supporto sono un algoritmo di classificazione che opera disegnando iperpiani, o linee di separazione, tra i punti dati. I punti dati vengono separati in classi in base a quale lato dell’iperpiano si trovano. Possono essere disegnati più iperpiani su un piano, dividendolo in più classi. Il classificatore cercherà di massimizzare la distanza tra l’iperpiano di divisione e i punti su entrambi i lati del piano, e maggiore sarà la distanza tra la linea e i punti, più il classificatore sarà sicuro.

Algoritmi di Apprendimento Non Supervisionato

L’Analisi delle Componenti Principali è una tecnica utilizzata per la riduzione della dimensionalità, ovvero la dimensionalità o la complessità dei dati viene rappresentata in modo più semplice. L’algoritmo di Analisi delle Componenti Principali trova nuove dimensioni per i dati che sono ortogonali. Mentre la dimensionalità dei dati viene ridotta, la varianza tra i dati dovrebbe essere preservata il più possibile. Ciò significa, in termini pratici, che prende le caratteristiche nel set di dati e le distilla in meno caratteristiche che rappresentano la maggior parte dei dati.

Il Clustering K-Means è un algoritmo che raggruppa automaticamente i punti dati in cluster in base a caratteristiche simili. I modelli all’interno del set di dati vengono analizzati e i punti dati vengono divisi in gruppi in base a questi modelli. In sostanza, il K-Means crea le proprie classi a partire da dati non etichettati. L’algoritmo K-Means opera assegnando centri ai cluster, o centroidi, e spostando i centroidi fino a quando non si trova la posizione ottimale per i centroidi. La posizione ottimale sarà quella in cui la distanza tra i centroidi e i punti dati circostanti all’interno della classe è minimizzata. Il “K” nel clustering K-Means si riferisce a quanti centroidi sono stati scelti.

Riepilogo

Per concludere, ripassiamo rapidamente le principali differenze tra apprendimento supervisionato e non supervisionato.

Come abbiamo discusso in precedenza, negli compiti di apprendimento supervisionato i dati di input sono etichettati e il numero di classi è noto. Nel frattempo, i dati di input sono senza etichetta e il numero di classi non è noto nei casi di apprendimento non supervisionato. L’apprendimento non supervisionato tende a essere meno complesso dal punto di vista computazionale, mentre l’apprendimento supervisionato tende a essere più complesso. Mentre i risultati dell’apprendimento supervisionato tendono a essere altamente precisi, i risultati dell’apprendimento non supervisionato tendono a essere meno precisi/moderatamente precisi.

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.