Weka - Clustering

Un algoritmo di clustering trova gruppi di istanze simili nell'intero set di dati. WEKA supporta diversi algoritmi di clustering come EM, FilteredClusterer, HierarchicalClusterer, SimpleKMeans e così via. È necessario comprendere completamente questi algoritmi per sfruttare appieno le capacità di WEKA.

Come nel caso della classificazione, WEKA consente di visualizzare graficamente i cluster rilevati. Per dimostrare il clustering, useremo il database iris fornito. Il set di dati contiene tre classi di 50 istanze ciascuna. Ogni classe si riferisce a un tipo di pianta di iris.

Caricamento dati

Nell'explorer WEKA selezionare il file Preprocesstab. Clicca sulOpen file ... e seleziona l'opzione iris.arfffile nella finestra di selezione dei file. Quando carichi i dati, lo schermo appare come mostrato di seguito -

Puoi osservare che ci sono 150 istanze e 5 attributi. I nomi degli attributi sono elencati comesepallength, sepalwidth, petallength, petalwidth e class. I primi quattro attributi sono di tipo numerico mentre la classe è di tipo nominale con 3 valori distinti. Esamina ogni attributo per comprendere le caratteristiche del database. Non eseguiremo alcuna preelaborazione su questi dati e procederemo immediatamente alla creazione del modello.

Clustering

Clicca sul ClusterTAB per applicare gli algoritmi di clustering ai nostri dati caricati. Clicca sulChoosepulsante. Vedrai la seguente schermata:

Ora seleziona EMcome algoritmo di clustering. NelCluster mode finestra secondaria, selezionare il file Classes to clusters evaluation opzione come mostrato nello screenshot qui sotto -

Clicca sul Startpulsante per elaborare i dati. Dopo un po ', i risultati verranno presentati sullo schermo.

Successivamente, studiamo i risultati.

Esame dell'output

L'output dell'elaborazione dei dati è mostrato nella schermata seguente:

Dalla schermata di output, puoi osservare che:

  • Sono presenti 5 istanze cluster rilevate nel database.

  • Il Cluster 0 rappresenta setosa, Cluster 1 rappresenta la virginica, Cluster 2 rappresenta versicolor, mentre gli ultimi due cluster non hanno alcuna classe ad essi associata.

Se scorri verso l'alto la finestra di output, vedrai anche alcune statistiche che danno la media e la deviazione standard per ciascuno degli attributi nei vari cluster rilevati. Questo è mostrato nella schermata riportata di seguito -

Successivamente, esamineremo la rappresentazione visiva dei cluster.

Visualizzazione di cluster

Per visualizzare i cluster, fare clic con il tasto destro del mouse sul file EM risultato in Result list. Vedrai le seguenti opzioni:

Selezionare Visualize cluster assignments. Vedrai il seguente output:

Come nel caso della classificazione, noterai la distinzione tra istanze identificate correttamente e non correttamente. Puoi giocare cambiando gli assi X e Y per analizzare i risultati. Puoi usare il jitter come nel caso della classificazione per scoprire la concentrazione di istanze identificate correttamente. Le operazioni nel grafico di visualizzazione sono simili a quella che hai studiato nel caso della classificazione.

Applicazione di Hierarchical Clusterer

Per dimostrare la potenza di WEKA, esaminiamo ora un'applicazione di un altro algoritmo di clustering. Nell'explorer WEKA selezionare il fileHierarchicalClusterer come algoritmo ML come mostrato nello screenshot mostrato di seguito -

Scegli il Cluster mode selezione a Classes to cluster evaluatione fare clic su Startpulsante. Vedrai il seguente output:

Si noti che in Result list, sono elencati due risultati: il primo è il risultato EM e il secondo è l'attuale Gerarchico. Allo stesso modo, puoi applicare più algoritmi ML allo stesso set di dati e confrontare rapidamente i loro risultati.

Se esamini l'albero prodotto da questo algoritmo, vedrai il seguente output:

Nel prossimo capitolo studierai il Associate tipo di algoritmi ML.