Zalety i wady k-średnich

K-means jest przydatna i skuteczna w wielu kontekstach uczenia maszynowego, ale ma też pewne wyraźne słabości.

Zalety metody k-średnich

Są stosunkowo proste do wdrożenia.

Możliwość skalowania do dużych zbiorów danych.

Zawsze się zbiega.

Pozwala na uruchomienie pozycji centroidów w stanie wstępnym.

Płynnie dostosowuje się do nowych przykładów.

Można je uogólnić do klastrów o różnych kształtach i rozmiarach, np. eliptycznych.

Ogólne zasady dotyczące k-średnich

Prosta implementacja metody k-średnich może mieć problemy z grupami o różnej gęstości i rozmiarze. Po lewej stronie rysunku 1. widać skupiska, których oczekujemy, a po prawej – skupiska zaproponowane przez algorytm k-means.

2 wykresy obok siebie. Pierwszy z nich pokazuje zbiór danych z raczej oczywistymi klastrami. Drugi pokazuje dziwne grupowanie przykładów po uruchomieniu algorytmu k-means.
Rysunek 1. Przykład nieuogólnionego algorytmu k-średnich.

Aby uzyskać lepsze wyniki w przypadku niesymetrycznych klastrów, takich jak te pokazane na rysunku 1, możesz zastosować uogólnianie, czyli dostosować algorytm k-means. Rysunek 2 przedstawia 3 różne zbiory danych pogrupowane na podstawie 2 różnych uogólnień. Pierwszy zbiór danych pokazuje metodę k-średnich bez uogólnień, a drugi i trzeci pozwalają na zmienną szerokość klastrów.

Trzy wykresy pokazujące k-means bez uogólniania, następnie k-means z różnymi szerokościami, a następnie k-means z różnymi szerokościami w różnych wymiarach.
Ilustracja 2. Grupowanie k-średnich z uwzględnieniem i bez uogólnień.

W tym kursie nie omawiamy generalizacji metody k-średnich, ale osoby zainteresowane mogą zapoznać się z artykułem Clustering – k-means Gaussian mixture models (Klasteryzacja – modele mieszaniny gaussowskiej k-średnich) autorstwa Carlosa Guestrina z Uniwersytetu Carnegie Mellon.

Wady metody k-średnich

k musi być wybrany ręcznie.

Wyniki zależą od wartości początkowych.

W przypadku niskiej wartości kmożesz ograniczyć tę zależność, wykonując kilkakrotnie algorytm k-średnich z różnymi wartościami początkowymi i wybierając najlepszy wynik. W miarę wzrostu wartości kmusisz wypełnić rdzeń, aby wybrać lepsze początkowe centroidy. Pełną dyskusję na temat wypełniania rdzenia k-średnich znajdziesz w artykule „A Comparative Study of Efficient Initialization Methods for the K-means Clustering Algorithm” (porównawcze badanie metod skutecznego inicjowania algorytmu grupowania k-średnich) autorstwa M. Emre Celebi, Hassan A. Kingravi i Patricio A. Vela.

Trudności z tworzeniem klastrów danych o zmiennych rozmiarach i gęstościach bez ich uogólniania.

Wyjątki w przypadku grupowania kluster według trudności

Punkty środkowe mogą być przeciągane przez wartości odstające lub mogą tworzyć własny klaster zamiast być ignorowane. Rozważ usunięcie lub przycięcie wartości odstających przed zgrupowaniem.

Trudności w skalowaniu wraz z liczbą wymiarów.

Wraz ze wzrostem liczby wymiarów w danych miara podobieństwa na podstawie odległości zmierza do stałej wartości między dowolnymi przykładami. Zmniejsz wymiarowość, stosując analizę głównych składowych na danych cech lub stosując klasyfikację spektralną w celu zmodyfikowania algorytmu klastrowania.

Klątwa wymiarowości i klasteryzacja widmowa

Na tych 3 wykresach widać, jak wraz ze wzrostem liczby wymiarów odchylenie standardowe odległości między przykładami maleje w porównaniu z średnią odległością między przykładami. Ta zbieżność oznacza, że w miarę zwiększania wymiarowości danych metoda k-średnich staje się mniej skuteczna w odróżnianiu przykładów. Nazywamy to klątwą wymiarowości.

Trzy wykresy przedstawiające, jak odchylenie standardowe odległości między przykładami maleje wraz ze wzrostem liczby wymiarów
Ilustracja 3. Przykład efektu przeklętwa wymiarowości. Każdy wykres pokazuje parzyste odległości między 200 losowymi punktami.

Możesz uniknąć tego spadku skuteczności, stosując zagnieżdżanie spektralne, które dodaje do algorytmu etapy wstępnego zgrupowania. Aby wykonać grupowanie spektralne:

  1. Zmniejsz wymiar danych cech za pomocą analizy PCA.
  2. Przekaż wszystkie punkty danych do podprzestrzeni o niższej wymiarowości.
  3. Utwórz klastry danych w tym podprzestrzeni za pomocą wybranego algorytmu.

Aby dowiedzieć się więcej o zagnębieniu spektralnym, przeczytaj artykuł Poradnik: zgłębiasty Clustering autorstwa Ulrike von Luxburg.