My IBM Accedi
Cos'è l'unsupervised learning?

Cos'è l'unsupervised learning?

Scopri come funziona l'unsupervised learning e come può essere utilizzato per esplorare e raggruppare in cluster i dati
Illustrazione di un elemento astratto verde ad onda lineare su sfondo nero
Cos'è l'unsupervised learning?

Cos'è l'unsupervised learning?

L'unsupervised learning, noto anche come  unsupervised machine learning, utilizza gli algoritmi di machine learning per analizzare e raggruppare in cluster i dataset senza etichette. Questi algoritmi scoprono i raggruppamenti di dati o i pattern nascosti senza la necessità di un intervento umano. La sua capacità di scoprire similitudini e differenze nelle informazioni lo rendono la soluzione ideale per l'analisi dei dati esplorativi, le strategie di cross-selling, la segmentazione dei clienti e il riconoscimento di immagini.

Approcci comuni dell'unsupervised learning

Approcci comuni dell'unsupervised learning

I modelli di unsupervised learning vengono utilizzati per tre attività principali, il clustering, associazione e riduzione della dimensionalità. Di seguito definiremo ciascun metodo di apprendimento ed evidenzieremo algoritmi e approcci comuni per condurli in modo efficace.

Clustering

Il clustering è una tecnica di data mining che raggruppa dati non etichettati in base alle loro somiglianze o differenze. Gli algoritmi di clustering vengono utilizzati per gestire oggetti di dati non elaborati e non classificati in gruppi rappresentati in base alle strutture o ai modelli presenti nelle informazioni. Gli algoritmi di clustering possono essere classificati in alcuni tipi, nello specifico esclusivi, sovrapposti, gerarchici e probabilistici.

Clustering esclusivo e sovrapposto

Il clustering esclusivo è una metodo di raggruppamento che stabilisce che un punto dati può esistere solo in un cluster. Questo metodo viene anche definito clustering "hard". L'algoritmo di clustering K-means è un esempio di clustering esclusivo.

  • Il clustering K-means è un esempio comune di un metodo di clustering esclusivo in cui i punti dati vengono assegnati in K gruppi, dove K rappresenta il numero di cluster in base alla distanza dal baricentro di ciascun gruppo. I punti dati più vicini a un determinato baricentro saranno raggruppati in cluster sotto la stessa categoria. Un valore K più grande sarà indicativo di raggruppamenti più piccoli con maggiore granularità mentre un valore K più piccolo avrà raggruppamenti più grandi e meno granularità. Il clustering K-means è comunemente usato nella segmentazione del mercato, nel clustering dei documenti, nella segmentazione delle immagini e nella compressione delle immagini.

I cluster sovrapposti differiscono dal clustering esclusivo in quanto consentono ai punti dati di appartenere a più cluster con gradi di appartenenza separati. Il clustering k-means "Soft" o "fuzzy" è un esempio di clustering sovrapposto.

Clustering gerarchico

Il clustering gerarchico, noto anche come analisi dei cluster gerarchici (hierarchical cluster analysis, HCA), è un algoritmo di clustering non supervisionato che può essere classificato in due modi; può essere agglomerante o divisivo. Il clustering agglomerante è considerato un "approccio bottom-up" (dal basso verso l'alto). I suoi punti dati vengono inizialmente isolati come raggruppamenti separati, quindi vengono uniti in modo iterativo sulla base della loro somiglianza fino a quando non viene raggiunto un cluster. Per misurare la somiglianza vengono solitamente utilizzati quattro metodi differenti:

  1. Collegamento di Ward: questo metodo afferma che la distanza tra due cluster è definita dall'aumento della somma dei quadrati dopo che i cluster sono stati uniti.
  2. Collegamento medio: questo metodo è definito dalla distanza media tra due punti in ciascun cluster
  3. Collegamento completo (o massimo): questo metodo è definito dalla distanza massima tra due punti in ogni cluster
  4. Collegamento singolo (o minimo): questo metodo è definito dalla distanza minima tra due punti in ogni cluster

La distanza euclidea è la metrica più comune utilizzata per calcolare queste distanze; tuttavia, nella letteratura sul clustering sono citate anche altre metriche, come la distanza Manhattan.

Il clustering divisivo può essere definito come l'opposto del clustering agglomerante; infatti utilizza un approccio "top-down" (dall'alto verso il basso). In questo caso, un singolo cluster di dati viene diviso in base alle differenze tra i punti di dati. Il clustering divisivo non è usato comunemente, ma vale comunque la pena di annotarlo nel contesto del clustering gerarchico. Questi processi di clustering vengono solitamente visualizzati utilizzando un dendrogramma, un diagramma ad albero che documenta l'unione o la suddivisione dei punti di dati ad ogni iterazione.

Clustering probabilistico

