Klastrowanie lub analiza skupień to technika uczenia maszynowego, która grupuje nieoznakowany zbiór danych. Można to zdefiniować jako „Sposób grupowania punktów danych w różne klastry składające się z podobnych punktów danych. Obiekty wykazujące możliwe podobieństwa pozostają w grupie, która ma mniejsze podobieństwa lub nie ma ich wcale z inną grupą.
Robi to poprzez znalezienie podobnych wzorców w nieoznakowanym zbiorze danych, takich jak kształt, rozmiar, kolor, zachowanie itp., i dzieli je według obecności i braku tych podobnych wzorców.
To jest uczenie się bez nadzoru dlatego algorytm nie zapewnia nadzoru i zajmuje się nieoznakowanym zbiorem danych.
Po zastosowaniu tej techniki grupowania każdy klaster lub grupa otrzymuje identyfikator klastra. System ML może wykorzystać ten identyfikator, aby uprościć przetwarzanie dużych i złożonych zbiorów danych.
Powszechnie stosowana jest technika grupowania analiza danych statystycznych.
Uwaga: klastrowanie jest podobne do algorytm klasyfikacji , ale różnica polega na rodzaju zbioru danych, którego używamy. W klasyfikacji pracujemy z oznaczonym zbiorem danych, natomiast w klastrowaniu pracujemy z nieoznakowanym zbiorem danych.
Przykład : Przyjrzyjmy się technice grupowania na prawdziwym przykładzie centrum handlowego: Kiedy odwiedzamy dowolne centrum handlowe, możemy zaobserwować, że rzeczy o podobnym zastosowaniu są zgrupowane razem. Tak jak t-shirty są pogrupowane w jednym dziale, a spodnie w innych działach, podobnie w dziale warzywnym jabłka, banany, mango itp. są pogrupowane w oddzielnych działach, dzięki czemu możemy łatwo się zorientować. Technika grupowania działa również w ten sam sposób. Innymi przykładami grupowania jest grupowanie dokumentów według tematu.
Technika grupowania może być szeroko stosowana w różnych zadaniach. Oto niektóre z najczęstszych zastosowań tej techniki:
- Segmentacja rynku
- Statystyczna analiza danych
- Analiza sieci społecznościowych
- Segmentacja obrazu
- Wykrywanie anomalii itp.
Oprócz tych ogólnych zastosowań jest on używany przez Amazonka w swoim systemie rekomendacji, aby zapewnić rekomendacje na podstawie wcześniejszych wyszukiwań produktów. Netflixa wykorzystuje tę technikę również do polecania użytkownikom filmów i seriali internetowych na podstawie historii oglądania.
Poniższy diagram wyjaśnia działanie algorytmu grupowania. Widzimy, że różne owoce są podzielone na kilka grup o podobnych właściwościach.
Rodzaje metod grupowania
Metody grupowania dzielimy na: Klastrowanie twarde (punkt danych należy tylko do jednej grupy) i Klastrowanie miękkie (punkty danych mogą należeć również do innej grupy). Istnieją jednak także inne podejścia do klastrowania. Poniżej znajdują się główne metody grupowania stosowane w uczeniu maszynowym:
Klaster partycjonujący
Jest to rodzaj grupowania, który dzieli dane na niehierarchiczne grupy. Znany jest również jako metoda oparta na centroidach . Najczęstszym przykładem klastrowania partycjonującego jest Algorytm grupowania K-średnich .
W tym typie zbiór danych jest podzielony na zbiór k grup, gdzie K służy do określenia liczby predefiniowanych grup. Środek klastra jest tworzony w taki sposób, że odległość pomiędzy punktami danych jednego klastra jest minimalna w porównaniu do środka ciężkości innego klastra.
Klastrowanie oparte na gęstości
Metoda grupowania oparta na gęstości łączy obszary o dużej gęstości w klastry i tworzone są dowolnie ukształtowane rozkłady, o ile można połączyć gęsty obszar. Algorytm ten robi to poprzez identyfikację różnych klastrów w zbiorze danych i łączy obszary o dużej gęstości w klastry. Gęste obszary w przestrzeni danych są oddzielone od siebie rzadszymi obszarami.
Algorytmy te mogą napotkać trudności w grupowaniu punktów danych, jeśli zbiór danych ma różną gęstość i duże wymiary.
Klastrowanie oparte na modelu dystrybucji
W metodzie grupowania opartej na modelu dystrybucji dane są dzielone na podstawie prawdopodobieństwa przynależności zbioru danych do określonej dystrybucji. Grupowanie odbywa się poprzez wspólne założenie pewnych rozkładów Rozkład Gaussa .
Przykładem tego typu jest Algorytm grupowania oczekiwań-maksymalizacji wykorzystujący modele mieszanin gaussowskich (GMM).
Klastrowanie hierarchiczne
Klastrowanie hierarchiczne może być stosowane jako alternatywa dla klastrowania partycjonowanego, ponieważ nie ma wymogu wstępnego określenia liczby klastrów, które mają zostać utworzone. W tej technice zbiór danych dzieli się na klastry, tworząc strukturę przypominającą drzewo, zwaną także a dendrogram . Można wybrać obserwacje lub dowolną liczbę skupień poprzez przycięcie drzewa na odpowiednim poziomie. Najczęstszym przykładem tej metody jest Aglomeracyjny algorytm hierarchiczny .
Klastrowanie rozmyte
Klastrowanie rozmyte to rodzaj metody miękkiej, w której obiekt danych może należeć do więcej niż jednej grupy lub klastra. Każdy zbiór danych ma zestaw współczynników przynależności, które zależą od stopnia przynależności do klastra. Algorytm rozmytych C-średnich jest przykładem tego typu grupowania; czasami jest on również nazywany algorytmem rozmytych k-średnich.
Algorytmy klastrowania
Algorytmy grupowania można podzielić na podstawie ich modeli, które wyjaśniono powyżej. Opublikowano różne typy algorytmów grupowania, ale tylko kilka z nich jest powszechnie stosowanych. Algorytm grupowania opiera się na rodzaju danych, których używamy. Na przykład niektóre algorytmy muszą odgadnąć liczbę skupień w danym zbiorze danych, podczas gdy inne muszą znaleźć minimalną odległość między obserwacją zbioru danych.
Tutaj omawiamy głównie popularne algorytmy klastrowania, które są szeroko stosowane w uczeniu maszynowym:
Zastosowania klastrowania
Poniżej znajdują się niektóre powszechnie znane zastosowania techniki klastrowania w uczeniu maszynowym: