Serie di apprendimento non supervisionato esplorazione di mappe auto-organizzanti
Apprendimento non supervisionato con mappe auto-organizzanti
Scopri come funzionano le mappe auto-organizzanti (Self-Organizing Maps) e perché sono un algoritmo utile per l’apprendimento non supervisionato
Le mappe auto-organizzanti (SOMs) sono un tipo di rete neurale non supervisionata utilizzata per il clustering e la visualizzazione di dati ad alta dimensionalità. Le SOMs vengono addestrate utilizzando un algoritmo di apprendimento competitivo, in cui i nodi (noti anche come neuroni) nella rete competono per rappresentare i dati in ingresso.
L’architettura delle SOMs consiste in una griglia bidimensionale di nodi, in cui ogni nodo è associato a un vettore di pesi che rappresenta le medie dei centroidi nella soluzione delle SOMs. I nodi sono organizzati in modo tale che i nodi siano raggruppati intorno a punti dati simili, producendo uno strato che rappresenta i dati sottostanti.
Le SOMs sono comunemente utilizzate per una vasta gamma di compiti come:
- visualizzazione dei dati
- rilevamento delle anomalie
- estrazione delle caratteristiche
- clustering
Possiamo anche visualizzare le SOMs come la versione più semplice di una rete neurale per l’apprendimento non supervisionato!
- Top 10 LLM Open Source da UTILIZZARE nella tua prossima domanda di LLM
- Come è essere un Data Scientist Full-Stack in una Startup
- Apprendimento automatico su grafi @ ICML 2023
Anche se possono sembrare confuse all’inizio, le mappe auto-organizzanti (o mappe di Kohonen, dal nome del loro inventore) sono un tipo interessante di algoritmo in grado di mappare la struttura sottostante dai dati. Possono essere descritte come segue:
- una rete neurale non supervisionata a un solo strato, senza retropropagazione.
- una soluzione k-means limitata, in cui i nodi hanno la capacità di influenzare lo spostamento degli altri nodi (nel contesto di k-means, i nodi sono noti come centroidi).
In questo articolo, faremo un paio di esperimenti sul modello SOM. Successivamente, applicheremo una mappa auto-organizzante a un caso d’uso reale, dove saremo in grado di vedere le principali caratteristiche e limitazioni dell’algoritmo.
Comprensione di come apprendono le SOMs
Per capire come apprendono le SOMs, iniziamo tracciando un dataset di esempio in 2 dimensioni.
Crea un array numpy
con il seguente dataset e plottalo successivamente:
import numpy as npX = np.array([[1, 2], [2, 1], [1, 3], [1, 2.5], [3.1, 5], [4, 10], [3.6, 5.4], [2...