Un modello probabilistico è una tecnica non supervisionata che aiuta a risolvere i problemi legati alla stima della densità o del clustering "soft". Nel clustering probabilistico, i punti dati sono raggruppati in cluster in base alla probabilità che appartengano a una particolare distribuzione. Il modello GMM (Gaussian Mixture Model) è uno dei metodi di clustering probabilistico più comunemente utilizzati.

  • I modelli GMM sono classificati come modelli misti, il che significa che sono costituiti da un numero imprecisato di funzioni di distribuzione di probabilità. I GMM sono principalmente utilizzati per determinare a quale distribuzione di probabilità gaussiana, o normale, appartiene uno specifico elemento dati. Se sono note la media o la varianza, è possibile determinare a quale distribuzione appartiene un dato punto di dati. Tuttavia, nei GMM, queste variabili non sono note, quindi si presume che esista una variabile latente o nascosta per raggruppare i punti di dati in modo appropriato. Sebbene non sia necessario utilizzare l'algoritmo di Expectation-Maximization (EM), questo è comunemente usato per stimare le probabilità di assegnazione di un determinato punto di dati ad uno specifico cluster di dati.   

Regole di associazione

Una regola di associazione è un metodo basato su regole per trovare relazioni tra variabili in un determinato dataset. Questi metodi sono usati frequentemente per l'analisi market basket, permettendo alle aziende di capire meglio le relazioni tra i diversi prodotti. Comprendere le abitudini di consumo dei clienti permette alle aziende di sviluppare migliori strategie di cross-selling e motori di consigli. Alcuni esempi di queste strategie possono essere notate nel suggerimento "I clienti che hanno acquistato questo articolo hanno anche comprato" di Amazon o nella playlist "Discover Weekly" di Spotify. Sebbene esistano diversi algoritmi utilizzati per generare regole di associazione, come Apriori, Eclat e FP-Growth, l'algoritmo Apriori è il più utilizzato.

Algoritmi Apriori

Gli algoritmi Apriori sono stati resi popolari attraverso analisi dei panieri di mercato, portando a diversi motori di consigli per piattaforme musicali e rivenditori online. Sono utilizzati all'interno di dataset transazionali per identificare set di articoli frequenti, o raccolte di articoli, per identificare la probabilità di acquistare un prodotto dato l'acquisto di un altro prodotto. Ad esempio, se ascolto la radio dei Black Sabbath su Spotify, iniziando con la loro canzone "Orchid", una delle altre canzoni su questo canale sarà probabilmente una canzone dei Led Zeppelin, come "Over the Hills and Far Away". Questo suggerimento si basa sulle abitudini di ascolto personali e di altri. Gli algoritmi Apriori utilizzano un albero di hash  per contare il set di articoli, esplorando il dataset in ampiezza.

Riduzione della dimensionalità

