Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 1 5 Standardizacija podataka Predavanja i vježbe 8 Ako su podaci zadani s više obilježja (atributa), ta se obilježja mogu međusobno značajno razlikovati, jer primjerice dolaze iz različitih domena Prisjetimo se primjera s početka gdje smo studente prikazivali prosjekom ocjena (koji dolaze iz segmenta [2, 5]), te brojem ECTS bodova (dolaze iz segmenta [45, 60]) Prirodno je očekivati da obilježja nisu ravnopravna te je općenito prije primjene neke metode za klasteriranja, podatke potrebno standaradizirati U nastavku navodimo nekoliko različitih načina standardizacije podataka koji se navode u literaturi, a pri tome pratimo ([1]) U tu svrhu skupu podataka A = {a i R n : i = 1,, m} pridružimo matricu a T α 11 α 12 α 1n A = 1 α 21 α 22 α 2n = am T α m1 α m2 α mn U literaturi postoji različiti načini standardizacije podataka i odabir standardizacije ovisi o prirodi podataka U nastavku navodimo jedan od načina Pretpostavimo u tu svrhu da su zadani brojevi L j R te M j > 0, j = 1,, n Brojeve L j zovemo lokacijska mjera, a brojeve M j mjera skaliranja Matrici A pridružimo stadardiziranu matricu C A oblika c T γ 11 γ 12 γ 1n C A = 1 γ 21 γ 22 γ 2n = c T, m γ m1 γ m2 γ mn pri čemu su γ ij = α ij L j M j, i = 1,, m, j = 1,, n Različiti izbori lokacijske mjere L j te mjera sklairanja M j generiraju različite metode standardizacije podataka Za j = 1,, n označimo s stadardizacija 1 (z-score) ([2]) ᾱ j = 1 m α ij R j = max α ij min α ij,,m,,m ( ) 1 2 1 σ j = (α ij ᾱ j ) 2 m 1 L j = ᾱ j, M j = σ j Uočimo da standardizacijom slučajne varijabla X na ovaj način onna ima očekivanje 0 te varijancu 1 Primijetimo da se pri tome izgubila informacija o skaliranju i lokaciji originalnih podataka
Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 2 standardizacija 2 (USDT standardizacija) ([1]) L j = 0, M j = σ j Slučajna varijabla X standardizirana na ovaj način ima varijancu 1 Kod ove standardizacije izgubila se informacija o skaliranju originalnih podataka standardizacija 3 (maksimum standardizacija) ([3]) L j = 0, M j = max,,m α ij Slučajna varijabla X standardizirana na ovaj način ima očekivanje σ X max(x), pri čemu je σ X standardna devijacija originalne slučajne varijable X standardizacija 4 ([3]) X max(x) te standardnu devijaciju L j = 0, M j = R j Slučajna varijabla X standardizirana na ovaj način ima očekivanje devijaciju σ X max(x) min(x) standardizacija 5 ([3]) X max(x) min(x) te standardnu L j = min,,m α ij, M j = R j Slučajna varijabla X standardizirana na ovaj način ima očekivanje devijaciju σ X max(x) min(x) X min(x) max(x) min(x) te standardnu standardizacija 6 ([3]) L j = 0, M j = α ij standardizacija 7 (medijan standradizacija) ([3]) L j = med (α ij), M j = 1,,m Primjer 1 Neka su c 1 = [5, 4] T, c 2 = [4, 6] T, c 3 = [3, 2] T, c 4 = [6, 6] T te u okolini svake od njih generirajte m slučajnih točaka iz normalne distribuciji s varijancom σ 2 Neka je skup podataka A unija svih tako dobivenih točaka Za različite brojeve m te σ napravite sve navedne transformacije te grafički prikažite transformirane podatke Primjer 2 Za podatke IRIS - http: // archive ics uci edu/ ml/ datasets ) napravite sve prethodne standardizacije
Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 3 6 Klasteriranje skupa podataka s jednim obilježjem Najprije se podsjetimo definicije klastera Definicija 1 Neka je A skup s m 2 elemenata i 1 k m Rastav skupa A na k podskupova π 1,, π k, tako da vrijedi k (i) π i = A, (ii) π i πj =, i j, (iii) m j := π j 1, j = 1,, k zovemo particija skupa A, a skupove π 1,, π k klasteri (grupe) Particiju zapisujemo na sljedeći način Π = π,, π k Skup svih particija skupa A sastavljenih od k klastera koje zadovoljavaju (i)-(iii) označit ćemo s P(A, k) Neka je A = {a 1,, a m } skup jednodimenzionalnih podataka, odnosno podataka koji su zadani samo s jednim obilježjem Promatramo problem grupiranja takvih podatka u k klastera, koji zadovoljavaju Definiciju 1 Ako je zadana neka kvazimetrička funkcija d: R R R +, onda svakom klasteru π j Π možemo pridružiti njegov centar-reprezentant c j na sljedeći način c j = c(π j ) := argmin x R d(x, a i ) (1) Nadalje, ako na skupu svih particija P(A, k) skupa A sastavljenih od k klastera definiramo kriterijsku funkciju cilja F : P(A, k) R +, F(Π) = k a i π j d(c j, a i ), (2) onda d-optimalnu particiju Π tražimo rješavanjem sljedećeg optimizacijskog problema F(Π ) = min F(Π) (3) Π P(A,k) Primijetite da na taj način optimalna particija Π ima svojstvo da je suma "rasipanja" (suma odstupanja) elemenata klastera oko svog centra minimalna Na taj način nastojimo postići što bolju unutrašnju kompaktnost i separiranost klastera Obrnuto, za dani skup centara c 1,, c k R, uz primjenu principa minimalnih udaljenosti možemo definirati particiju Π = {π 1,, π k } skupa A na sljedeći način: π j = π(c j ) = {a A : d(c j, a) d(c s, a), s = 1,, k}, j = 1,, k, (4)
Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 4 pri čemu treba voditi računa o tome da svaki element skupa A pripadne samo jednom klasteru Zato se problem traženja optimalne particije skupa A može svesti na sljedeći optimizacijski problem min F (c 1,, c k ), F (c 1,, c k ) = c 1,,c k R min d(c j, a i ), (5),,k gdje je F : R k R + Zaista, ako su zadani centri-reprezentatni c 1,, c k R, onda principom minimalnih udaljenosti možemo odrediti klastere π 1,, π k tako da je π j = π(c j ) = {a i : d(c j, a i ) d(c s, a i ), s = 1,, k}, j = 1,, k, odakle dobivamo da za a i π j vrijedi min{d(c 1, a i ),, d(c k, a i )} = d(c j, a i ), odnosno gdje je Π = {π 1,, π k } Uočimo još da je F (c 1,, c k ) := = min{d(c 1, a i ),, d(c k, a i )} k d(c j, a i ) =: F(Π), π j = π(c j ) = {a i A: j = argmin d(c s, a i )} s=1,,k Općenito, funkcija F nije konveksna ni diferencijabilna, a može imati više lokalnih minimuma [1] 61 Kriterij najmanjih kvadrata Ako je d: R R R +, d(a, b) = (a b) 2 LS-kvazimetrička funkcija, centri c 1,, c k klastera π 1,, π k određeni su s c j = argmin u R a funkcija cilja (2), odnosno (5), s (a i u) 2 = 1 π a j i π j F(Π) = k a i, j = 1,, k, (6) (c j a i ) 2 (7) Primjer 3 Zadan je skup A = {0, 3, 6, 9} Treba pronaći sve njegove dvočlane particije koje zadovoljavaju Definiciju 1, odrediti pripadne centre i vrijednosti kriterijske funkcije cilja F u smislu najmanjih kvadrata Broj svih dvočlanih particija ovog skupa je 2 m 1 1 = 7, a kao što se vidi iz Tablice 1 LS-optimalna particija u ovom slučaju je {{0, 3}, {6, 9}} jer na njoj kriterijska funkcija cilja F zadana s (7) postiže globalni minimum
Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 5 π 1 π 2 c 1 c 2 F({π 1, π 2 }) G({π 1, π 2 }) {0} {3,6,9} 0 6 0+18 =18 81/4+27/4 = 27 {3} {0,6,9} 3 5 0+42 =42 9/4+3/4 = 3 {6} {0,3,9} 6 4 0+42 =42 9/4+3/4 = 3 {9} {0,3,6} 9 3 0+18 =18 81/4+27/4 = 27 {0,3} {6,9} 3/2 15/2 9/2+9/2 =9 18+18 = 36 {0,6} {3,9} 3 6 18+18 =36 9/2+9/2 = 9 {0,9} {3,6} 9/2 9/2 81/2+9/2 =45 0+0 = 0 Tablica 1: Particije, centri i vrijednosti funkcije cilja F i G 62 Dualni problem Sljedeća lema pokazuje da je "rasipanje" skupa A oko njegovog centra c jednako zbroju "rasipanja" klastera π j, j = 1,, k, oko njihovih centara c j, j = 1,, k, i težinskoj sumi kvadrata odstupanja centra c od centara c j, pri čemu su težine određene veličinom skupova π j Lema 1 Neka je A = {a 1,, a m } skup podataka, a Π = {π 1,, π k } neka particija s klasterima π 1,, π k duljine m 1,, m k Neka je nadalje c = 1 m gdje je m j = π j Tada vrijedi a i, c j = 1 m j a i, j = 1,, k, (8) gdje su (a i c) 2 = F(Π) + G(Π), (9) F(Π) = G(Π) = k (c j a i ) 2, (10) k m j (c j c) 2 (11) Dokaz Primijetimo najprije da za svaki x R vrijedi (a i x) 2 = (a i c j ) 2 + m j (c j x) 2, j = 1,, k (12) Naime, kako je (a i c j )(c j x) = (c j x) (a i c j ) = 0, vrijedi a i π j a i π j Ako u (12) umjesto x stavimo c = 1 m (a i x) 2 = ((a i c j ) + (c j x)) 2 a i π j a i π j = (a i c j ) 2 + m j (c j x) 2 a i π j a i i zbrojimo sve jednakosti, dobivamo (9)
Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 6 Iz Leme 1 neposredno slijedi tvrdnja sljedećeg teorema [4] Teorem 1 Uz oznake kao u Lemi 1 vrijedi: argmin F(Π) = argmax G(Π), Π P(A,k) Π P(A,k) To znači da u cilju pronalaženja LS-optimalne particije, umjesto minimizacije funkcije F zadane s (7), odnosno (10), možemo maksimizirati funkciju G Primjer 4 Skup A = {0, 3, 6, 9} iz Primjera 3 ima 7 različitih particija i za sve njih u Tablici 1 prikazana je vrijednost kriterijske funkcije cilja G Kao što se vidi iz Tablice 1 funkcija G prima maksimalnu vrijednost na optimalnoj particiji {{0, 3}, {6, 9}}, što je u skladu s Teoremom 1 U nastavku navodimo k-means algoritam za određivanje lokalno optimalne particije Algoritam se sastoji od dva koraka, koji se izmjenjuju: korak pridruživanja i korak korekcije U koraku pridruživanja se na osnovi zadanih centara-reprezentanata principom minimalnih udaljenosti određuju klasteri, dok se u koraku korekcije za svaki klaster odredđuje centar-reprezentant Standardni k-means algoritam 1 Učitati m, k, elemente skupa A Izabrati: min a i c 1 < < c k max a i ; 2 Priduživanje (assignment step) π j = {a i A : d(c j, a i ) d(c s, a i ), s = 1,, k}, j = 1,, k; 3 Korekcija (update step) c j = argmin d(x, a i ), j = 1,, k; x R 4 Koraci 2 i 3 se izmjenjuju tako dugo dok se ili centri ne poklope ili dok se particije ne poklope ili dok vrijednost funkcije cilja ne prestane opadati Pobrojimo nekoliko važnih svojstava k-means algoritma Iz konstrukcije je jasno da algoritam snižava vrijednost minimizacijske funkcije F te F Budući da je domena od F diskretan skup P(A, k) algoritam završava u konačno mnogo koraka Algoritam nažalost ne daje globalno optimalnu particiju te je algoritam potrebno pokretati više puta s različitim slučajnim početnim aproksimacijama Particiju koja među tim pokretanjima daje
Grupiranje podataka: pristupi, metode i primjene, ljetni semestar 2013/2014 7 najmanju vrijednost funkcije cilja možemo smatrati dobrom aproksimacijom globalno optimalne particije Može se dogoditi da u nekom koraku algoritma neki od klastera postane prazan ili se podudare dva centra Na taj način umjesto k klastera dobivamo l, l < k klastera Može se pokazati da se u tom slučaju uvijek može naći bolja lokalno optimalna particija Primjer 5 Zadani su podaci A = {1, 2, 6, 7, 9} te neka je k = 2 Primjenom prethodnog algoritma dobivamo Rbr c 1 c 2 π 1 π 2 Funkcija cilja F 1 4 8 {1, 2, 6} {7, 9} 19 2 3 8 {1, 2} {6, 7, 9} 16 3 3 2 22 31 3 {1, 2} {6, 7, 9} 6 5167 Literatura [1] G Gan, C Ma, J Wu, Data clustering : theory, algorithms, and applications, SIAM, Philadelphia, 2007 [2] A Jain, R Dubes, Algorithms for Clustering Data, Englewood Cliffs, NJ: Prentice-Hall, 1988 [3] G Milligan, M Cooper, A study of standardization of variables in cluster analysis, Journal of Classification, 5(1988), 181-204 [4] H Späth, Cluster-Formation und Analyse, R Oldenburg Verlag, München, 1983