Salta al contenuto principale
 

Clustering Massivo delle Reti

L’attività è dedicata alla realizzazione di una piattaforma avanzata che sia in grado di effettuare il Clustering massivo di dati sia in modalità batch sia Streaming, cioè real-time. Tale attività include inoltre la costruzione di un tool di visualizzazione del grafo e delle classi aggregate dall’algoritmo. La realizzazione di questa piattaforma trova un’immediata applicazione nell’analisi delle reti sociali. L’analisi riguarda la connettività della rete definita dalle relazioni, dalle interazioni o dalla similarità per contenuto tra i nodi della rete, cioè secondo comunità e gruppi di interesse.

Il Clustering massivo per contenuto viene effettuato mediante la tecnica LSH (Locality Sensitive Hashing) e  consiste nell'applicazione a cascata di  tre processi. La prima componente in sequenze di elementi contigui (k-shingle). La seconda componente costruisce un indice dei k-shingle (signature) che è una rappresentazione molto compatta dei dati originali. Infine LSH, taglia la signature in bande, e assegna i  documenti ai cluster quando si verificano collisioni parziali tra le bande.

Per effettuare invece il clustering massivo a partire dalle interazioni dei nodi si sono utilizzati gli algoritmi del tipo Cluster Affiliation Models for Big Networks (BigCLAM). Come LSH anche questi algoritmi sono scalabili essendo lineari rispetto al numero dei dati.

L’implementazione di LSH è stata realizzata sia su cluster di macchine con tecniche di programmazione distribuita Mapreduce, mediante Hadoop e Spark. Una volta effettuato il Clustering è possibile visualizzare centinaia di migliaia di nodi contenenti tutte le interazioni della rete. Grazie alla scalabilità dell'algoritmo di  Clustering, ottenuti mediante LSH o  BigCLAM, si è in grado di navigare nella rete entrando ed esplorando in profondità le diverse comunità e sotto-comunità.