Metody kategorizace dat

Podobné dokumenty
Vysoká škola báňská Technická univerzita Ostrava. Fakulta metalurgie a materiálového inženýrství

Vícerozměrné statistické metody

AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza

Státnice odborné č. 20

Statistické metody v ekonomii. Ing. Michael Rost, Ph.D.

Shluková analýza dat a stanovení počtu shluků

Algoritmy pro shlukování prostorových dat

Fakulta chemicko-technologická Katedra analytické chemie. 3.2 Metody s latentními proměnnými a klasifikační metody

Shluková analýza. 1 Úvod Formulace úlohy Typy metod shlukové analýzy... 2

Modifikace algoritmu FEKM

Úvodem Dříve les než stromy 3 Operace s maticemi

Obsah přednášky Jaká asi bude chyba modelu na nových datech?

Shluková analýza, Hierarchické, Nehierarchické, Optimum, Dodatek. Učení bez učitele

Shluková analýza. Jiří Militky. Analýza experimentálních dat V. Červeně označené slide jsou jen pro doplnění informací a nezkouší se.

Profilování vzorků heroinu s využitím vícerozměrné statistické analýzy

Přednáška 13 Redukce dimenzionality

Kontingenční tabulky v MS Excel 2010

NADSTAVBOVÝ MODUL MOHSA V1

UČENÍ BEZ UČITELE. Václav Hlaváč

Rosenblattův perceptron

Jana Vránová, 3. lékařská fakulta UK

NÁHODNÁ ČÍSLA. F(x) = 1 pro x 1. Náhodná čísla lze generovat některým z následujících generátorů náhodných čísel:

StatSoft Shlukování podobných

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

1 Tyto materiály byly vytvořeny za pomoci grantu FRVŠ číslo 1145/2004.

Aplikovaná numerická matematika

Úloha - rozpoznávání číslic

Řízení projektů. Konstrukce síťového grafu pro řízení projektů Metoda CPM Metoda PERT

Univerzita Pardubice 8. licenční studium chemometrie

Matematika III. 27. listopadu Vysoká škola báňská - Technická univerzita Ostrava. Matematika III

Reporting. Ukazatele je možno definovat nad libovolnou tabulkou Helios Orange, která je zapsána v nadstavbě firmy SAPERTA v souboru tabulek:

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Číselné charakteristiky a jejich výpočet

Zpracování náhodného výběru. Ing. Michal Dorda, Ph.D.

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Algoritmizace prostorových úloh

1. Náhodný vektor (X, Y ) má diskrétní rozdělení s pravděpodobnostní funkcí p, kde. p(x, y) = a(x + y + 1), x, y {0, 1, 2}.

Univerzita Pardubice. Fakulta ekonomicko-správní

Základy popisné statistiky

Dolování asociačních pravidel

Cvičná bakalářská zkouška, 1. varianta

Regresní analýza 1. Regresní analýza

Kartografické stupnice. Přednáška z předmětu Tematická kartografie (KMA/TKA) Otakar Čerba Západočeská univerzita

Statistika pro geografy

Poznámky k předmětu Aplikovaná statistika, 4. téma

7. Rozdělení pravděpodobnosti ve statistice

KLASIFIKACE EKG VYUŽITÍM SHLUKOVÉ ANALÝZY

Miroslav Čepek

Tento příklad popíše asi nejzákladnější promoci. Kdyţ si zákazník koupí 3 kusy, dva kusy zaplatí a jeden dostane zdarma.

Univerzita Pardubice. Fakulta chemicko-technologická Katedra analytické chemie. Licenční studium Statistické zpracování dat

OPTIMALIZACE. (přehled metod)

Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT

Asociativní sítě (paměti) Asociace známého vstupního vzoru s daným výstupním vzorem. Typická funkce 1 / 44

Popisná statistika kvantitativní veličiny

E(X) = np D(X) = np(1 p) 1 2p np(1 p) (n + 1)p 1 ˆx (n + 1)p. A 3 (X) =

Matematika III. 4. října Vysoká škola báňská - Technická univerzita Ostrava. Matematika III

Křivky a plochy technické praxe

Poznámky k předmětu Aplikovaná statistika, 4. téma

Metodologie pro Informační studia a knihovnictví 2

ANALÝZA A KLASIFIKACE DAT. Institut biostatistiky a analýz

Vícerozměrné statistické metody

Vícerozměrné statistické metody

Simulace. Simulace dat. Parametry

Cvičení 5 - Inverzní matice

8. přednáška z předmětu GIS1 Rastrový datový model a mapová algebra

Náplň. v Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění

Kategorická data METODOLOGICKÝ PROSEMINÁŘ II TÝDEN 7 4. DUBNA dubna 2018 Lukáš Hájek, Karel Höfer Metodologický proseminář II 1

AVDAT Nelineární regresní model

Programy na PODMÍNĚNÝ příkaz IF a CASE

Pokročilé neparametrické metody. Klára Kubošová

Moderní systémy pro získávání znalostí z informací a dat

Kontingenční tabulky, korelační koeficienty

Metodologie pro Informační studia a knihovnictví 2

Základní spádové metody

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

METODY DOLOVÁNÍ V DATECH DATOVÉ SKLADY TEREZA HYNČICOVÁ H2IGE1

Vícerozměrná rozdělení

, Brno Hanuš Vavrčík Základy statistiky ve vědě

2. úkol MI-PAA. Jan Jůna (junajan)

Kombinatorická minimalizace

2.1.4 Funkce, definiční obor funkce. π 4. Předpoklady: Pedagogická poznámka: Následující ukázky si studenti do sešitů nepřepisují.

Popisná statistika. Komentované řešení pomocí MS Excel

Příklad 2: Obsah PCB v játrech zemřelých lidí. Zadání: Data: Program:

STATISTICKÉ CHARAKTERISTIKY

5. Náhodná veličina. 2. Házíme hrací kostkou dokud nepadne šestka. Náhodná veličina nabývá hodnot z posloupnosti {1, 2, 3,...}.

VÍCEKRITERIÁLNÍ ROZHODOVANÍ

Kontingenční tabulky, korelační koeficienty

Microsoft Office. Excel vyhledávací funkce

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Datové struktury 2: Rozptylovací tabulky

Triangulace. Význam triangulace. trojúhelník je základní grafický element aproximace ploch předzpracování pro jiné algoritmy. příklad triangulace

Numerické řešení variačních úloh v Excelu

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1

U Úvod do modelování a simulace systémů

Mnohorozměrná statistická data

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Aproximace funkcí. x je systém m 1 jednoduchých, LN a dostatečně hladkých funkcí. x c m. g 1. g m. a 1. x a 2. x 2 a k. x k b 1. x b 2.

Jiří Neubauer. Katedra ekonometrie, FVL, UO Brno kancelář 69a, tel

Mnohorozměrná statistická data

Transkript:

MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY Metody kategorizace dat Bakalářská práce Jiří Kučera Brno, jaro 2008

Prohlášení Prohlašuji, ţe tato práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování pouţíval nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. Vedoucí práce: Mgr. Matěj Štefaník 1

Poděkování Děkuji vedoucímu práce, Mgr. Matěji Štefaníkovi, za odborné vedení, uţitečné rady a pomoc při řešení. 2

Shrnutí Práce se zabývá porovnáním způsobů kategorizace dat. Obsahuje popis metod shlukové analýzy, jejich základní dělení a jsou zde také uvedeny některá moţná pouţití. V další části je mezi sebou srovnáno pět hierarchických metod shlukové analýzy. 3

Klíčová slova shluková analýza, metody kategorizace dat, hierarchické metody, nehierarchické metody, dendrogram, shluk 4

