approccio dei dati Clustering
-
27-09-2019 - |
Domanda
Sto scrivendo un programma in C # in cui ho una serie di 200 punti visualizzati su un'immagine. Tuttavia, i punti tendono a raggrupparsi in varie regioni, e sto cercando di trovare un modo per "cluster." In altre parole, forse disegnare un cerchio / ellisse attorno ai punti cluster.
Qualcuno ha visto un modo per fare questo? Ho sentito parlare di K-means clustering, ma non sono sicuro come implementarlo in C #.
Le eventuali implementazioni preferiti là fuori?
Soluzione
K-Means vi darà il centro del cluster e un elenco di punti di componenti. È quindi possibile disegnare un cerchio intorno a quel punto in un raggio che è la massima distanza (o media) dei punti che lo compongono. Oppure si potrebbe calcolare il Convex Hull dei punti e usare questo come una "busta" in tutto il cluster.
Una utile estensione di K-Means è il k-means ++ modifica che fa un lavoro migliore di scegliere coordinate iniziali.