Ś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- μj i)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.