Obsah 1 Úvod...7 2 Shluková analýza...8 2.1 Základní dělení...8 2.2 Vyjádření podobnosti objektů...8 2.2.1 Koeficient korelace...8 2.2.2 Koeficient asociace...9 2.2.3 Metriky vzdáleností...9 3 Hierarchické metody shlukování... 11 3.1 Aglomerativní hierarchické shlukování... 11 3.1.1 Metoda nejbliţšího souseda (Simple linkage)... 11 3.1.2 Metoda nejvzdálenějšího souseda (Complete linkage)... 12 3.1.3 Centroidní metoda (Centroid linkage)... 12 3.1.4 Metoda průměrné vazby (Average linkage)... 12 3.1.5 Mediánová metoda (Unweighted group average)... 13 3.1.6 Wardova metoda... 13 3.2 Divizní hierarchické shlukování... 13 3.2.1 MacNaughton Smithova metoda... 13 3.3 Pouţití hierarchických metod... 14 3.3.1 Vyhledávání v dokumentografických informačních systémech... 14 3.3.2 Zpracování informací ze záznamů síťové komunikace... 14 3.3.3 Zpracování digitalizovaného obrazu rozpoznávání vzorů... 14 3.3.4 Bioinformatika... 15 4 Nehierarchické metody shlukování... 16 4.1 Metody s konstantním počtem shluků... 17 4.1.1 Forgyova a Janceyova metoda... 17 4.1.2 MacQueenova k-středová metoda (K-means)... 17 4.1.3 Sférické k-středové metody s opakovaným půlením (Repeated bisection k-means). 18 4.1.4 Fuzzy k-středové shlukování (Fuzzy C-means)... 18 4.1.5 Metoda PAM (Partition around medoid)... 19 4.1.6 Metoda CLARA (Clustering LARge Application)... 19 4.1.7 Metoda CLARANS (Clustering Large Application based on RANdomised Search) 19 4.1.8 Bagged clustering (bootstrap aggregating clustering)... 20 5

4.2 Metody s proměnným počtem shluků... 20 4.2.1 MacQueenova metoda se dvěma parametry... 20 4.2.2 Wishartova metoda RELOC... 21 4.2.3 Metoda ISODATA (Iterative Self-Organizing Data Analysis Techniques)... 21 4.2.4 Metoda CLASS... 23 4.3 Pouţití nehierarchických metod... 24 4.3.1 Analýza chování návštěvníků na webu... 24 4.3.2 Rozpoznávání vzorů... 24 4.3.3 Shlukování a třídění dokumentů... 25 4.3.4 Zpracování obrazu při dálkovém průzkumu (remote sensing)... 25 4.3.5 Vytváření profilů síťových aplikací... 25 4.3.6 Prostorové dolování dat... 25 5 Srovnání některých hierarchických metod... 27 5.1 Metoda nejbliţšího souseda (Single linkage)... 27 5.2 Metoda nejvzdálenějšího souseda (Complete linkage)... 28 5.3 Centroidní metoda (Centroid linkage)... 29 5.4 Unweighted pair-group average (Unweighted pair-group method using arithmetic averages, UPGMA)... 30 5.5 Weighted pair-group average (weighted pair-group method using arithmetic averages, WPGMA)... 32 5.6 Srovnání počtu shluků jednotlivých metod... 33 6 Závěr... 35 7 Literatura... 36 6

1 Úvod Metody shlukové analýzy mají za úkol hledat podobnost nebo naopak odlišnost mezi objekty jen na základě zadaných vlastností, bez jejich dalšího vysvětlování. Shluková analýza hledá struktury v zpracovávaných datech. Seskupuje podobné objekty do mnoţin, které nazýváme shluky. Prvky jednoho shluku si jsou navzájem nějakým způsobem podobnější, neţ objekty do tohoto shluku nepatřící. S rozvíjející se vědou a technikou vzrůstá i počet informací, které je třeba nějakým způsobem roztřídit a zpracovat. S příchodem výpočetní techniky přišly i první pokusy tento proces hledaní podobností mezi objekty a jevy matematicky definovat a zautomatizovat. Bylo potřeba najít způsob popisu vlastností, vyjádření míry podobnosti a najít techniku, která by tříděná data rozdělila do shluků. Tyto nové metody byly pojmenovány shluková analýza. Jeden z prvních, kdo je tak nazval a pokusil se definovat tento termín byl Kalifornský profesor psychologie R. C. Tryon, který v roce 1939 napsal knihu Shluková analýza 1. Pojem definoval takto: R. C. Tryon (1939): Shluková analýza je obecný logický postup formulovaný jako procedura, pomocí níž seskupujeme objektivně jedince do skupin na základě jejich podobností a rozdílností. Základní typy metod shlukové analýzy byly navrţeny jiţ v minulosti, dnes tyto metody zaţívají obrození. Jsou spojeny s automatickým sběrem a vyhodnocením dat a řadí se do metodologie nazývané data mining 2. Kaţdá metoda shlukové analýzy je algoritmus snaţící se rozdělit data do skupin, aby bylo co nejlépe splněno dané kritérium rozkladu. Dat, která by mohla být shlukovou analýzou zpracována, je veliké mnoţství a stejně tak existuje hodně odvětví, ve kterých shluková analýza nachází uplatnění. Jde zejména o statistické průzkumy a nejrůznější vědní obory. Kaţdé odvětví má odlišné typy dat, která potřebují trochu jiný přístup, proto dodnes vzniklo mnoho metod třídění. Některé metody vznikly jen menšími úpravami původních, jiné třídí data úplně jiným způsobem a přistupují k nim rozdílně. Proto jsem se ve své práci rozhodl popsat některé metody. Definovat, jakým způsobem třídí data a v neposlední řadě také zmínit některé z mnoha moţných aplikací. Dále bude v práci srovnáno pět hierarchických metod a podrobněji vysvětleno, jakým způsobem vytváří shluky. Součástí bakalářské práce je webová stránka, na které jsou shromáţděny získané informace doplněné interaktivními ukázkami některých metod. Při vytváření tohoto webu jsem pouţil XHTML 3 1.0 a CSS 4. V budoucnosti bych chtěl dále rozvíjet vytvořenou webovou stránku, přidat popisy dalších metod a najít nové příklady pouţití. 1 Tryon, R. C. Cluster analysis. Ann. Arbor : Edwards Bros., 1939. 2 Data mining (angl. dolování z dat) je analytická metodologie získávání netriviálních skrytých a potenciálně uţitečných informací z dat. Více na http://cs.wikipedia.org/wiki/data_mining. 3 XHTML je zkratka anglického extensible hypertext markup language. Jedná se o značkovací jazyk pro vytváření hypertextových dokumentů. 4 CSS je zkratka anglického Cascading Style Sheets. Jde o jazyk určený k popisu způsobu zobrazení dokumentů napsaných například pomocí XHTML. 7

2 Shluková analýza Shluková analýza se zabývá metodami a algoritmy, pomocí kterých sdruţuje data s podobnými vlastnostmi do shluku. Snaţí se uspořádat získaná data do smysluplných struktur, o vytvoření taxonomií. Shluková analýza je nástroj datové analýzy, který třídí různé objekty do shluků tak, ţe podobnost dvou objektů náleţících do jedné skupiny je maximální, zatímco podobnost s objekty mimo tento shluk je minimální. Shlukováním je moţné najít vztahy mezi objekty bez jejich dalšího vysvětlení, nebo interpretace. Jinými slovy, shluková analýza nachází strukturu v datech bez vysvětlení, proč existuje. Shluk je skupina objektů, které jsou si navzájem více podobné neţ objekty do této skupiny nepatřící. A v této skupině nemají ani nahodilý ani rovnoměrný výskyt. 2.1 Základní dělení Metody shlukové analýzy dělíme, dle cílů ke kterým směřují, do dvou základních skupin: Hierarchické metody, vyuţívající dříve nalezených shluků k vytvoření shluků nových. Průnikem kaţdých dvou podmnoţin mnoţiny objektů je buď prázdná mnoţina, nebo jedna z původních. Nehierarchicke metody, vytvářící všechny shluky najednou. Při nehierarchickém shlukování jsou shluky disjunktní. Hierarchické algoritmy se dále dělí na divizní a aglomerativní. Aglomerativní přístup bere kaţdý prvek zpracovávané mnoţiny jako shluk, ty dále slučuje, aţ vznikne shluk obsahující všechny prvky dané mnoţiny. Na druhou stranu divizní algoritmy berou vstupní mnoţinu objektů jako celek a ten pak dál dělí. V kaţdém kroku dělí shluk na dva nové, které nejlépe splňují dané kritérium rozkladu. Tento postup je výpočetně náročný a je proveditelný pro malý počet vstupních objektu. Pro n prvku je nutno prozkoumat 2 n-1-1 moţností. Nehierarchické metody vytvoří všechny shluky najednou. V nehierarchickém shlukování jsou shluky disjunktní. Dále je dělíme například na optimalizační, nebo analýzy modu. Dále máme například dvourozměrné shlukování (two-way clustering, co-clustering, biclustering). Tyto metody umoţňují souběţné třídění sloupců a řádků matice. 2.2 Vyjádření podobnosti objektů Mezi klasifikovanými objekty je třeba nějakým způsobem vyjádřit míru podobnosti nebo nepodobnosti. Míra podobnosti se vyjadřuje pomocí koeficientu korelace a koeficientu asociace. Pro vyjádření míry nepodobnosti se pouţívá metrik vzdáleností. Při vyjadřování podobnosti P objektů O x,o y musí platit: Nezápornost P(O x,o y ) 0, symetrie P(O x,o y ) = P(O y,o x ) a pokud O y = O x, pak P(O x,o y ) nabývá maxima, popřípadě minima, jestliţe P vyjadřuje míru nepodobnosti. 2.2.1 Koeficient korelace Vyjadřuje vztah mezi objekty, nebo znaky. Nabývá hodnot z intervalu -1 aţ +1, kde -1 znamená nepřímou úměru, +1 přímou úměru mezi objekty a 0 znamená nezávislost objektů. 8

