Apprendimento non supervisionato

Da Unipedia.

Apprendimento non supervisionato

L’apprendimento non supervisionato è una tipologia di apprendimento automatico in cui un algoritmo analizza dati non etichettati, cioè privi di indicazioni su categorie o risultati attesi.

A differenza dell’apprendimento supervisionato dove ogni esempio è associato a un’etichetta che ne specifica la classe o il valore corretto qui il sistema non riceve alcuna guida esplicita su cosa cercare o come organizzare le informazioni.

L'algoritmo osserva solo gli input e cerca autonomamente di individuare regolarità, somiglianze o differenze tra essi, senza esempi da imitare o guide su cosa dovrebbe imparare.

Clustering

Il clustering è uno degli approcci centrali nell'apprendimento non supervisionato. E' una tecnica che mira a raggruppare campioni simili all’interno di un unico gruppo, detto cluster. Ogni cluster è caratterizzato da una massima somiglianza interna e da una minima somiglianza rispetto agli altri cluster, secondo un determinato indice di similarità [1].

Ad esempio, supponiamo di registrare gli spettri di centomila stelle: esistono diversi tipi di stelle che possono essere identificati a partire dagli spettri? E se sì, quanti tipi ci sono e quali sono le loro caratteristiche? Tutti conosciamo termini come “gigante rossa” o “nana bianca”, ma le stelle non portano queste etichette scritte sul cappello: gli astronomi hanno dovuto eseguire un'analisi di clustering non supervisionato per identificare queste categorie [2].

Tuttavia, quando i dati si trovano in spazi ad alta dimensione, l’individuazione di tali gruppi diventa computazionalmente onerosa e può compromettere la qualità dell’apprendimento. Inoltre, anche sottoinsiemi differenti di caratteristiche (feature) possono produrre cluster altrettanto validi, ma diversi tra loro. Per questo motivo, si rende necessario utilizzare tecniche di selezione delle caratteristiche (feature selection) nell’ambito del clustering, al fine di ridurre gli effetti negativi dell’alta dimensionalità [3].


Clustering

Il clustering è un processo di apprendimento non supervisionato che consiste nell'organizzare automaticamente un insieme di dati in gruppi coerenti, detti cluster, in modo che gli elementi appartenenti allo stesso cluster siano più simili tra loro rispetto a quelli appartenenti a cluster differenti. Questa tecnica si basa solo sulla struttura intrinseca dei dati, senza disporre di etichette predefinite, ed è spesso usata per scoprire strutture latenti, pattern nascosti o sottogruppi naturali all'interno di insiemi complessi [4].

"Ad esempio, supponiamo di registrare gli spettri di centomila stelle: esistono diversi tipi di stelle che possono essere identificati a partire dagli spettri? E se sì, quanti tipi ci sono e quali sono le loro caratteristiche? Tutti conosciamo termini come “gigante rossa” o “nana bianca”, ma le stelle non portano queste etichette scritte sul cappello: gli astronomi hanno dovuto eseguire un'analisi di clustering non supervisionato per identificare queste categorie" [5].

Tuttavia, quando i dati si trovano in spazi ad alta dimensione, l’individuazione di tali gruppi diventa computazionalmente onerosa e può compromettere la qualità dell’apprendimento. Inoltre, anche sottoinsiemi differenti di caratteristiche (feature) possono produrre cluster altrettanto validi, ma diversi tra loro. Per questo motivo, si rende necessario utilizzare tecniche di selezione delle caratteristiche (feature selection) nell’ambito del clustering, al fine di ridurre gli effetti negativi dell’alta dimensionalità [6].

Algoritmo K-medoids

L’algoritmo K-medoids è stato introdotto da Leonard Kaufman e Peter J. Rousseeuw nel 1987, come alternativa robusta al K-means. A differenza di quest’ultimo, che utilizza la media aritmetica dei punti come centroide, il K-medoids rappresenta ciascun cluster con un oggetto reale del dataset, selezionato in modo da minimizzare la dissimilarità media all’interno del gruppo.

“The model described in this paper is based upon the search for k representative objects, which should represent the various aspects of the structure of the data. In this model the representative object of a cluster is the object for which the average dissimilarity […] to all the objects of the cluster is minimal.” [7]

Questo approccio, noto anche come PAM (Partitioning Around Medoids), si basa sulla minimizzazione di una funzione di costo calcolata sulle dissimilarità tra elementi, e può essere applicato anche in presenza di dati non numerici o con outlier significativi.

Formalmente, dato un insieme di dati X = {x₁, x₂, ..., xₙ}, si seleziona un sottoinsieme M = {m₁, ..., m_k} contenuto in X tale da minimizzare il costo totale:

J = somma per j=1 a k della somma su xᵢ appartenenti a Cᵫ di d(xᵢ, mᵫ)

dove d(·,·) è una funzione di distanza, e mᵫ è il medoide del cluster Cᵫ.

Si inizia con la selezione casuale di k medoidi, quindi assegna ciascun punto al medoide più vicino. In seguito, valuta iterativamente se la sostituzione di un medoide con un altro punto del dataset riduce il costo complessivo; in tal caso, la sostituzione viene effettuata. Il processo continua fino a stabilizzazione.

Rispetto a K-means, K-medoids presenta una maggiore robustezza e può operare con qualsiasi metrica di distanza, anche non euclidea. Tuttavia, ciò avviene a scapito della complessità computazionale, che risulta più elevata, specialmente su dataset di grandi dimensioni.

Note

  1. Charu C. Aggarwal, Chandan K. Reddy (2014). Data Clustering: Algorithms and Applications, CRC Press, p. 58.
  2. Russell, S. J., & Norvig, P. (2022). Artificial Intelligence. A Modern Approach, Ed. Pearson, p. 789.
  3. Charu C. Aggarwal, Chandan K. Reddy (2014). Data Clustering: Algorithms and Applications, CRC Press, p. 58.
  4. Charu C. Aggarwal, Chandan K. Reddy (2014). Data Clustering: Algorithms and Applications, CRC Press, p. 58.
  5. Russell, S. J., & Norvig, P. (2022). Artificial Intelligence. A Modern Approach, Ed. Pearson, p. 789.
  6. Charu C. Aggarwal, Chandan K. Reddy (2014). Data Clustering: Algorithms and Applications, CRC Press, p. 58.
  7. Kaufman, L., & Rousseeuw, P. J. (1987). Clustering by means of medoids.

Bibliografia

Russell, S. J., & Norvig, P. (2022). Artificial Intelligence. A Modern Approach, Ed. Pearson.

Charu C. Aggarwal, Chandan K. Reddy (2014). Data Clustering: Algorithms and Applications, CRC Press.