Sebbene un numero maggiore di dati generalmente dia risultati più accurati, può anche influire sulle prestazioni degli algoritmi di machine learning (ad esempio a causa dell'overfitting) e può anche rendere difficile la visualizzazione dei dataset. La riduzione della dimensionalità è una tecnica utilizzata quando il numero di caratteristiche, o dimensioni, in un determinato dataset è troppo elevato. Riduce il numero di input di dati a una dimensione gestibile preservando il più possibile l'integrità del dataset. È comunemente usata nella fase di pre-elaborazione dei dati e ci sono alcuni diversi metodi di riduzione della dimensionalità che possono essere usati, come:

Analisi del componente principale (Principal component analysis, PCA)

L'analisi PCA è un tipo di algoritmo di riduzione della dimensionalità utilizzato per ridurre le ridondanze e comprimere i dataset tramite l'estrazione delle caratteristiche. Questo metodo utilizza una trasformazione lineare per creare una nuova rappresentazione dei dati, producendo un insieme di "componenti principali". Il primo componente principale è la direzione che massimizza la varianza del dataset. Sebbene anche la seconda componente principale trovi la massima varianza nei dati, è completamente non correlata alla prima componente principale, producendo una direzione perpendicolare, o ortogonale, alla prima componente. Questo processo si ripete in base al numero di dimensioni, in cui un successivo componente principale rappresenta la direzione ortogonale rispetto ai componenti precedenti con la maggior varianza.

Decomposizione ai valori singolari (Singular value decomposition, SVD)

L'analisi SVD rappresenta un altro approccio alla riduzione della dimensionalità che fattorizza una matrice, A, in tre matrici di basso rango. SVD è indicato dalla formula, A = USVT, dove U e V sono matrici ortogonali. S è una matrice diagonale e i valori S sono considerati valori singolari della matrice A. Alla stregua dell'analisi PCA, questa analisi viene comunemente utilizzata per ridurre il rumore e comprimere i dati, come i file di immagine.

Autoencoder

Gli autoencoder sfruttano le reti neurali per comprimere i dati e quindi ricreare una nuova rappresentazione dell'input dei dati originali. Guardando l'immagine seguente, è possibile vedere che il livello nascosto agisce da collo di bottiglia per comprimere il livello di input prima della ricostruzione all'interno del livello di output. La fase dal livello di input al livello nascosto è indicata come "codifica", mentre la fase dal livello nascosto al livello di output è noto come "decodifica".

Applicazioni dell'unsupervised learning

Applicazioni dell'unsupervised learning

Le tecniche di machine learning rappresentano ormai un metodo comune per migliorare l'esperienza di un utenti di prodotti e per il controllo di qualità dei sistemi. L'unsupervised learning fornisce un percorso esplorativo per visualizzare i dati, consentendo alle aziende di identificare modelli in grandi volumi di dati più rapidamente rispetto all'osservazione manuale. Alcune delle applicazioni più comuni nel mondo reale dell'unsupervised learning sono:

  • Sezione notizie: Google News utilizza l'unsupervised learning per classificare gli articoli scritti su una stessa storia, estratti da vari siti di notizie online. Ad esempio, i risultati di un'elezione presidenziale potrebbero essere classificati sotto l'etichetta notizie "USA".
  • Visione computer: gli algoritmi di unsupervised learning vengono utilizzati per compiti di percezione visiva, come il riconoscimento di oggetti.  
  • Diagnosi mediche: l'nsupervised machine learning fornisce funzionalità essenziali ai dispositivi di diagnosi medica, come il rilevamento, la classificazione e la segmentazione delle immagini, utilizzati in radiologia e nella patologia per effettuare diagnosi rapide e accurata sui pazienti.
  • Rilevamento anomalie: i modelli di unsupervised learning possono esaminare grandi quantità di dati e scoprire punti di dati atipici all'interno di un dataset. Queste anomalie possono aumentare la consapevolezza di apparecchiature difettose, errori umani o violazioni della sicurezza.
  • Personalità dei clienti: la definizione della personalità dei clienti rende più facile comprendere i tratti comuni e le abitudini di acquisto dei clienti. L'unsupervised learning consente alle aziende di creare profili della personalità degli acquirenti migliori, consentendo alle organizzazioni di allineare i messaggi sui prodotti in modo più appropriato.
  • Motori di consigli: utilizzando dati relativi a comportamenti di consumo passati, l'unsupervised learning può aiutare a scoprire le tendenze dei dati da utilizzare per sviluppare strategie di cross-selling più efficaci. Si fa uso di tali strategie per consigliare ai clienti prodotti aggiuntivi pertinenti durante il processo di pagamento ai rivenditori online.
Confronto tra unsupervised, supervised e semi-supervised learning

Confronto tra unsupervised, supervised e semi-supervised learning

L'unsupervised learning e il supervised learning sono spesso trattati insieme. A differenza degli algoritmi di unsupervised learning, quelli di supervised learning utilizzano dati etichettati. Da tali dati, è possibile prevedere i risultati futuri o assegnare i dati a categorie specifiche in base al problema di regressione o classificazione che si sta cercando di risolvere. Sebbene gli algoritmi di supervised learning tendano ad essere più accurati dei modelli di unsupervised learning, richiedono un intervento umano precedente per etichettare i dati in modo appropriato. Tuttavia, questi dataset etichettati consentono agli algoritmi di supervised learning di evitare la complessità elaborativa in quanto non necessitano di un ampio set di addestramento per produrre i risultati richiesti. Le tecniche di regressione e classificazione comuni sono regressione lineare e logistica, naïve bayes, l'algoritmo KNN e random forest.

Il semi-supervise learning si verifica quando solo una parte dei dati di input forniti è stata etichettata. L'unsupervised ed il semi-supervised learning possono rappresentare le giuste alternative, in quanto, etichettare i dati in modo appropriato per il supervised learning può richiedere molto tempo e denaro e competenza nel dominio.

Per approfondire le differenze tra questi approcci, consulta "Supervised vs. Unsupervised Learning: What's the Difference?"

Sfide dell'unsupervised learning

Sfide dell'unsupervised learning

Sebbene l'unsupervised learning abbia molti vantaggi, poiché l'esecuzione di modelli di machine learning avviene senza alcun intervento umano, si rischiano complicazioni. Alcune di queste complicazioni sono:

  • Complessità computazionale a causa di un volume elevato di dati di addestramento
  • Tempi più lunghi di addestramento
  • Maggior rischio di risultati imprecisi
  • Necessità dell'intervento umano per convalidare le variabili di output
  • Mancanza di trasparenza della base su cui i dati sono stati raggruppati in cluster

 

Soluzioni correlate

Soluzioni correlate

IBM® Watson Studio

Sviluppa e ridimensiona un'AI affidabile su qualsiasi cloud. Automatizza il ciclo di vita dell'AI per ModelOps.

Esplora IBM® Watson Studio
IBM® Cloud Pak for Data

Connetti i dati giusti, al momento giusto, con le persone ideali, ovunque sia necessario.

Esplora Cloud Pak for Data
Soluzioni IBM Cloud

Ibrido. Aperto. Resiliente. La tua piattaforma e partner per la trasformazione digitale.

Esplora le soluzioni cloud
Passa alla fase successiva

I modelli di unsupervised machine learning sono strumenti potenti quando si lavora con grandi quantità di dati.IBM Watson Studio on IBM Cloud Pak for Data offre una soluzione open source per i data scientist e gli sviluppatori che desiderano accelerare le proprie implementazioni di unsupervised machine learning. Adatta i tuoi modelli di apprendimento in qualsiasi ambiente cloud e trai vantaggio dalle risorse e dalle competenze IBM per ottenere il massimo dai tuoi modelli di unsupervised machine learning.

Esplora IBM Watson® Studio ora