Korelační koeficient se spočítá: E(XY) je střední hodnota součinu náhodných veličin X,Y E(X) je střední hodnota náhodné veličiny X (E(X 2 ) E 2 (X)) 1/2 je směrodatná odchylka veličiny X 2.2.2 Koeficient asociace Pouţívá se v případech vyjadřování podobnosti mezi daty s binárními nebo nominálními hodnotami proměnných. Záleţí zde na počtu shod a celkovém počtu znaků. Mějme atribut a mnoţiny objektů O, který nabývá hodnot 0 nebo 1. Pak a bude součet případů pozitivní shody, kdy atributy a mnoţiny objektů O nabývají hodnot 1, b je součet případů neshody 0-1, c je součet případů neshody 1-0 a d je součet případů negativní shody 0-0. Tyto hodnoty se dále vyuţívají pro výpočet koeficientu asociace. Sokalův-Michenerův koeficient asociace: Russelův-Raoův koeficient asociace: Hamannův koeficient asociace: 2.2.3 Metriky vzdáleností Při shlukové analýze je důleţité zvolit vhodnou metriku vzdáleností, protoţe právě ta ovlivňuje tvar vytvořených shluků. V různých metrikách si mohou být některé objekty blíţe a v jiných dále. Vzdálenost d dvou bodů musí splňovat: symetrii d(x,y) = d(y,x) identitu d(x,y) = 0, kdyţ x = y trojúhelníkovou nerovnost d(x,y) d(x,z) + d(y,z) nezápornost d(x,y) 0 Příklady některých pouţívaných metrik: Euklidovská metrika n-rozměrného prostoru, v níţ se vzdálenost dvou bodů X a Y počítá: Největší nevýhoda euklidovské metriky je její závislost na jednotkách proměnných. To je v případě shlukování dat s různými proměnnými, v různých jednotkách, problém. Další problém nastává v případě, ţe některé proměnné jsou na sobě závislé, protoţe to při pouţití euklidovské metriky není bráno v úvahu. 9

Váţená euklidovská metrika je odvozena z klasické euklidovské metriky. Zohledňuje váhu jednotlivých proměnných tak, ţe je vynásobí vektorem váhy. Ten je ale sloţité spočítat. Manhattanská metrika, která definuje vzdálenost bodů X, Y jako: Mikowského metrika, kde se vzdálenost dvou bodů X a Y počítá: Pro k 0. Se zvyšujícím se parametrem k se zvýrazňuje vliv variability proměnných na výsledky. Mahalanobisova metrika je schopná správně zobrazit data, která jsou v různých jednotkách a nebo je mezi nimi nějaká závislosti. Tato statistická vzdálenost mezi body x = (x 1,,x n ) t a y = (y 1,,y n ) t n dimensionálního prostoru je definována takto: Kde C je matice kovariance. Tato metoda však také potlačuje vliv variability proměnných na výsledky. Hammingova metrika se pouţívá k popisu rozdílů například mezi dvěma řetězci stejné délky. Hammingova vzdálenost se pak rovná počtu znaků, ve kterých se dané řetězce liší. Jinak řečeno, je to počet symbolů, které by bylo nutné změnit, aby byly oba srovnávané řetězce shodné. 10

3 Hierarchické metody shlukování Jedná se o posloupnost rozkladů, kdy na jedné straně máme shluk obsahující všechny objekty a na straně druhé jednoprvkové shluky. Pouţitelné jsou spíše pro nalezení struktury, neţ pro vyhledávání nových vzorů. Hierarchické metody jsou dle směru přístupu děleny na divizní a aglomerativní. Shlukování touto metodou se dá znázornit pomocí binárního stromu, dendrogramu. Jednotlivé uzly jsou shluky. Vodorovné úrovně stromu jsou v následujícím grafu stupně rozkladů shluků. Svislý směr udává vzdálenost mezi shluky. OBRÁZEK 3.1 Nevýhodou hierarchického shlukování je, ţe se v kaţdém kroku snaţí dosáhnout pouze lokálně nejlepšího řešení a nebere se ohled na další postup. Při aglomerativním shlukování jiţ jednou spojené shluky nejde rozdělit. Stejně tak při divizním shlukování nelze rozdělené shluky v dalších krocích znovu spojit a tím případně vlastnosti rozkladu vylepšit. 3.1 Aglomerativní hierarchické shlukování Na začátku aglomerativního shlukování máme n jednoprvkových objektů, které tvoří nultý rozklad Ω 0. Tyto jednoprvkové shluky dále slučujeme tak, ţe vybereme dle nějakého předem daného kriteria dva nejpodobnější jednoprvkové shluky a sloučíme je. Tím vznikne nový shluk, tvořící rozklad Ω 1. V kaţdém dalším kroku vytváříme z nejpodobnějších shluků niţšího stupně rozkladu nový shluk. Takţe i-tý rozklad Ω i je tvořen dvěma nejpodobnějšími shluky rozkladu Ω i-1. Ke zpracování n prvkové mnoţiny je tedy potřeba n-1 rozkladů. Kaţdé seskupení vzniká ve větší vzdálenosti od shluků z předchozího uskupení. Shlukování můţe být ukončeno na základě této vzdálenosti mezi shluky nebo při dosaţení poţadovaného počtu shluků. Nevýhodou těchto metod je, ţe mohou vzniknout nejednoznačnosti uţ na začátku shlukování, které se projeví aţ později ve velkých shlucích. Předchozí kroky není moţné změnit. Další dělení aglomerativních metod je na základě kriteria, dle kterého se vybírají nejpodobnější shluky. 3.1.1 Metoda nejbližšího souseda (Simple linkage) Jedná se o metodu, jeţ vytvoří shluk z objektů nebo shluků, které mají mezi sebou nejmenší vzdálenost v porovnání s ostatními tříděnými objekty nebo shluky. Vzdálenost mezi shluky počítá tak, ţe vezme nejmenší ze vzdáleností kaţdých dvou objektů z dvou různých shluků. Výsledné shluky 11

