Ich habe über k-means recherchiert und das habe ich: k-means ist einer der einfachsten Algorithmen, der unbeaufsichtigte Lernmethoden verwendet, um bekannte Clustering-Probleme zu lösen. Es funktioniert sehr gut mit großen Datenmengen.
Es gibt jedoch auch Nachteile von K-Mitteln, die sind:
- Starke Empfindlichkeit gegenüber Ausreißern und Lärm
- Funktioniert nicht gut mit unrunden Clusterformen - Anzahl der Cluster und anfänglicher Startwert müssen vorher festgelegt werden
- Geringe Fähigkeit, das lokale Optimum zu erreichen.
Gibt es etwas Gutes an k-means, weil es den Anschein hat, dass die Nachteile jenseits der guten Dinge an k-means liegen.
Bitte unterrichte mich.
clustering
data-mining
algorithms
k-means
Goldschädel mit Muster
quelle
quelle
Antworten:
Andere Clustering-Algorithmen mit besseren Funktionen sind tendenziell teurer. In diesem Fall wird k-means eine großartige Lösung für das Pre-Clustering, indem der Raum in disjunkte kleinere Unterräume reduziert wird, in denen andere Clustering-Algorithmen angewendet werden können.
quelle
K-means ist das einfachste. Umsetzen und ausführen. Alles was Sie tun müssen, ist "k" zu wählen und es mehrmals auszuführen.
Die meisten cleveren Algorithmen (insbesondere die guten) sind viel schwieriger effizient zu implementieren (Sie werden 100-fache Laufzeitunterschiede feststellen) und es müssen viel mehr Parameter festgelegt werden.
Außerdem benötigen die meisten Menschen keine Qualitätscluster . Sie sind tatsächlich mit irgendetwas glücklich, das für sie aus der Ferne arbeitet. Außerdem wissen sie nicht wirklich, was sie tun sollen, wenn sie komplexere Cluster haben. K-means, das Cluster mit dem einfachsten Modell aller Zeiten modelliert - einem Schwerpunkt -, ist genau das, was sie benötigen: massive Datenreduktion auf Zentroide .
quelle
K-means ist wie der Exchange Sort-Algorithmus. Leicht zu verstehen, hilft beim Einstieg in das Thema, sollte aber niemals für etwas Reales verwendet werden. Bei der Exchange-Sortierung ist sogar die Blasensortierung besser, da sie vorzeitig beendet werden kann, wenn das Array teilweise sortiert ist. Im Fall von K-means ist der EM-Algorithmus derselbe Algorithmus, nimmt jedoch anstelle der Annahme einer gleichmäßigen Verteilung von K-means Gauß-Verteilungen für Cluster an. K-means ist ein Kantenfall von EM, wenn alle Cluster diagonale Kovarianzmatrizen haben. Die Gaußsche Struktur bedeutet, dass sich die Cluster auf sehr schöne Weise in die Daten einschrumpfen. Dies umgeht die schwerwiegenden Einwände, die Sie in der Frage richtig ansprechen. Und EM ist eigentlich nicht viel teurer als K-means. (Ich kann beides in einer Excel-Tabelle implementieren.) Aber für ernsthafte Clustering-Anwendungen
quelle