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

Podobne dokumenty