nemají sférický charakter. Nevýhodou této metody je, ţe pokud existují objekty se stejnou vzdáleností od jiţ existujících shluků, tak můţe dojít ke zřetězení. A pokud jsou objekty na krajích řetězce nepodobné, můţe dojít k vytvoření špatného závěru. Také můţe dojít k předčasnému sloučení dvou dobře rozlišitelných shluků, jejichţ hranice se v nějakém místě přiblíţí. Touto metodou je moţné třídit i neeliptické shluky. Metoda je vhodná pro podlouhlé shluky, na druhou stranu se příliš nehodí pro kompaktní shluky přibliţně stejné velikosti. Vzdálenost je definována vztahem: D SL (A,B) = min {d(x A ; x B )}, kde A,B jsou shluky, x A náleţí A a x B je prvek B a d je koeficient nepodobnosti. 3.1.2 Metoda nejvzdálenějšího souseda (Complete linkage) Tato metoda slučuje do jednoho shluku objekty, nebo shluky, které jsou v rámci tříděné mnoţiny dat nejdále od sebe. To znamená, ţe za vzdálenost dvou shluků bere největší moţnou vzdálenost ze vzdáleností kaţdých dvou objektů z dvou různých shluků. Z takto vypočítaných vzdáleností pak vybere nejkratší a spojí odpovídající objekty. Vytváří těsné shluky přibliţně stejné velikosti. Má tendenci tvořit sférické shluky. Zabraňuje vzniku zřetězených shluků. Vzdálenost je definována vztahem: D CL (A,B) = max {d(x A ; x B )}, kde A,B jsou shluky, x A náleţí A a x B je prvek B a d je koeficient nepodobnosti. 3.1.3 Centroidní metoda (Centroid linkage) Pro spočítání nepodobnosti objektů se v této metodě vyuţívá euklidovská metrika, v které se změří vzdálenosti těţišť shluků nebo objektů. Následně dojde ke sloučení shluků, které mají nejmenší vzdálenost mezi těţišti. Vzdálenost je definována vztahem:, kde d E 2 je čtverec euklidovské metriky a x A,x B jsou vektory představující těţiště shluků A a B. Vektory x A,x B se spočítají takto: Kde n A,n B jsou počty objektů ve shlucích A a B, x Ai, x Bi jednotlivé objekty a d je koeficient nepodobnosti. 3.1.4 Metoda průměrné vazby (Average linkage) Podobnost dvou hluků se počítá jako průměr vzdáleností mezi kaţdými dvěma objekty patřícími do dvou různých shluků. Nejpodobnější jsou shluky s nejmenší průměrnou vzdáleností. Výsledný dendrogram je podobný stromu vytvořeném při pouţití metody nejbliţšího souseda, s tím rozdílem, ţe spojení je provedeno ve větších vzdálenostech. Tato metoda není příliš citlivá na statistické odchylky v datech. Pokud jsou objekty rozloţené dle určitého pravděpodobnostního rozloţení, tak přidání dalších objektů nenaruší výsledek. Je méně náchylná k nejednoznačnosti výsledků, protoţe průměrná vzdálenost objektů bývá jedinečná. 12

Vzdálenost je moţné definovat: Kde n A,n B jsou počty objektů ve shlucích A a B, x Ai, x Bi jednotlivé objekty a d je koeficient nepodobnosti. 3.1.5 Mediánová metoda (Unweighted group average) Tato metoda má odstranit nedostatek centroidní metody a sice odstraňuje přiřazování různé váhy shlukům, podle jejich velikosti. Podobnost dvou shluků se určí ze vzdálenosti mediánů dvou shluků. Vzdálenost shluků definujeme: D UWGM (A,B) = d(x A ; x B ), kde vektory x A,x B jsou mediány shluků A,B a d je nepodobnostní koeficient. 3.1.6 Wardova metoda Metoda je zaloţena na ztrátě informací, která vzniká při shlukování. Kritériem pro shlukování je celkový součet druhých mocnin odchylek kaţdého objektu od těţiště shluku, do kterého náleţí. Celkový přírůstek spočítáme: Od součtu druhých mocnin odchylek objektů a vektoru průměru nově vznikajícího shluku G odečítáme součty druhých mocnin odchylek zanikajících shluků A a B. Kde x gij je hodnota j-té proměnné i-tého prvku shluku G, n G je počet prvků tohoto shluku, v gj je průměrná hodnota j-té proměnné shluku G atd. Při shlukování se snaţíme minimalizovat C, takţe vznikají shluky přibliţně stejné velikosti. Wardova metoda se hodí pro práci s objekty, které mají stejný rozměr proměnných. 3.2 Divizní hierarchické shlukování Divizní metody berou mnoţinu objektů, kterou mají zpracovat, jako jeden shluk, ten dále dělí na menší shluky a tím vytváří hierarchický systém. Kaţdý shluk je rozdělen na dva nové, tak aby byl rozklad optimální vůči nějakému kritériu, a na konci tohoto postupu budou všechny shluky jednoprvkové. Nevýhodou těchto metod je, ţe nalezení optimálního rozkladu mnoţiny n objektů na dvě podmnoţiny však vyţaduje prozkoumání 2 n-1-1 moţností. Tento postup je kvůli exponenciální časové sloţitosti prakticky proveditelný jen pro malý počet objektů. 3.2.1 MacNaughton Smithova metoda Tato metoda se snaţí sníţit časovou náročnost divizních algoritmů aţ na kvadratickou, ale za cenu toho, ţe výsledné rozdělení nemusí být optimální. Je tedy aplikovatelná i na rozsáhlejší mnoţiny objektů při nevelkých nárocích na čas počítače. V porovnání s aglomerativními přístupy je ale stále pomalejší. Pomocí středních vzdáleností se vybere objekt uvnitř shluku, který vytvoří nový shluk. Na základě rozdílů středních vzdáleností objektů z původního a objektů z nového shluku se objekt přiřadí do nového shluku, nebo zůstane v původním. 13

Výhodou oproti aglomerativnímu přístupu jsou jednoznačnější výsledky pro větší shluky. Algoritmus: 1. Začni s objekty v jednom shluku A. 2. Vyber takový objekt, který má největší průměrnou vzdálenost ke všem ostatním objektům ve shluku A a přiřaď ho do nového shluku B. 3. Pro kaţdý objekt ve shluku A vypočítej rozdíl jeho průměrných vzdáleností ke všem ostatním objektům ve shluku A a průměrných vzdáleností ke všem objektům ve shluku B. Vyber takový objekt, pro který je rozdíl maximální. 4. Pokud je spočítaný rozdíl kladný, přiřaď vybraný objekt do shluku B a zopakuj krok 3. Jinak pokračuj 5. 5. Vyber shluk s více neţ jedním objektem uvnitř a začni 1. Pokud jsou všechny objekty jednoprvkové, skonči. Průměrná vzdálenost objektu x A náleţícímu shluku A od ostatních prvků y Ai shluku A je: Kde d je libovolný koeficient nepodobnosti a n A je počet objektů shluku A. 3.3 Pouţití hierarchických metod 3.3.1 Vyhledávání v dokumentografických informačních systémech Aglomerativní hierarchické metody je moţné pouţít například v dokumentografických informačních systémech (DIS) k vyhledávání [14]. Pomocí těchto metod lze vytvořit různé úrovně skupin dokumentů, identifikovat témata dokumentů v dané databázi. To pak můţe usnadnit vyhledávání, nebo zařazení nového dokumentu dle tématu. Nejméně vhodná aglomerativní metoda pro vytvoření hierarchie dokumentů je metoda nejbližšího souseda, která je náchylná k vytváření řetězců. Vhodnější jsou metody vytvářející hierarchie s pravidelně rozloţenými shluky jako je Wardova metoda, metoda nejvzdálenějšího souseda, nebo pro tento případ asi nejvhodnější metoda průměrné vazby. 3.3.2 Zpracování informací ze záznamů síťové komunikace Další moţné vyuţití hierarchických metod je při zpracování záznamů síťové komunikace [18]. Ve vytvořených shlucích obsahujících zdrojové IP adresy lze identifikovat podobně se chovající subjekty, nebo lze vzniklé statistické údaje vyuţít při vytváření sluţby, nebo webové stránky pro určitou skupinu uţivatelů atd. 3.3.3 Zpracování digitalizovaného obrazu rozpoznávání vzorů Obraz můţeme popsat vektory. Souřadnice, které popisují vektory, jsou jednotlivé příznaky obrazu. Mnoţina všech obrazů vytváří n-rozměrný vektorový prostor. Podobnost předmětů v kaţdé třídě je moţné vyjádřit geometrickou blízkostí obrazů. Pro klasifikaci a rozdělení obrazů do tříd je moţné pouţít metodu nejbližšího souseda. Pro kaţdou třídu je moţné vybrat mnoţinu vzorových obrazů [21]. 14

3.3.4 Bioinformatika Shluková analýza se dá vyuţít i při analýze genů, třídění genového kódu a identifikaci funkcí genů, nebo proteinů. Uplatnění mají v této oblasti hierarchické metody s koeficientem korelace. Pouţitelná je například metoda nejvzdálenějšího souseda a její modifikace. Nevýhodou je, ţe dendrogram vytvořený touto metodou znázorňuje pouze jednoduché podobnostní vztahy mezi geny. Jinými slovy je často ztraceno hodně uţitečných informací, kromě korelačního koeficientu. 15

