Interpretacja wyniku k-średnich w R


12

Użyłem kmeansinstrukcji R do wykonania algorytmu k-średnich w zestawie danych tęczówki Andersona. Mam pytanie dotyczące niektórych parametrów, które otrzymałem. Wyniki są następujące:

Cluster means:
  Sepal.Length Sepal.Width Petal.Length Petal.Width
1     5.006000    3.428000     1.462000    0.246000

W takim przypadku, co oznacza „klaster”? Czy jest to średnia odległości wszystkich obiektów w klastrze?

Również w ostatniej części mam:

Within cluster sum of squares by cluster:
[1] 15.15100 39.82097 23.87947
 (between_SS / total_SS =  88.4 %)

Ta wartość 88,4%, jaka mogłaby być jej interpretacja?


4
Proszę nie przechodzić przez post! stackoverflow.com/q/14524818/429846
Gavin Simpson

Nie, to tylko średnia ze wszystkich obiektów w pierwszej grupie (łącznie 3). Możesz uzyskać 88,4% przez iris.km $ betweenss / iris.km $ tots
dfhgfh

Przeczytaj dowolny artykuł na temat k-średnich . Zatem powinno być oczywiste, co oznacza clsuter ... Środki K nie są oparte na odległości . Minimalizuje wariancje aka: „suma kwadratowych odchyleń”.
Ma ZAKOŃCZENIE - Anony-Mousse,

Załóżmy, że twoja średnia to 0. Zrób matematykę. Sprawdź, czy powyższe założenie ma znaczenie. Żyjcie szczęśliwie później. Zysk!
mia

Odpowiedzi:


23

Jeśli obliczymy sumę kwadratów odległości każdego punktu danych do średniej globalnej próbki, otrzymamy total_SS. Jeśli zamiast obliczać globalną średnią próbki (lub „centroid”), obliczasz jedną na grupę (tutaj są trzy grupy), a następnie obliczasz sumę kwadratów odległości tych trzech średnich do globalnej średniej, otrzymujesz between_SS. (Przy obliczaniu tego mnożymy kwadratową odległość każdej średniej do średniej globalnej przez liczbę reprezentowanych przez nią punktów danych).

Gdyby nie było dostrzegalnego wzorca grupowania, trzy średnie z trzech grup byłyby zbliżone do średniej globalnej i between_SSstanowiłyby bardzo niewielki ułamek total_SS. W tym przypadku jest odwrotnie, co pokazuje, że punkty danych grupują się dość starannie w przestrzeni czterowymiarowej w zależności od gatunku.


14

Średnie K nie jest algorytmem grupowania opartym na odległości .

K-oznacza szuka minimalnej sumy przydziału kwadratów , tzn. Minimalizuje nienormalizowaną wariancję (= total_SS), przypisując punkty do centrów skupień.

Aby k-średnie były zbieżne, potrzebujesz dwóch warunków:

  • zmiana przypisania punktów zmniejsza sumę kwadratów
  • ponowne obliczenie średniej zmniejsza sumę kwadratów

Ponieważ istnieje tylko skończona liczba kombinacji, nie można nieskończenie zmniejszać tę wartość, a algorytm musi w pewnym momencie zbiegać się do lokalnego optimum.

ja(xja-μjotja)2)jot. Matematycznie przypisanie przez najmniejszą sumę kwadratów jest równe przypisaniu przez zamknięcie do kwadratu odległości euklidesowej, która (jeśli marnujesz cykle procesora na obliczenia sqrt) równa się minimalnemu przypisaniu odległości euklidesowej. Zatem intuicja przypisywania każdego punktu do najbliższej średniej jest prawidłowa, ale nie to, co robi problem optymalizacji.

between_SS prawdopodobnie jest to ważona suma kwadratów między dwoma środkami, aby zmierzyć, jak dobrze centra klastrów są oddzielone (uwaga: centra klastrów, nie porównuje faktycznych skupisk - technicznie rzecz biorąc, komórka klastrowa Voronoi dotyka sąsiednich klastrów komórka Voronoi).

Zauważ, że dzięki k-oznacza możesz poprawić jakość naiwnego skupiania poprzez zwiększenie k. Mierzona tutaj jakość jest wartością matematyczną, która może nie spełniać wymagań użytkowników. Tęczówka jest w rzeczywistości dość dobrym przykładem, w którym k-średnie często są zbieżne z mniej niż zadowalającymi wynikami, nawet biorąc pod uwagę zewnętrzną informację, że powinny istnieć dokładnie 3 klastry.

Jeśli chcesz odmianę k-średnich opartą na odległości , spójrz na k-medoidy . Tutaj konwergencja jest zapewniona przez zastąpienie średniej medoidą:

  • Każdy obiekt jest przypisany do najbliższego gromady (dowolną miarą odległości)
  • Centrum klastra jest aktualizowane do najbardziej centralnego obiektu klastra, tj. Z najmniejszą średnią odległością od wszystkich innych.

Z każdym krokiem zmniejsza się suma odległości ; istnieje skończona liczba kombinacji, dlatego algorytm musi kończyć się z pewnym lokalnym minimum.


interesujący punkt +1
Cam.Davidson.Pilon

1
Dlaczego nie ma tutaj obliczania odległości (w kmeans)? Aby obliczyć wariancję, należy obliczyć odległość każdego elementu od średniej, więc wyraźnie wiąże się to z obliczeniem odległości, prawda?
Julian

Odchylenie zwykle nie jest definiowane w kategoriach odległości, ale jako „oczekiwana wartość kwadratowego odchylenia od średniej”.
Ma ZAKOŃCZENIE - Anony-Mousse
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.