logo

Klastrowanie w uczeniu maszynowym

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.

Klastrowanie w uczeniu maszynowym

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 Klastrowanie oparte na gęstości Klastrowanie oparte na modelu dystrybucji Klastrowanie hierarchiczne Klastrowanie rozmyte

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 w uczeniu maszynowym

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 w uczeniu maszynowym

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 w uczeniu maszynowym

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 w uczeniu maszynowym

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:

    Algorytm K-średnich:Algorytm k-średnich jest jednym z najpopularniejszych algorytmów grupowania. Klasyfikuje zbiór danych, dzieląc próbki na różne skupienia o równych wariancjach. W tym algorytmie należy określić liczbę klastrów. Jest szybki, wymaga mniejszej liczby obliczeń i ma liniową złożoność NA). Algorytm przesunięcia średniego:Algorytm przesunięcia średniego próbuje znaleźć gęste obszary w gładkiej gęstości punktów danych. Jest to przykład modelu opartego na centroidach, który polega na aktualizowaniu kandydatów na centroidę jako środek punktów w danym obszarze.Algorytm DBSCAN:To oznacza do klastrowania przestrzennego aplikacji z hałasem w oparciu o gęstość . Jest to przykład modelu opartego na gęstości, podobnego do przesunięcia średniego, ale mającego pewne niezwykłe zalety. W algorytmie tym obszary o dużej gęstości oddzielane są od obszarów o małej gęstości. Z tego powodu klastry można znaleźć w dowolnym kształcie.Klastrowanie maksymalizujące oczekiwania przy użyciu GMM:Algorytm ten może być stosowany jako alternatywa dla algorytmu k-średnich lub w przypadkach, w których K-średnie mogą zawieść. W GMM zakłada się, że punkty danych mają rozkład Gaussa.Aglomeracyjny algorytm hierarchiczny:Algorytm hierarchiczny aglomeracyjny wykonuje grupowanie hierarchiczne od dołu do góry. W tym przypadku każdy punkt danych jest początkowo traktowany jako pojedynczy klaster, a następnie sukcesywnie łączony. Hierarchię klastrów można przedstawić w postaci struktury drzewiastej.Propagacja powinowactwa:Różni się od innych algorytmów grupowania tym, że nie wymaga określania liczby skupień. W tym przypadku każdy punkt danych wysyła wiadomość między parą punktów danych aż do zbieżności. Ma O(N2T) złożoność czasową, co jest główną wadą tego algorytmu.

Zastosowania klastrowania

Poniżej znajdują się niektóre powszechnie znane zastosowania techniki klastrowania w uczeniu maszynowym:

    W identyfikacji komórek nowotworowych:Algorytmy grupowania są szeroko stosowane do identyfikacji komórek nowotworowych. Dzieli zbiory danych dotyczących nowotworów i nienowotworów na różne grupy.W wyszukiwarkach:Wyszukiwarki również pracują nad techniką grupowania. Wynik wyszukiwania pojawia się na podstawie obiektu najbliższego wyszukiwanemu zapytaniu. Robi to poprzez grupowanie podobnych obiektów danych w jedną grupę, która jest oddalona od innych, odmiennych obiektów. Dokładny wynik zapytania zależy od jakości użytego algorytmu grupowania.Segmentacja klientów:Wykorzystuje się go w badaniach rynku do segmentacji klientów na podstawie ich wyborów i preferencji.W biologii:W biologii wykorzystuje się ją do klasyfikacji różnych gatunków roślin i zwierząt przy użyciu techniki rozpoznawania obrazu.W użytkowaniu gruntów:Technika grupowania wykorzystywana jest do identyfikacji obszarów podobnego użytkowania gruntów w bazie danych GIS. Bardzo przydatne może być ustalenie, w jakim celu dany grunt powinien być wykorzystywany, czyli do jakiego celu jest bardziej odpowiedni.