4 Nehierarchické metody shlukování Nevytvářejí hierarchickou strukturu, rozkládají danou mnoţinu do podmnoţin dle předem daného kriteria. První rozklad na podmnoţiny se dále nedělí. Upravuje se tak, aby se optimalizovala vzájemná vzdálenost a odlišnost shluků a aby objekty v nich byly rovnoměrně rozloţené. Nalezení nejlepšího rozkladu vyzkoušením všech moţných uspořádání shluků je většinou neproveditelné. Proto většina metod začíná s nějakým předem daným rozkladem, který dále upravuje a hledá optimální rozklad. Optimálního rozkladu dosáhneme, pokud nabude funkcionál kvality rozkladu své extrémní hodnoty. Nevýhodou je, ţe metody většinou končí pouze s lokálně optimalizovaným rozkladem. Kritéria kvality rozkladu jsou pro kaţdý případ jiné a liší se na základě cílů, kterých má shlukování dosáhnout a na základě struktury analyzovaných dat. Pouţívá se například součet kvadrátů odchylek objektů od těţišť příslušných shluků, nebo funkcionálu spočítaného z vnitroshlukového rozptylu. Nebo můţe funkcionál kvality rozkladu udávat některou z následujících hodnot, nebo jejich kombinace: podobnosti objektů ve shluku míry separace shluků rovnoměrnost rozloţení objektů uvnitř shluku rovnoměrnost rozloţení objektů do shluků Nehierarchické metody dále dělíme na: Optimalizační metody, které hledají nejlepší rozklad přeřazováním objektů ze shluku do shluku, čímţ minimalizují nebo maximalizují nějaké kriterium rozkladu. Analýzy modů, jeţ berou shluky jako místa s větší koncentrací objektů v n-rozměrném prostoru proměnných. Před započetím samotné analýzy je nutné najít optimální počet shluků. Dle toho, dělíme nehierarchické metody na metody s pevně daným počtem shluků a na metody měnící počet shluků za běhu. U metod s konstantním počtem shluků se třídění provede několikrát pro různý počet shluků a z výsledků se vybere nejlepší. K určení optimálního počtu shluků, před samotnou analýzou se vyuţívá různých indexů vypočtených na základě proměnlivého faktoru K. Je to například Calinski-Harabascův index, C index, nebo Goodman-Kruskal. Dále je nutné určit počáteční rozklad. K tomu se nejčastěji pouţívají následující dva postupy: Rozklad je vytvořen buď náhodným přiřazením objektů shlukům, nebo se vyuţije nějaké rychlé hierarchické metody. Pak se kaţdý jednotlivý objekt přiřadí postupně do všech shluků a spočítá se hodnota funkcionálu. Vybere se to uspořádání, ve kterém je hodnota funkcionálu kvality nejlepší. Algoritmus končí, kdyţ uţ se kvalita nelepší. Vytváření vzorových mnoţin, nebo vzorových bodů. Na začátku se opět nějakým způsobem vytvoří počáteční rozklad, pak se dle určitého kritéria vybere z kaţdého shluku vzorová mnoţina objektů. Dále se vypočítá vzdálenost všech objektů k příslušným vzorům a přiřadí se nejbliţším. Znovu se vypočítají vzory. Tento postup se opakuje, dokud po sobě jdoucí rozklady nejsou stejné. 16

4.1 Metody s konstantním počtem shluků 4.1.1 Forgyova a Janceyova metoda Obě metody vyuţívají vzorových bodů, jimiţ jsou těţiště shluků. Kaţdý objekt pak patří do shluku, jehoţ vzorovému bodu je nejblíţe. Algoritmy metod jsou zaloţené na střídání dvou kroků a končí v případě, ţe se najde stabilní rozklad, který se dále nemění. V prvním kroku se přiřadí všechny objekty vzorovému bodu, kterému jsou nejpodobnější. V druhém kroku dojde k přepočítání souřadnic vzorových bodů. Právě ve způsobu výpočtu vzorových bodů se tyto dvě metody liší. Forgyova metoda bere jako vzorové body těţiště jednotlivých shluků bodů. Janceyova umísťuje vzorové body do bodů, které jsou souměrně sdruţené s předcházejícími typickými body přes souřadnice nového těţiště skupiny. Obě metody pak začínají zadáním, nebo vytvořením typických bodů, nebo rozkladem na k shluků. Pokračujeme buď výpočtem vzorových bodů, nebo v opačném případě přiřazením objektů do shluků se vzorovými body, k nimţ mají nejblíţe. Vznikne nový rozklad, ve kterém se znovu vypočtou vzorové body. Tak se postupuje dál, dokud dvě po sobě jdoucí iterace nemají stejné rozloţení prvků. Metody lokálně minimalizují funkcionál součtu čtverců chyb. Nevýhodou je závislost výsledků metod na počáteční volbě vzorových bodů, nebo rozkladu. Jednotlivé výsledky se dle některých zdrojů liší v průměru o 7%. V závislosti na počáteční volbě bodů, můţe také dojít k situaci, kdy všechny objekty jsou přesunuty jinam. Tento shluk je pak zbytečný, protoţe je prázdný a výsledek nemusí být optimální. Janceyova metoda rychleji konverguje k výsledku. 4.1.2 MacQueenova k-středová metoda (K-means) Tato metoda pouţívá jako vzorové body těţiště shluků. Na začátku je opět nutné vybrat k počátečních vzorových bodů. Body lze vybrat náhodně ze vstupní mnoţiny objektů. Následně se berou jednotlivé objekty a přiřazují se k nejbliţším vzorovým bodům. Po kaţdém přiřazení se znovu přepočítají těţiště zvětšených shluků. Po přiřazení všech bodů jsou stávající těţiště výsledné vzorové body, přiřazování a přepočítání těţišť se provede znovu. Konvergentní varianta MacQueenovi k-středové metody začíná stejně. Vzorové body jsou opět těţiště shluků. Nejprve se zadá, nebo odvodí prvních k vzorových bodů a po jednom se přiřazují objekty do shluků, jejichţ vzorové body jsou nejblíţe. Pokaţdé se znovu spočítají těţiště zmenšených i zvětšených shluků. Po přiřazení všech objektů, se začíná opět od prvního a po jednom se objekty přiřazují a přepočítávají se těţiště, dokud se nedosáhne stabilního rozkladu. Jednotlivé kroky algoritmu: 1. Vyber počet shluků k, vygeneruj nebo zadej těţiště shluků. 2. Pro kaţdý objekt vyber shluk, jehoţ těţišti je nejblíţe, a pokud se vybraný shluk nerovná původnímu shluku, přemísti do něj objekt a přepočítej těţiště. 3. Pokud nedošlo ke změně ţádného shluku, skonči, jinak pokračuj krokem 2. Jednotlivé verze k-středové metody se většinou liší pouze ve způsobu, jakým je algoritmus inicializován. Nejčastěji se pouţívá strategií Forgy, MacQueen, Kaufman, nebo se vzorové body vyberou náhodně. Pro euklidovskou vzdálenost vychází ze srovnání nejlépe Kafmanova strategie. Výhodou je jednoduchost a rychlost, dá se pouţít na velké mnoţství dat. V konečném počtu kroků konverguje k nějakému řešení, těch ovšem můţe být více. 17

