grupowanie
Transkrypt
grupowanie
Grupowanie • Wprowadzenie • Metody hierarchiczne • Modele mieszane (mixture models) • Metoda Expectation-maximization (EM) • Metody najmniejszych kwadratów • Kryteria jakości grupowania • Algorytm k-średnich • Zastosowania Statistical Pattern Recognition, Chapter 10 2 Wprowadzenie • Grupowanie: podział zbioru danych pomiarowych na rozłączne i zwarte grupy x2 x2 Grupowanie x1 x1 Statistical Pattern Recognition, Chapter 10 3 • Grupa powinna zawierać obiekty podobne do siebie • Obiekty należące do różnych grup powinny być od siebie znacząco różnić • Przestrzeń rozwiązań (liczba możliwych podziałów n obiektów na g grup) jest zbyt duża, nawet dla procedur typu branch and bound. Liczba podziałów n obiektów na g grup jest równa 1 g g −i g n (−1) i ∑ g! i =1 i • Przykładowo, dla n=100, g=5 rozwiązań jest 1067 dla n=60, g=2, rozwiązań jest 6 x 1017 Statistical Pattern Recognition, Chapter 10 4 Korzyści • redukcja ciągu uczącego (np. przez zastąpienie grupy jej reprezentantem) upraszcza procedury rozpoznawania • uzyskanie „naturalnej” struktury danych ułatwia m.in. dobór postaci modeli Statistical Pattern Recognition, Chapter 10 5 Metody hierarchiczne • Drzewo hierarchiczne – dendrogram zawierający zagnieżdżone grupy • • Na najwyższym poziomie wszystkie obiekty należą do jednej grupy Na najniższym poziomie każdy obiekt stanowi osobną grupę 4.0 2.0 1 2 3 5 6 4 0.0 odległość między klastrami 6.0 Statistical Pattern Recognition, Chapter 10 6 • Na osi pionowej odkładana jest odległość pomiędzy połączonymi grupami • Obcięcie drzewa w określonym miejscu daje podział na g rozłącznych grup • Krawędzie drzewa są uporządkowane tak, aby się nie przecinały Statistical Pattern Recognition, Chapter 10 7 • Algorytmy aglomeracyjne (agglomerative algorithms) • • • • rozpoczynają od tylu grup, ile jest obiektów w każdym kroku łączone są dwie najbardziej podobne grupy warunek stopu: wszystkie obiekty należą do jednej grupy Algorytmy deglomeracyjne (divisive algorithms) • • rozpoczynają od jednej grupy obejmującej wszystkie obiekty w każdym kroku dzielą grupę na dwie, najbardziej od siebie odległe • • warunek stopu: każdy obiekt stanowi osobną grupę rzadko stosowane ze względu na złożoność obliczeniową Statistical Pattern Recognition, Chapter 10 8 Ultrametryka • Na podstawie dendrogramu można określić nową macierz niepodobieństwa między obiektami, w której odległość między obiektami i, j jest odległością pomiędzy ich grupami • Odległość liczona na tej wysokości dendrogramu, na której grupy są połączone pojedynczą ścieżką • Procedurę poszukiwania dendrogramu można rozpatrywać jako transformację macierzy niepodobieństwa, która zawiera odległości d ij , w macierz zawierającą odległości d̂ ij , które spełniają nierówność ultrametryki: ( ∀i , j ,k dˆij ≤ max dˆik , dˆ jk ) Statistical Pattern Recognition, Chapter 10 9 Algorytm Single-link • Przyporządkowuje dwa obiekty o indeksach i0 i im do jednej grupy na poziomie d, jeżeli istnieje łańcuch obiektów pośrednich i0, i1, i2, …, im-1, im spełniający ∀ k =1,,m −1 d ik ,ik +1 ≤ d • Stosując podejście aglomeracyjne oraz przyjmując miarę odległości między grupami A i B jako odległość między ich d ij najbliższymi sąsiadami: d AB = i∈min A, j∈B otrzymujemy następującą sekwencję macierzy niepodobieństwa: Statistical Pattern Recognition, Chapter 10 1 2 3 4 5 6 1 0 4 13 24 12 8 2 0 10 22 11 10 3 0 7 3 9 4 0 6 18 5 0 8.5 6 0 10 • Macierz początkowa • • Najbliższe grupy to (3) i (5), więc łączone są w pojedynczą grupę (3,5) • Należy przeliczyć odległości: d1,(3,5 ) = min{d13 , d15 } = 12 d 2,(3,5 ) = min{d 23 , d 25 } = 10 Macierz w kolejnym kroku 1 2 1 0 4 2 0 (3, 5) 4 6 (3, 5) 12 10 0 4 d 4 , ( 3, 5 ) = 6 d 6,(3,5 ) = 8.5 6 24 8 22 10 6 8.5 0 18 0 Statistical Pattern Recognition, Chapter 10 1 2 (3, 5) 1 2 0 4 0 (3, 5) 12 10 0 4 6 24 8 22 10 6 8.5 4 6 • 0 18 0 11 • Najbliższe grupy to (1) i (2), więc łączone są w pojedynczą grupę (1,2) • Należy przeliczyć odległości: d (1, 2 ),(3,5 ) = min{ d13 , d 23 , d15 , d 25 } = 10 d (1, 2 ), 4 = min{ d14 , d 24 } = 22 Macierz niepodobieństwa w d (1, 2 ),6 = min{ d16 , d 26 } = 8 kolejnym kroku: (1, 2) (3, 5) 4 6 • (1, 2) 0 (3, 5) 4 6 10 22 8 0 6 8.5 0 18 0 Końcowy wynik (1, 2, 6) (3, 4, 5) • Najbliższe grupy to (4) i (3,5). Po ich połączeniu otrzymujemy macierz: (1, 2) (1, 2, 6) (3, 4, 5) 0 8.5 0 (3, 4, 5) 6 (1, 2) (3, 4, 5) 0 10 0 6 8 8.5 0 Statistical Pattern Recognition, Chapter 10 12 • W rezultacie otrzymujemy dendrogram 8.0 6.0 4.0 2.0 1 2 6 4 5 3 0.0 Statistical Pattern Recognition, Chapter 10 13 • Algorytm Single-link łączy kolejno grupy, które leżą blisko siebie Może to spowodować łączenie odrębnych grup, jeżeli pomiędzy nimi znajdą się przypadkiem jakieś nieliczne obiekty: x2 x1 Statistical Pattern Recognition, Chapter 10 14 • Można zrealizować algorytm Single-link korzystając z minimalnego drzewa rozpinającego (minimum spanning tree) • Drzewo rozpinające: istnieje połączenie (za pomocą jednej lub wielu krawędzi) między każdą parą wierzchołków oraz nie występują cykle • Minimalne drzewo rozpinające: dodatkowo suma długości wszystkich krawędzi jest minimalna x2 x2 6 6 4 3 4 5 5 2 1 0 • 4 3 4 0 2 2 2 6 4 x1 6 8 10 12 1 0 0 2 2 6 4 x1 6 8 10 12 Usunięcie z minimalnego drzewa rozpinającego wszystkich krawędzi dłuższych niż h daje grupowanie na poziomie h Statistical Pattern Recognition, Chapter 10 15 Algorytm Complete-link • Różnica między algorytmem Complete-ling a Single-link polega na stosowaniu innej miary odległości. • W algorytmie Complete-link odległości między grupami A i B wyznaczana jest jako odległość między ich najbardziej odległymi obiektami: d AB = max d ij i∈ A, j∈B Statistical Pattern Recognition, Chapter 10 16 • Dla danych z poprzedniego zadania pierwszy krok procedury daje następujący wynik: 1 2 3 4 5 6 1 0 4 13 24 12 8 2 0 10 22 11 10 3 0 7 3 9 4 0 6 18 5 0 8.5 6 0 Single-link 1 2 (3, 5) 4 1 2 (3, 5) 4 6 0 4 12 24 8 0 10 0 22 10 6 8.5 0 18 6 0 1 2 (3, 5) 4 6 1 2 0 4 0 (3, 5) 13 11 0 4 6 24 8 22 10 7 9 0 18 0 Statistical Pattern Recognition, Chapter 10 17 • Dendrogramy: dendrogram algorytmu Single-link dendrogram algorytmu Complete-link 8.0 20.0 6.0 15.0 4.0 10.0 2.0 1 2 6 4 5 3 5.0 0.0 1 2 6 4 3 5 0.0 Statistical Pattern Recognition, Chapter 10 18 • • Algorytm Single-link wykrywa odizolowane grupy Dendrogram wygenerowany przez algorytm Single-link, po przecięciu na poziomie h, daje grupy odizolowane od siebie przynajmniej o odległość h • Algorytm Complete-link wykrywa zwarte grupy Statistical Pattern Recognition, Chapter 10 19 Inne metody • Centroid distance : odległość między grupami jest zdefiniowana jako odległość pomiędzy średnimi w grupach • Uwaga: przy łączeniu grupy bardzo licznej z grupą mającą niewiele obiektów, średnia z całości leży blisko średniej z bardziej licznego klastra • Median distance : odległość między grupami jest zdefiniowana jako odległość pomiędzy medianami w grupach • Group average link : odległość między dwiema grupami jest zdefiniowana jako średnia wartość niepodobieństw między wszystkimi parami obiektów z różnych grup: d AB = 1 ni n j ∑d i∈ A, j∈B ij Statistical Pattern Recognition, Chapter 10 Modele mieszane (mixture models) • • 20 Każda grupa opisana jest innym rozkładem prawdopodobieństwa Model mieszany jest sumą rozkładów poszczególnych grup liczba grup = 3 Statistical Pattern Recognition, Chapter 10 21 • Mieszanina wielowymiarowych rozkładów Gaussa – najczęściej stosowana w grupowaniu Pojedynczy rozkład Gaussa Mieszanina dwóch rozkładów Gaussa Statistical Pattern Recognition, Chapter 10 22 Model mieszany g p (x) = ∑ π i p(x; θ i ) i =1 π i – współczynniki określające udział rozkładu i-tej grupy w modelu mieszanym, przy czym π i ≥ 0, ∑i =1 π i = 1 g p(x; θ i ) – wielowymiarowy rozkład prawdopodobieństwa, zależny od wektora parametrów θ i • Estymować należy trzy zestawy parametrów: • π i , θi , g - liczba grup Statistical Pattern Recognition, Chapter 10 • 23 Mieszanina rozkładów Gaussa g p (x) = ∑ π i p(x; μ i , Σ i ) i =1 gdzie • 1 (2π ) p 2 Σ i 12 1 T exp − (x − μ i ) Σ i−1 (x − μ i ) 2 Estymacja parametrów • • • p(x; μ i , Σ i ) = metoda maksymalnej wiarygodności metoda Expectation-Maximization (EM) Grupowanie • przypisanie obiektów do grup na podstawie estymowanych prawdopodobieństw a’posteriori przynależności do grup Obiekt x należy do grupy i, jeżeli ∀ j ≠i , j =1,, g π i p(x; θi ) ≥ π j p (x; θ j ) Statistical Pattern Recognition, Chapter 10 24 • Metoda Expectation-Maximization (EM) • W modelu mieszanym postaci g p (x) = ∑ π i p(x; θi ) i =1 { przyjmujemy rozkład Gaussa p (x; θ i ) , zatem θ i = μ j ; Σ j • } Dla n-elementowej próby X={x1, x2,…, xn} konstruujemy funkcję wiarygodności o postaci: L(Ψ ) = ∏∑ π i p (x i | θ j ) n g i =1 j =1 { gdzie Ψ = π 1 , , π g ; θ1 , , θ g } jest zbiorem parametrów Statistical Pattern Recognition, Chapter 10 25 • Dla ogólnego przypadku nie jest możliwe rozwiązanie układu ∇Ψ L = 0 • Funkcję wiarygodności L maksymalizuje się z wykorzystaniem ogólnej klasy procedur iteracyjnych, znanych jako EM ( expectation – maximization ). • Zostały one wprowadzone w kontekście estymacji brakujących danych • W kontekście zadania grupowania brakującymi danymi są numery klas (grup) Statistical Pattern Recognition, Chapter 10 26 • Dany jest zestaw n niekompletnych danych pomiarowych: x i y i = , z i i = 1, , n, gdzie zi jest wektorem zawierającym brakujące wartości oraz {y1, y2,…, yn} = Y • Dla danego wektora xi można zaproponować wiele różnych wektorów yi . • • Jedne mogą być bardziej, drugie mniej prawdopodobne. W zadaniu grupowania z użyciem modeli mieszanych wektor z i = [ z1i z gi ] T wskazuje numer grupy, tj. zji = 1 jeżeli xi należy do j-tej grupy, w przeciwnym przypadku zji = 0 Statistical Pattern Recognition, Chapter 10 27 Ogólna postać procedury EM • Maksymalizowana będzie funkcja wiarygodności L(Ψ ) = p(X | Ψ ) • Funkcję p(X | Ψ ) można wyznaczyć na podstawie funkcji p(Y | Ψ ) , której postać jest znana • Funkcję p(Y | Ψ ) uzyskujemy przez scałkowanie po wszystkich zbiorach Y, które mogą być uzupełnieniem zbioru X: n L(Ψ ) = p(X, Ψ ) = ∫ ∏ g (x i , z | Ψ ) dz i =1 Statistical Pattern Recognition, Chapter 10 28 Ogólna postać procedury EM • Począwszy od pewnego początkowego rozwiązania Ψ ( 0 ) { generowana jest sekwencja Ψ (m ) • } oszacowań parametrów Ψ Procedura polega na naprzemiennych wykonywaniu dwóch kroków: 1) E-step: wyznaczenie wartości kryterium jakości ) [ ( Q Ψ, Ψ ( m ) ≡ E log( g (Y | Ψ )) | X, Ψ ( m ) tzn. ( ) ( ] ) Q Ψ, Ψ ( m ) ≡ ∫ ∑ log( g (x i , z i | Ψ )) p Z | X, Ψ ( m ) dz1 dz n i ( (m) 2) M-step: znalezienie Ψ = Ψ ( m +1) maksymalizującego Q Ψ, Ψ • W kolejnych iteracjach zachodzi ( ) ( L Ψ ( m +1) ≥ L Ψ ( m ) ) ) Statistical Pattern Recognition, Chapter 10 29 ( Q Ψ, Ψ ( m +1) ( Q Ψ, Ψ ( m ) ) log(L(Ψ )) ) Ψ (m ) Ψ ( m +1) Ψ ( m + 2 ) Statistical Pattern Recognition, Chapter 10 30 • Algorytm EM dla mieszaniny rozkładów Gaussa • [ (m) Oznaczmy w ji ≡ E z ji | x i , Ψ 1) E-step: w ji = ] π (j m ) p (x i | θ (jm ) ) ∑π (m) k ( p x i | θ (km ) ) k 2) M-step: 1 n πˆ j = ∑ w ji n i =1 1 ˆμ j = nπˆ j ˆ = 1 Σ j nπˆ j ∑ w (x n i =1 ji n ∑w i =1 ji xi ˆ ˆ i − μ j )(x i − μ j ) T Statistical Pattern Recognition, Chapter 10 31 • Algorytm EM dla mieszaniny rozkładów Gaussa Statistical Pattern Recognition, Chapter 10 32 Metody najmniejszych kwadratów • Podział na grupy uzyskiwany jest w drodze maksymalizacji zadanego kryterium jakości grupowania • Kryterium jakości uwzględnia macierze rozproszeń wewnątrz grup i między grupami Statistical Pattern Recognition, Chapter 10 33 • Średnie i kowariancje • • Dana jest n-elementowa próba x1, x2,…, xn • Macierz kowariancji z próby Średnia z próby 1 n m = ∑ xi n i =1 n ˆΣ = 1 ∑ (x − m ) (x − m )T i i n i =1 • • Liczba obiektów w j-tej grupie 1 dla x i ∈ grupa j n n j = ∑i =1 zij , gdzie zij = w przec. przyp 0 Średnia w j-tej grupie mj = 1 nj ∑ n z xi i =1 ij Statistical Pattern Recognition, Chapter 10 34 • Macierze rozproszenia (scatter matrices) • Macierz rozproszenia wewnątrz grup (pooled within-group scatter matrix) 1 g n T SW = ∑∑ zij (x i − m j )(x i − m j ) n j =1 i =1 • Macierz rozproszenia między grupami (between-group scatter matrix) nj T ˆ S B = Σ − SW = ∑ (m j − m )(m j − m ) j =1 n g Statistical Pattern Recognition, Chapter 10 • 35 Kryteria jakości grupowania • Ślad macierzy SW 2 1 g n 1 g Tr (SW ) = ∑∑ zij x i − m j = ∑ S j n j =1 i =1 n j =1 gdzie Sj to suma kwadratów odchyleń od średniej w j-tej grupie. Minimalizacja kryterium Tr(SW) oznacza minimalizację całkowitej sumy kwadratów odchyleń od średniej wewnątrz grup. • Iloraz SW ˆ Σ Jest to kryterium niezmiennicze ze względu na nieosobliwe (nonsingular) transformacje liniowe (czyli takie, które mają odwrotność). Dla danej próby minimalizacja kryterium SW ˆ jest Σ równoważna podziałowi minimalizującemu SW , ponieważ macierz Σ̂ nie zależy od podziału na grupy. Statistical Pattern Recognition, Chapter 10 36 • Kryteria jakości grupowania • ( Kryterium Tr SW−1S B ) Maksymalizacja tego kryterium prowadzi go grup o kształcie hiperelipsoidalnym (ogólniejsze od grup hipersferycznych). Odpowiada to przyjęciu metryki Mahalanobisa w miejsce Euklidesowej. Jest to kryterium niezmiennicze ze względu na nieosobliwe transformacje. • ( Kryterium Tr Σˆ −1SW ) Minimalizacja kryterium kwadratowego dla danych unormowanych w taki sposób, że macierz rozproszenia jest macierzą jednostkową Statistical Pattern Recognition, Chapter 10 37 • Algorytm k-średnich (k-means) • • • Algorytm znajduje rozwiązanie suboptymalne Minimalizacja kryterium Tr(SW) przez podział danych na k grup Wykonywane są naprzemiennie dwie procedury • obiekty przydzielane są do grupy, której środek leży najbliżej (odległość Euklidesowa) • • dla wykonanego przydziału wyznaczane są nowe średnie grup Warunek stopu: w kolejnych iteracjach nie udaje się zmniejszyć wartości kryterium jakości Statistical Pattern Recognition, Chapter 10 38 1) 0) x2 x2 x1 x1 2) 3) x2 x2 x1 x1 Statistical Pattern Recognition, Chapter 10 39 x2 5) 4) x2 x1 x1 6) 7) x2 x2 x1 x1 Statistical Pattern Recognition, Chapter 10 40 • Algorytm k-średnich jest szczególnym przypadkiem algorytmu Expectation-Maximization Statistical Pattern Recognition, Chapter 10 41 • Rozmyty algorytm k-średnich (Fuzzy k-means) • Przynależność obiektów do grup określona jest za pomocą funkcji przynależności, którą reprezentuje zestaw parametrów μji (i = 1, 2, …, n; j = 1, 2, …, g) μji – stopień przynależności i-tego obiektu do j-tej grupy • Minimalizowane jest kryterium jakości: n g r µ ∑i =1 ji xi n J r = ∑∑ µ rji x i − m j , 2 gdzie m j = i =1 j =1 ∑ n i =1 µ r ji , mj jest centroidą j-tej grupy oraz r ≥ 1 jest stopniem rozmycia grup (dla r = 1 μji przyjmuje wyłącznie wartości 0 i 1, co sprowadza algorytm do zwykłego algorytmu k-średnich) Statistical Pattern Recognition, Chapter 10 42 1) Ustal wartość r, wybierz początkowe wartości μji 2) Wyznacz centra mj grup 3) Oblicz odległości d ij = x i − m j 4) Wyznacz wartości funkcji przynależności • Jeżeli dil = 0 dla pewnego l to μli = 1 • Jeżeli j≠i to μli = 0 • W pozostałych przypadkach µij = 1 ∑ (d k =1 d ik ) 2 r −1 g ij 5) Jeżeli nie zachodzi warunek stopu, przejdź do kroku 2) Pattern Classification, Chapter 6 43 Zastosowania • • Segmentacja obrazów Rozpoznawanie pisma odręcznego (jedna litera może być pisana na różne sposoby – każdemu sposobowi odpowiada w przestrzeni cech pewna grupa) • • • • • Grupowanie książek i dokumentów Eksploracja danych w sieci www Odnajdywanie struktur w dużych bazach danych Podział pacjentów na grupy Grupowanie genów na podstawie danych o ich ekspresji Pattern Classification, Chapter 6