Nevýhodou je, ţe výsledky jsou opět ovlivněny výběrem počátečních shluků, a protoţe po přiřazení bodu dochází k okamţitému přepočítání těţiště, je výsledek také ovlivněn původním pořadím objektů. Funkcionál součtu čtverců chyb je opět minimalizován pouze lokálně. K-středové metody není vhodné pouţít, pokud ve výsledku očekáváme překrývající se shluky. Přítomnost izolovaných objektů, leţících mimo ostatní, má velký negativní vliv na výsledek. 4.1.3 Sférické k-středové metody s opakovaným půlením (Repeated bisection k- means) Jedná se o variantu k-středové metody, která začíná se všemi objekty v jedné skupině. Tato skupina se rozdělí pomocí klasické k-středové metody na dvě. Dále se podle nějakého kriteria opět vybere skupina objektů, která se rozdělí zase na dvě skupiny. Většinou se vybírají podle velikosti. Algoritmus končí dosaţením předem daného počtu shluků. Jednotlivé kroky algoritmu: 1. Všechny objekty umísti do jednoho shluku. 2. Pomocí k-středové metody rozděl shluk na dva. 3. Opakuj 2. krok dokud nedosáhneš maximálního počtu iterací a vyber rozloţení s nejoptimálnějšími vlastnostmi. 4. Pokud je dosaţeno daného počtu shluků zastav, jinak pokračuj krokem 2. Časová sloţitost tohoto algoritmu je určena počtem opakování druhého kroku. V kaţdém průchodu se znovu pouţije k-středová metody. 4.1.4 Fuzzy k-středové shlukování (Fuzzy C-means) Ve fuzzy shlukování se pro kaţdý bod počítá, s jakou pravděpodobností patří do jakého shluku. Takţe body na okraji shluku mají menší stupeň příslušnosti neţ body v centru shluku a tím je dobře popsáno rozloţení objektů ve shlucích. Objekt tak můţe patřit do více shluků zároveň. Dají se lépe identifikovat objekty, které se nedají přiřadit do ţádného shluku. Vytvoření shluků na základě pravděpodobnosti příslušnosti objektů je také jednodušší. V případě, ţe kaţdý objekt má pravděpodobnost příslušnosti k nějakému shluku rovnou jedné a k ostatním nulovou, pak je výsledkem pevné shlukování. Naopak jednotlivé shluky jsou neurčitelné, pokud se stupeň příslušnosti kaţdého objektu k libovolnému shluku rovná převrácené hodnotě počtu shluků. Součet koeficientů příslušnosti jednotlivých objektů ke všem shlukům je 1. Fuzzy algoritmus: 1. Vyber počet shluků. 2. Náhodně přiřaď kaţdému bodu koeficient příslušnosti. 3. Opakuj následující kroky, dokud změna koeficientu příslušnosti není menší, neţ nějaký daný práh citlivosti a pak skonči. a. Spočítej střed kaţdého shluku. b. Pro kaţdý bod spočítej pravděpodobnost příslušnosti k určitému shluku. Algoritmus minimalizuje rozdíly uvnitř shluku, ale stejně jako u algoritmu K-středové metody se jedná o lokální minima a výsledek závisí na zvolených mírách příslušnosti. 18

Expectation-maximization algoritmus je více statisticky formalizovaná metoda, která obsahuje částečné členství ve shlucích. Má lepší konvergenční vlastnosti a je upřednostňovaný před fuzzy k- středovou metodou. 4.1.5 Metoda PAM (Partition around medoid) Tato metoda se pouţívá v případech, kdy je nutné z analyzovaných dat získat reprezentativní objekty přestavující jednotlivé shluky. To je uţitečné při následné prezentaci výsledků shlukování. Reprezentativní objekty jsou nazvané medoidy. Základem PAM metody je identifikace jednoho reprezentativního objektu, medoidu pro kaţdý z k shluků. Počet shluků k bývá opět zvolen na začátku. Medoidy jsou vybrány tak, aby měl kaţdý objekt k medoidu uvnitř svého shluku minimální vzdálenost. Objekty jsou přiřazeny do toho shluku, jehoţ medoidu jsou nejblíţe. Algoritmus má dvě základní fáze. V prvním je vybráno k reprezentativních bodů z matice dat. První bod má nejblíţe ke všem bodů, je to tedy střed všech dat, další se vybírají tak, aby vzdálenost k ostatním objektům byla minimální. V druhé fázi se snaţíme vylepšit rozklad, zkoumá se alternativní rozloţení k bodů, zařazují se dosud nezařazené body. V porovnání s K-středovou metodou je tato robustnější, nevadí výstřední hodnoty a šum v datech. Ale pracuje efektivně pouze pro malé mnoţiny dat. 4.1.6 Metoda CLARA (Clustering LARge Application) Metoda vycházející z PAM algoritmu. Je upravená tak, aby mohla shlukovat větší mnoţství dat neţ metoda PAM. Při třídění touto metodou se nejprve náhodně vybere vzorek ze zpracovávaných dat, z něj se vytvoří k shluků a následně se do nich zařadí zbytek objektů. Toto se provede několikrát a vybere se nejlepší výsledek. Pokud je mnoţství zpracovávaných dat o hodně větší neţ shlukovaný vzorek, pak CLARA nedosahuje dobrého výsledku. 4.1.7 Metoda CLARANS (Clustering Large Application based on RANdomised Search) Jedná se o obdobu metody CLARA. Má lepší časovou sloţitost neţ PAM i CLARA. Shluky jsou opět reprezentovány mendoidy. Na začátku této metody se určí do jaké vzdálenosti od medoidu se budou sousední objekty prohledávat při jedné iteraci a také počet iterací. Poté se nějakým způsobem vybere k medoidu. Samotný algoritmus se dá zjednodušeně popsat, jako prohledávání stromového grafu, kde kaţdý uzel můţe být ten pravý medoid, který zajistí optimální vlastnosti shluků. Kaţdý uzel v grafu koresponduje s mnoţinou medoidů. Dva uzly spolu sousedí, pokud se liší v jednom medoidu. CLARANS začne náhodně vybraným uzlem a pro předem specifikovanou vzdálenost prohledávání prozkoumá sousední uzly. Pokud je nalezen lépe vyhovující uzel, tak ho vybere a pokračuje z něj. Pokud takový uzel nenajde, označí stávající uzel za lokální minimum. CLARANS se zastaví, pokud se dosáhne předem daného počtu iterací. Protoţe CLARANS neprohledává všechny uzly, ale pouze specifikované maximum sousedních uzlů a ještě k tomu v náhodném pořadí, nezaručuje nalezení globálně ani lokálně optimálního vytvoření shluků. Pokud není maximum prohledaných uzlů a počet iterací nastaven na dostatečně velké číslo, není zaručen dobrý výsledek shlukování. 19

4.1.8 Bagged clustering (bootstrap aggregating clustering) Jedná se o poměrně novou metodu kombinující hierarchický a nehierarchický přístup [13]. Můţeme ji pouţít jednak pro předzpracování dat a sníţení jejich sloţitosti před hierarchickou metodou, nebo jako kombinovanou proceduru pro nehierarchické shlukování. Hlavní myšlenkou je stabilizovat výsledky nehierarchických metod jako K-středové metody. K-středová metoda je označen za nestabilní proto, ţe její výsledky jsou většinou jen lokálně optimalizované. Postup této metody lze popsat následovně [2]: 1. Ze zpracovávaných dat náhodně vybereme vzorek dat a vytvoříme B bootstrapových souborů. 2. Na kaţdý bootstrapový soubor aplikujeme některou z nehierarchických shlukových metod, například metodu k-středů a vytvoříme BxK centroidů. 3. Jednotlivé centroidy sloučíme do nové mnoţiny C B. 4. Dále je moţné upravit mnoţinu C B, tak aby neobsahovala přebytečné centroidy. Proto roztřídíme vloţená data pomocí metody K-středů do jiţ vytvořených shluků. Centroidy shluků jsou prvky mnoţiny C B. Odstraníme všechny centroidy, jejichţ shluky jsou prázdné, nebo obsahují méně objektů, neţ je definováno. Je vytvořena mnoţina C B+. V mnoţinách C B, resp. v C B+ se odstraní duplicity. 5. Hierarchickou shlukovací metodou vytvoříme z C B, resp. v C B+ dendrogram. 6. Chtěný rozklad získáme přerušením hierarchického shlukování na daném stupni. 4.2 Metody s proměnným počtem shluků Oproti konstantním metodám není výsledek ovlivněn ojedinělými izolovanými objekty. Protoţe v případě, ţe izolovanému objektu připadne celý shluk, tak by mohl být nedostatek volných shluků pro ostatní objekty. Následující metody, kromě hledání ideálního rozkladu, také hledají optimální počet shluků, na který tříděná data rozdělí. Tyto metody proto umoţňují rozdělování a slučování skupin objektů během shlukování. Na začátku těchto algoritmů se typicky zadává startovní počet shluků a další řídící parametry. Jako například za jakých podmínek se mají dva shluky sloučit a kdy rozdělit. Údaje pak můţe zadat na základě odhadu analytik, nebo například metoda CLASS si hodnoty spočítá sama ze vstupních dat. Mezi metody, kde řídící údaje zadává analytik, patří MacQueenova metoda se dvěma parametry, Wishartova metoda RELOC, nebo metoda ISODATA. 4.2.1 MacQueenova metoda se dvěma parametry Na začátku tohoto algoritmu zadáváme počáteční počet k typických bodů, rozdělovací parametr R0 a slučovací parametr C. Prvních k bodů dosadíme za typické body. Typické body budou i v tomto případě těţiště shluků. Dále algoritmus spočítá vzdálenost mezi typickými body. Pokud je nejmenší vzdálenost mezi nimi menší neţ C, tak se dané shluky sloučí a typický bod bude těţiště nově vzniklého shluku. Pokračujeme dalším měřením vzdáleností mezi typickými body a slučováním shluků, dokud nejsou všechny vzdálenosti mezi shluky větší nebo rovny C. K typickým bodům se přiřadí zbylé, nezařazené objekty. Vzdálenost mezi objektem a nejbliţším typickým bodem by měla být nejvýše R0. Po přiřazení objektu, se přepočítá těţiště změněného shluku a dosadí se za typický bod. Opět se provede kontrola typických bodů a přeměření jejich vzdáleností. Pokud je vzdálenost přiřazovaného objektu 20

k nejbliţšímu typickému bodu vetší neţ R0, stává se sám typickým bodem. Nakonec se všechny objekty přesunou k nejbliţšímu typickému bodu. Tato metoda není náročná na čas, ale nemusí vţdy dávat optimální výsledek. Někdy vznikne zbytečně mnoho shluků, které se musí dodatečně sloučit. 4.2.2 Wishartova metoda RELOC Na začátku této metody je nutné zadat čtyři řídící parametry. První z nich je vzdálenostní práh, následuje minimální počet objektů ve shluku, maximální počet iterací a nakonec minimální počet shluků. Na začátku této metody se zvolí počáteční rozklad do k skupin. Počet skupin je větší neţ minimální počet shluků. Vypočtou se těţiště jednotlivých shluků a dosadí se za typické body. Algoritmus rozkladu je sloţený ze dvou cyklů. Vnitřní cyklus začíná postupným přiřazením všech objektů do shluků, jejichţ typickému bodu, jsou nejblíţe. Pokud je ale vzdálenost objektu k nejbliţšímu těţišti shluku větší neţ daný vzdálenostní práh, je objekt umístěn do zvláštní skupiny pro nezařazené objekty. Ve všech skupinách, kde se změnil počet objektů, přepočítáme těţiště, kromě skupiny pro nezařazené objekty. Dále rozpustíme všechny shluky, které mají menší počet objektů, neţ je definovaný minimální počet objektů ve shluku. Tyto kroky se opakují, dokud se rozloţení objektů ve dvou po sobě jdoucích opakovaních cyklu liší. Skončí také v případě, ţe počet iterací dosáhl předem daného maximálního počtu. Stávající rozklad je jeden ze členů posloupnosti nehierarchických rozkladů. Skupina nezařazených objektů je součástí tohoto rozkladu, ale není shlukem. Vnější cyklus vţdy sloučí dva shluky, jejichţ těţiště jsou si nejblíţe. Vypočte se nové těţiště sloučených shluků. Tímto krokem je zaručen pokles počtu shluků. Pokud počet shluků dosáhne zadaného minimálního počtu shluků, je rozklad ukončen, jinak se pokračuje vnitřním cyklem. Výsledkem této metody je posloupnost nehierarchických rozkladů končící rozkladem s minimálním počtem shluků definovaným uţ na začátku. 4.2.3 Metoda ISODATA (Iterative Self-Organizing Data Analysis Techniques) V průběhu této metody se shluky jak spojují, tak rozdělují. Pouţívá dva druhy parametrů a to konstantní, nebo proměnné v průběhu shlukování. Vkládané parametry určují podmínky pro skládání a rozkládání. Parametry prvního typu se zadávají na začátku a udávají údaje jako počáteční kulovitost (sphericity), pro ni je obvyklá hodnota 1.25, dále počet iterací ITERMAX, počet dělení v jedné iteraci NPARTS, očekávaný počet shluků NRWDSD, minimální akceptovatelná změna hodnoty funkcionálu kvality rozkladu mezi dvěma za sebou následujícími iteracemi a maximální počet změn kulovitosti. 21

OBRÁZEK 4.1 Popis algoritmu: Na začátku zadáváme vstupní parametry. Kromě výše uvedených, jako NPARTS, NWRDSD, ITERMAX, jsou zadány ještě parametry, které se dají za běhu upravovat. Mezi ně patří minimální počet objektů ve shluku THETAN, minimální vzdálenost těţišť shluků THETAC, nebo maximální počet sloučení shluků NCLST a v některých variantách další. Následuje určení počátečních typických bodů. Iterační část algoritmu začíná roztříděním objektů Forgyovou metodou, která se ukončí nejpozději po překročení povoleného počtu dělení v jedné iteraci NPARTS. V následujícím kroku se zruší všechny shluky, které obsahují méně objektů, neţ je definováno na začátku v parametru THETAN. Dále se provede sloučení nebo rozdělení shluků. Postup při rozdělování, nebo slučování shluků popíši později. Pokud je počet shluků větší neţ dvojnásobek očekávaného počtu shluků, pak se shluky slučují. V případě, ţe je počet shluků menší neţ polovina očekávaného počtu shluků, pak se provede rozdělení. Následně se spočítají nová těţiště shluků a dosadí se za typické body. Pokud se dva po sobě jdoucí výsledky shlukování neliší, nebo pokud iterační část proběhla vícekrát, neţ je dané na začátku počtem iterací ITERMAX, algoritmus končí. Jinak se pokračuje dalším pouţitím Forgyovy metody. Sloučení shluků provedeme tak, ţe nejprve spočítáme vzdálenosti typických bodů všech shluků. Pokud jsou si typické body nějakých dvou shluků blíţe, neţ je definováno parametrem THETAC, tak se tyto dva shluky sloučí. Nový typický bod se vypočte jako těţiště všech objektů ve shluku. Pokud počet sloučení dosáhl hodnoty parametru NCLST, nebo pokud uţ nejsou ţádné dva typické body dost blízko, skonči. Jinak postup pro slučování zopakuj. Rozdělení shluku provádíme tak, ţe vypočítáme střední odchylky všech znaků objektů ve shluku. Z vypočtených směrodatných odchylek vybereme největší. Dělení se provede podle znaku s největší směrodatnou odchylkou. Stření hodnota tohoto znaku bude dělící bod. Všechny objekty s větší 22

hodnotou budou v jedné nově vzniklé skupině a zbytek v druhé. Pro kaţdou nově vzniklou skupinu spočítáme typický bod jako těţiště jejích objektů. Je-li vzdálenost typických bodů menší neţ 1.1 definované vzdálenosti THETAC, tak jsou shluky příliš blízké a dále pracujeme s původní skupinou. Tato metoda zamezuje vznikání podlouhlých shluků. Vznikají shluky sférické. Dále zmírňuje vliv izolovaných jednotlivých objektů. Tato metoda vyţaduje pro svůj běh experta, který dokáţe odhadnout výsledek a je schopný zadat rozumné hodnoty parametrů. V opačném případě by mohlo dojít k cyklickému rozdělování a slučování shluků. Tato metoda je také náročná na výpočetní čas. 4.2.4 Metoda CLASS CLASS je modifikace metody ISODATA. Většina parametrů je v ní počítána automaticky, nároky na analytika zadávajícího vstupní parametry tudíţ nejsou tak velké. Počet parametrů zadávaných na začátku klesl na 3. Zadává se parametr GAMA, určující maximální počet iterací vnějšího cyklu. THETAN určující minimální počet prvků ve shluku a parametr S n, který řídí rozklady shluků. Tento parametr se při kaţdém průchodu cyklu zvýší a kritérium rozkladu se tím zpřísňuje. Metoda končí nalezením stabilního rozkladu, nebo dosáhnutím GAMA iterací. Metoda CLASS na svém začátku nejprve vygeneruje 2 S +1 typických bodů. Iterační část metody pak obsahuje následující kroky. Nejprve se vyloučí malé shluky a to tak, ţe se všechny skupiny s menším počtem objektů, neţ definuje parametr THETAN a které se zároveň v posledních dvou iteracích nezměnili, zruší. V dalším kroku dojde k rozdělení skupin. Nejprve se v n-té iteraci vypočte rozdělovací práh S n. V kaţdém shluku se vypočítají nové souřadnice všech objektů, jako odchylky starých souřadnic od souřadnice typických bodů. Následně spočítáme průměrnou odchylku j-té souřadnice objektu leţícího vpravo od těţiště D j1 a vlevo od těţiště D j2. Parametry k 1, k 2 udávají počet prvků vpravo a vlevo od těţiště. Dále se počítají parametry a 1, a 2 pro body leţící vpravo a vlevo od těţiště. Pokud je v n-té iteraci počet shluků menší neţ 2K a S m < a 1 nebo S m < a 2 a zároveň je počet objektů větší neţ 2(THETAN + 1), rozdělíme shluk na část vlevo a vpravo od j-té souřadnice těţiště, kdy a 1, nebo a 2 nabylo svého maxima. Parametr j nabývá hodnot 1 aţ p a i prochází všechny hodnoty indexů bodů skupiny. Dále se ruší skupiny. Nejprve se vypočítá průměrná minimální vzdálenost TAU. Parametr h udává současný počet skupin. D i je minimální vzdálenost i-té skupiny od všech ostatních skupin vyjádřená vzdálenostmi těţišť. I-tou skupinu zrušíme, pokud je minimální vzdálenost těţišť menší neţ TAU a pokud je současně počet skupin větší neţ K/2. Objekty této skupiny pak přiřadíme shluku s nejbliţším těţištěm. 23

4.3 Pouţití nehierarchických metod 4.3.1 Analýza chování návštěvníků na webu Jedná se o jedno z novějších uplatnění shlukové analýzy. Dat zaznamenávajících chování uţivatelů na webu a jejích přístupů k jednotlivým webům je velké mnoţství. Pro jejich zpracování a získání uţitečných informací se hodí metody pro dolování znalostí z velkých databází. Kromě pohybu návštěvníků se mohou zaznamenávat také data obsahující téma a funkce stránky. Pro třídění těchto dat a shlukování návštěvníků se dá pouţít například standardní sférická metoda K-středů, sférická K- středová metoda s opakovaným půlením, nebo jeho modifikace inicializovaná genetickým algoritmem. Sférická metoda K-středů vyuţívá kosinové míry podobnosti a tím se liší od normální, vyuţívající euklidovskou vzdálenost. Ze srovnání těchto tří algoritmů nejlépe vychází obyčejná metoda k-středů, která sice vţdy nedosáhne zcela optimálního výsledku, ale výpočetní čas je niţší neţ u ostatních. Pouţití sloţitějších technik sice vede k dobrým výsledkům, ale za cenu vyššího výpočetního času a niţší srozumitelnosti výsledků [19]. 4.3.2 Rozpoznávání vzorů Shlukovou analýzu je moţné vyuţít k detekci, nebo rozpoznávání vzorů a struktur v různých datech. Tato data mohou obsahovat také obrazové, nebo zvukové informace, v tom případě mluvíme o rozpoznávání hlasu, nebo písma, porovnávání otisků prstů, zpracování satelitních snímků a podobně. Obecně je úloha shlukové analýzy spojovat jednoduchá data v určitých oblastech, nebo časových rámcích, která zatím není nutné spojovat s objekty na vyšších úrovních. Shlukování je mimo jiné také metoda pro sniţování rozměru dat. Konkrétní aplikace spočívá například v rozdělení dat do shluků dle primitivních znaků. Potom jsou vzory primitivních vlastností jednotlivých shluků porovnány s katalogem znaků jednotlivých druhů a jsou současně rozděleny podle vyšších znaků reprezentujících přímo objekty. Příkladem primitivního znaku je například foném u rozpoznávání řeči, nebo grafém v rozpoznávání písma. 4.3.2.1 Rozpoznávání řeči Pro rozpoznávání mluveného slova je moţné pouţít například metodu K-středů, Fuzzy k-středové shlukování, nebo Gaussian Mixture Models (GMM) a Expectation-maximazation algoritmus. Pokud bychom si tento typ dat zobrazili, zjistíme, ţe se fonetické shluky silně překrývají, ale současně širší třídy fonémů mohou být shlukovány celkem dobře [17]. Pouţité algoritmy jsou schopné rozlišit některé překrývající se fonetické třídy a zřetelné binární rysy. Aby se sníţila závislost výsledku na inicializačním kroku, je před metodou K-středů použito GMM a EM algoritmus. Výsledný rozklad je pak stabilnější. Přiřazování shluků je relativně stabilní pro jednoho mluvčího. Fuzzy k-středová metoda je schopná rozlišit efekt koartikulace v hlavních rysech. Ve většině experimentů byly fonetické třídy, za pouţití těchto metod, dobře rozpoznány. Celkem vzato, tyto poměrně jednoduché metody jsou úspěšné při popisování a rozlišování artikulačních a akustických rozdílů mezi fonémy. 24

4.3.2.2 Rozpoznávání optických znaků Například metodu ISODATA je moţné pouţít pro rozpoznávání titulků ve videu. Experimenty ukazují, ţe oblast, kde se titulky ve videu nachází, je moţné rozpoznat se sto procentní úspěšností a rozpoznání jednotlivých znaků je pak moţno provést s devadesáti osmi procentní úspěšností. 4.3.2.3 Rozpoznávání rukopisu Kaţdý člověk píše velice specifickým způsobem a v podstatě funguje jako stochastický generátor inkoustových stop a grafémů. Pravděpodobnostní rozloţení těchto jednoduchých tvarů v daném vzorku rukopisu je charakteristický pro pisatele a je spočítaný pomocí soupisu grafémů získaného shlukováním. Pro toto vyuţití se hodí například metoda K-středů. 4.3.3 Shlukování a třídění dokumentů Pokud nás při vyhledávání v dokumentografických informačních systémech nezajímá vývoj tématu, pak nemusíme pouţívat hierarchických metod. Pro rozřazení dokumentů do shluků pouze podle příbuznosti tématu je vhodné vyuţít například metodu K-středů. Tento algoritmus je vhodný zvláště tehdy, pokud z velkého počtu vstupních souborů chceme získat malý počet shluků. 4.3.4 Zpracování obrazu při dálkovém průzkumu (remote sensing) Pro automatické členění obrazu lze vyuţít Fuzzy k-středovou metodu. Touto metodou je moţné najít skryté struktury v datech a rozčlenit obraz na oblasti podle spektrálních vlastností. Nezabývá se vztahem mezi pixely v prostoru. Metoda má za úkol hledat všeobecnou pravidelnost mezi vzory a zaměřuje se na hledání určitých tříd geometrických obrazců upřednostňovaných danou funkcí. Takto je moţné zpracovávat například satelitní snímky [20]. Další dvě metody často vyuţívané při dálkovém průzkumu jsou K-středová metoda a ISODATA. K- středová metoda pracuje nejlépe pro obrazy s výskytem sférických shluků. 4.3.5 Vytváření profilů síťových aplikací Počet síťových protokolů a aplikací komunikujících po sítí vzrůstá. Díky tomu je efektivní správa síťových zdrojů těţký úkol. Metody shlukové analýzy jsou zde vyuţity k vytváření profilů aplikací a shluků z dat síťové komunikace. Profily aplikací jsou zdrojem informací o aktuálním stavu sítě a ukazují podobnosti mezi jednotlivými aplikacemi. Jedná se o informace, pomocí kterých lze spravovat síťové zdroje. Pomocí shlukové analýzy lze objevit klíčové charakteristiky a určité podobnosti v síťovém provozu. Vhodná pro tento typ úkolu je například Fuzzy k-shluková metoda. Ta byla při testu schopna rozlišit kaţdou aplikaci do zvláštního shluku, coţ je velice dobrý výsledek. Je také důleţité najít charakteristiky aplikací a případné shluky obsahující dva a vice aplikací by poukazovaly na jejich podobnost [15]. 4.3.6 Prostorové dolování dat Jedná se o hledání zajímavých vztahů a charakteristik, které mohou implicitně existovat v prostorových databázích. Prostorové databáze se pouţívají například v geografických informačních systémech. Pro dolování v prostorových databázích je vhodná metoda CLARANS. V porovnání se 25