Přednáška 12: Shlukování

Podobné dokumenty
Vytěžování znalostí z dat

Státnice odborné č. 20

Miroslav Čepek

Miroslav Čepek

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

Přednáška 13 Redukce dimenzionality

Algoritmy a struktury neuropočítačů ASN P3

ANALÝZA A KLASIFIKACE BIOMEDICÍNSKÝCH DAT. Institut biostatistiky a analýz

Vícerozměrné statistické metody

Vytěžování znalostí z dat

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

Vytěžování znalostí z dat

Vytěžování znalostí z dat

oddělení Inteligentní Datové Analýzy (IDA)

Umělé neuronové sítě

Samoučící se neuronová síť - SOM, Kohonenovy mapy

Klasifikace a rozpoznávání. Lineární klasifikátory

4. Učení bez učitele. Shlukování. K-means, EM. Hierarchické shlukování. Kompetitivní učení. Kohonenovy mapy.

Úvod do optimalizace, metody hladké optimalizace

Aplikovaná numerická matematika

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

ANALÝZA A KLASIFIKACE DAT

Matematika pro geometrickou morfometrii

5. Umělé neuronové sítě. neuronové sítě. Umělé Ondřej Valenta, Václav Matoušek. 5-1 Umělá inteligence a rozpoznávání, LS 2015

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

LDA, logistická regrese

Metody analýzy dat I. Míry a metriky - pokračování

Zpracování digitalizovaného obrazu (ZDO) - Popisy III

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

Rosenblattův perceptron

Klasifikace a rozpoznávání

Vytěžování znalostí z dat

Aplikovaná numerická matematika - ANM

Algoritmy a struktury neuropočítačů ASN - P2. Topologie neuronových sítí, principy učení Samoorganizující se neuronové sítě Kohonenovy mapy

Instance based learning

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

Základy vytěžování dat

AVDAT Mnohorozměrné metody, metody klasifikace

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

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

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

Optimální rozdělující nadplocha 4. Support vector machine. Adaboost.

Algoritmy pro shlukování prostorových dat

Shlukování. Zpracováno s využitím skvělého tutoriálu autorů Eamonn Keogh, Ziv Bar-Joseph a Andrew Moore

Algoritmy a struktury neuropočítačů ASN - P11

STATISTICKÉ NÁSTROJE A JEJICH VYUŽITÍ PŘI SEGMENTACI TRHU STATISTICAL TOOLS AND THEIR UTILIZATION DURING THE PROCESS OF MARKETING SEGMENTATION

Mgr. Rudolf Blažek, Ph.D. prof. RNDr. Roman Kotecký Dr.Sc.

Klasifikace a rozpoznávání. Extrakce příznaků

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15

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

Vytěžování znalostí z dat

AVDAT Nelineární regresní model

ZÁPOČTOVÁ PRÁCE Informace a neurčitost. SOMPak

Numerické metody a programování. Lekce 8

Neuronové sítě Ladislav Horký Karel Břinda

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

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.

Stavový model a Kalmanův filtr

Kybernetika a umělá inteligence, cvičení 10/11

odlehlých hodnot pomocí algoritmu k-means

ZÍSKÁVÁNÍ ZNALOSTÍ Z DATABÁZÍ

Intervalové Odhady Parametrů

Hledání optimální polohy stanic a zastávek na tratích regionálního významu

Katedra kybernetiky, FEL, ČVUT v Praze.

NG C Implementace plně rekurentní

Už bylo: Učení bez učitele (unsupervised learning) Kompetitivní modely

Neuronové časové řady (ANN-TS)

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

Kartografické modelování. VIII Modelování vzdálenosti

Asociační i jiná. Pravidla. (Ch )

Interpolace, ortogonální polynomy, Gaussova kvadratura

1. Soutěživé sítě. 1.1 Základní informace. 1.2 Výstupy z učení. 1.3 Jednoduchá soutěživá síť MAXNET

Odhad parametrů N(µ, σ 2 )

Dynamické programování

Automatická detekce anomálií při geofyzikálním průzkumu. Lenka Kosková Třísková NTI TUL Doktorandský seminář,

Algoritmy a struktury neuropočítačů ASN - P10. Aplikace UNS v biomedicíně

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

prof. RNDr. Čestmír Burdík DrCs. prof. Ing. Edita Pelantová CSc. BI-ZMA ZS 2009/2010

OPTIMALIZACE. (přehled metod)

Katedra kybernetiky laboratoř Inteligentní Datové Analýzy (IDA) Katedra počítačů, Computational Intelligence Group

Algoritmy výpočetní geometrie

Statistické modely tvaru a vzhledu

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

13. Lineární programování

Odhady Parametrů Lineární Regrese

1 0 0 u 22 u 23 l 31. l u11

Normální (Gaussovo) rozdělení

Lineární klasifikátory

NADSTAVBOVÝ MODUL MOHSA V1

logistická regrese Miroslav Čepek Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

(Cramerovo pravidlo, determinanty, inverzní matice)

Vícerozměrné statistické metody

Úvod do mobilní robotiky AIL028

Statistická teorie učení

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

Odhad stavu matematického modelu křižovatek

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

Matematika I 12a Euklidovská geometrie

Příklad 2: Určení cihlářských surovin na základě chemické silikátové analýzy

Transkript:

České vysoké učení technické v Praze Fakulta informačních technologií Katedra teoretické informatiky Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-ADM Algoritmy data miningu (2010/2011) Přednáška 12: Shlukování Pavel Kordík, FIT, Czech Technical University in Prague

Osnova dnešní přednášky Metriky Hiearchické shlukování Algoritmy Dendrogramy K-means SOM Gaussovská směs MI-ADM Algoritmy data miningu (FIT CVUT)

Shluková analýza Máme data, neznáme kategorie (třídy) Chceme najít množiny podobných vzorů, které jsou zároveň nepodobné vzorům z ostatních množin. Řešíme optimalizační problém! Co jsou naše neznámé? počet shluků přiřazení dat (vzorů) do shluků MI-ADM Algoritmy data miningu (FIT CVUT)

Metrika, Euklidovská vzdálenost Je třeba nějak určit podobnost vzorů jejich vzdálenost Vzdálenost musí splňovat určité podmínky: 1. d(x,y) > 0. 2. d(x,y) = 0 iff x = y. 3. d(x,y) = d(y,x). 4. d(x,y) < d(x,z) + d(z,y) (trojúhelníková nerovnost ). Je Euklidovská vzdálenost metrika? Dva body v n-rozměrném prostoru: Euklidovská vzdálenost P a Q = MI-ADM Algoritmy data miningu (FIT CVUT)

Manhattonská vzdálenost Jak budeme počítat vzdálenost dvou cyklistů v Manhattonu? M ( P ) p n qn, Q = p1 q1 + p2 q2 +... + MI-ADM Algoritmy data miningu (FIT CVUT)

Kosinová vzdálenost Je invariantní vůči natočení p θ p.q q q dist(p, q) = θ = arccos(p.q/ q p ) MI-ADM Algoritmy data miningu (FIT CVUT)

Editační vzdálenost Pro určení vzdálenosti např. dvou slov Počítá se jako počet smazání (vložení) písmene, potřebný k transformaci jednoho slova na druhé. MI-ADM Algoritmy data miningu (FIT CVUT)

Shluky, reprezentanti Výsledky ankety, proč lidé pijí alkohol Reprezentant shluku = typický představitel Tradice Sociální nutnost Individualita Úkolem shlukové analýzy je najít v datech shluky, případně jim přiřadit typické reprezentanty MI-ADM Algoritmy data miningu (FIT CVUT) Postavení

Shluková analýza III Klasická shluková analýza (Cluster Analysis) je nástroj pro disjunktní rozklad množiny vzorů ze vstupního prostoru R n do H > 1 tříd (shluků). Shluková analýza požaduje maximální podobnost vzorů v rámci jedné třídy a současně maximální nepodobnost vzorů různých tříd. MI-ADM Algoritmy data miningu (FIT CVUT)

Jak byste problém řešili vy? Jak najít shluky? spojujeme vždy 2 nejpodobnější vektory MI-ADM Algoritmy data miningu (FIT CVUT)

Metody vyhodnocení vzdálenosti shluků Metoda nejbližšího souseda single linkage vzdálenost shluků je určována vzdáleností dvou nejbližších objektů z různých shluků Metoda nejvzdálenějšího souseda complete linkage zdálenost shluků je určována naopak vzdáleností dvou nejvzdálenějších objektů z různých shluků Centroidní metoda centroid linkage vzdálenost shluků je určována vzdáleností jejich center Metoda průměrné vazby average linkage vzdálenost shluků je určována jako průměr vzdáleností všech párů objektů z různých shluků Wardova metoda Ward slinkage vzdálenost shluků se určí jako suma čtverců vzdáleností jejich center MI-ADM Algoritmy data miningu (FIT CVUT)

Single linkage Ze shluku vždy vybírám toho nejbližšího A B MI-ADM Algoritmy data miningu (FIT CVUT)

Complete linkage Ze shluku vždy vybírám toho nejvzdálenějšího A B MI-ADM Algoritmy data miningu (FIT CVUT)

Centroid linkage Reprezentantem shluku je centroid A B MI-ADM Algoritmy data miningu (FIT CVUT)

Kolik jsme našli shluků? Jiný pohled na náš algoritmus: Na začátku každý vektor shluk Spojování vektorů do shluků Na konci jeden velký shluk Počet shluků? Dendrogram => Algoritmus se jmenuje: Hierarchické shlukování Obrázek je ilustrační, neodpovídá přesně datům z minulého slajdu MI-ADM Algoritmy data miningu (FIT CVUT)

Záleží na tom, kde řízneme dendrogram Co se děje, když řežeme dendrogram na nižší/vyšší úrovni? Kam patří nový vektor? Problém? Musím počítat vzdálenosti ke všem vektorům! MI-ADM Algoritmy data miningu (FIT CVUT)

Obsahují data opravdu shluky? Vypočteme CPCC (Cophenetic Correlation Coeffitient) CPCC je normovaná kovariance vzdáleností v původním prostoru a v dendrogramu Pokud je hodnota CPCC menší než cca 0.8, všechny instance patří do jediného velkého shluku Obecně platí, že čím vyšší je kofenetický koeficient korelace, tím nižší je ztráta informací, vznikající v procesu slučování objektů do shluků MI-ADM Algoritmy data miningu (FIT CVUT)

Hierarchické shlukování Pseudokód algoritmu hierarchického shlukování c je požadovaný počet shluků 1. begin initialize c, c n, Di {xi} i=1,...,n 2. do c c +1 3. vypočteme matici vzdáleností 4. najdeme nejbližší shluky Di a Dj 5. sloučíme shluky Di a Dj 6. until c=c 7. return c shluků 8. end procedura skončí, když je dosaženo požadovaného počtu shluků když c=1, dostaneme dendogram složitost O(cn 2 d) a typicky n>>c MI-ADM Algoritmy data miningu (FIT CVUT)

Algoritmus K-středů (K-means) Jak se vyhnout výpočtu všech vzájemných vzdáleností? Budu počítat vzdálenosti od reprezentantů shluků. Počet reprezentantů je výrazně menší než počet instancí. Nevýhoda: musím dopředu určit počet reprezentantů (K). MI-ADM Algoritmy data miningu (FIT CVUT)

K-means Reprezentanti - zde se jmenují středy (centroidy) Střed shluku c vypočteme: Co to znamená? Jak se sčítají vektory? r µ(c) 1 = c x r c r x x 1 x 1 + x 2 přeškálování x 2 Dejme tomu, že známe počet shluků (centroidů), jen hledáme jejich pozici. MI-ADM Algoritmy data miningu (FIT CVUT)

K-means applet MI-ADM Algoritmy data miningu (FIT CVUT) http://www.kovan.ceng.metu.edu.tr/~maya/kmeans/index.html

Jak K-means pracuje? Náhodně inicializuj k centroidů. Opakuj dokud algoritmus nezkonverguje: fáze přiřazení vektorů: každý vektor x přiřaď shluku X i, pro který vzdálenost x od µ r i (centroid X i ) je minimální fáze pohybu centroidů: oprav pozici centroidů podle aktuálních vektorů ve shlucích r 1 r µ = i(x i) x j X r i x j X i MI-ADM Algoritmy data miningu (FIT CVUT)

K-means vlastnosti Lokálně minimalizujeme energii Co to znamená? K l = 1 x X i i Pro K shluků sečti vzdálenost všech vektorů daného shluku od jeho centroidu Konverguje vždy do globálního minima energie? Ne, často do lokálních minim. Závislost na inicializaci centroidů. MI-ADM Algoritmy data miningu (FIT CVUT) l x µ l 2

Algoritmus k-středů Pseudokód algoritmu K-středů vstup: n vzorů a počet výsledných středů c výstup: výsledné středy µ 1,..., µ c algoritmus: 1. begin initialize n, c, µ1,..., µc 2. do klasifikuj n vzorů k jejich nejbližšímu µi 3. přepočti µi 4. until žádný µi se nezměnil 6. return µ1,..., µc 7. end složitost: O(ndcT) kde d je dimenze vzorů a T je počet iterací MI-ADM Algoritmy data miningu (FIT CVUT)

Dětský k-means pseudokód Once there was a land with N houses... One day K kings arrived to this land.. Each house was taken by the nearest king.. But the community wanted their king to be at the center of the village, so the throne was moved there. Then the kings realized that some houses were closer to them now, so they took those houses, but they lost some.. This went on and on..(2-3-4) Until one day they couldn't move anymore, so they settled down and lived happily ever after in their village... MI-ADM Algoritmy data miningu (FIT CVUT)

Počet středů (shluků) Pro K-means je třeba K určit předem to je těžké když o datech nic nevíme Vymyslete algoritmus, který bude počet shluků odvozovat automaticky z dat. Např. Leader-follower strategie Problém určit univerzální hodnotu prahu MI-ADM Algoritmy data miningu (FIT CVUT)

Jaké použít kritérium pro volbu K? Minimum energie? K x l = 1 x X i W ( K ) = µ l i l 2 Nevhodné, klesá k nule pro K=počet instancí. Lépe najít maximum funkce: H ( K ) = W ( K ) W W ( K ( K + 1) + 1) MI-ADM Algoritmy data miningu (FIT CVUT)

Silhouette graf obrysů shluků Iris data, pro každou instanci vypočti jistotu zařazení do shluku s(i) e <-1,1> s( i) = b( i) a( i) max{ a( i), b( i)} kde a(i) je průměrná vzdálenost instance i od instancí shluku, do kterého je zařazena b(i) je průměrná vzdálenost instance i od instancí nejbližšího shluku MI-ADM Algoritmy data miningu (FIT CVUT)

Hodnocení shluknutí pomocí Silhouette Který výstup K-means je lepší? Ten, který má lepší průměr hodnoty s(i) pro všechny instance. Ideálně na testovacích datech. MI-ADM Algoritmy data miningu (FIT CVUT)

SOM SOM = Self Organizing Maps, Prof. Teuvo Kohonen, Finsko, TU Helsinki, 1981, od té doby se eviduje několik tisíc vědeckých literárních odkazů. Původní aplikace: fonetický psací stroj.

Kompetiční učení Jedinci (elementy, neurony) spolu soutěží Příklad bezdomovci a kontejnery Pamatuji si, kde byla dobrá kořist Vyhraje ten, kdo přijde dřív Musím být poblíž, aby mě někdo nepředběhl Když se dozvím o novém kontejneru, a mám šanci ho vybrat, musím se přesunout blíže k němu Kdo se to nenaučí, umře hlady Vede na teritoriální uspořádání, reflektující rozmístění kontejnerů a jejich využívanost

Kompetiční učení Přírodou inspirované Nepotřebuji žádného arbitra, který by jedincům stále říkal, kam mají jít učení bez učitele Jedinci se učí z příkladů Systém se v průběhu času organizuje sám samoorganizuje A teď to aplikujeme na shlukovou analýzu

Shluková analýza a kompetice Prozradí nám něco pozice bezdomovců o rozmístění kontejnerů? Co to je shluk? Množina bodů, které jsou si blízko a mají daleko k ostatním. Co to znamená daleko? Viz metriky Bezdomovec reprezentant shluku kontejnerů

Shluky, reprezentanti Obrázek si můžeme představit jako teritoria čtyř bezdomovců - veteránů Každý bezdomovec je reprezentant shluku kontejnerů Sever Západ Východ Jak simulovat pohyb bezdomovců? K-means? Jih

K-means http://www.neuroinformatik.ruhr-uni-bochum.de/vdm/research/gsn/demogng/gng.html

Jiný pohled na K-means Středy (reprezentanti) soutěží o data Používá strategii vítěz bere vše (Winner Takes All) Všechno jídlo zkonzumuje bezdomovec, který ke kontejneru dorazí první Chyba se počítá jako Nebo také E= 1 2 K N i= 1 j= 1 1 WTA K = 1 x l x X i E = µ, µ ) µ Kde funkce 1 WTA je 1, pokud je i tý střed nejblíže j tému vzoru, 0 jinak Tato chyba se také jmenuje kvantizační ( x j i x j i i l l 2

Co to je vektorová kvantizace? Cílem kvantizace vektorů (Vector Quantization) je aproximovat hustotu pravděpodobnosti p(x) rozložení reálných vstupních vektorů x є R n pomocí konečného počtu reprezentantů w i є R n. Tedy přesně to, o co se snažíme.

Problém se komplikuje Co se stane, když bezdomovec nestihne kontejner vybrat celý? Zbytek dostanou nejbližší Neplatí vítěz bere vše! Okolí = definuje vzdálenost, ze které se ještě vyplatí přijít. 2 nd 1 st Velmi malé okolí - vítěz bere vše Velmi velké okolí - komunismus 3 rd

Neuronový plyn (perestrojka ) Název berte z rezervou, nepracuje se s neurony, ale spíše s agenty (středy). Pseudokód: Náhodně inicializuj středy, zvol velké okolí Předlož vektor x j Pro všechny středy - Spočítej pořadí vzdáleností od vektoru - Uprav vzdálenosti (x j -µ i ) v závislosti na pořadí a velikosti okolí - (exp) - Přemísti středy opakuj (s menším okolím)

Neuronový plyn

Problém se stále komplikuje Co se stane, když se vítězný bezdomovec rozdělí jen s kamarády? Okolí již neudává vzdálenost v původním prostoru dat, ale v prostoru kamarádství. 1 st Velmi malé okolí - individualisté Velmi velké okolí - hippies 2 nd 3 rd

Samoorganiující se mapa (SOM) Kamarádství pro jednoduchost znázorněno mřížkou

Jak se liší od k-means? Existence okolí! g(x) + + - 0 - x Používá se 1. při učení, 2. někdy k určování vítěze.

SOM inspirace Ne bezdomovci, ale mozek. Řídící centra souvisejících orgánů spolu sousedí.

SOM architektura 1/3 Representa nt Typicky: 2D pole reprezentantů (také se jim nepřesně říká neurony)

SOM architektura 2/3 2D- uspořádání (do mřížky) je nejtypičtější. Neurony lze ale uspořádat lineárně (1Ddost často), nebo prostorově (3D- velmi výjimečně). Uspořádání slouží k tomu, aby měl neuron definované sousedy ve svém okolí. Kohonenovo doporučení: obdélníková SOM!

SOM architektura 3/3 Každý neuron má vektor vah w, vektory se porovnávají se vstupním vektorem x, vybírá ten se nejpodobnější BMU Neuron, který nejlépe odpovídá (BMU) je reprezentant vektoru přiloženého na vstup

Timo Honkela (Description of Kohonen's Self-Organizing Map)

SOM neuron 1/2 Vyhodnocuje podobnost předloženého vstupní-ho vektoru od (ve vahách w i ) zapamatovaného, reprezentanta, referenčního vektoru. Podobnost = např. Eukleidovská vzdálenost: { } i * j = arg min x w, i SOM neuron je tedy reprezentantem shluku.

Učení Kohonenovy sítě 1/3 Nezapomeňte: učicí algoritmus uspořádává neurony v mřížce tak, aby reprezentovaly předložená vstupní data. Otázka k přemýšlení: co se děje s vahami neuronů v průběhu času?

Učení Kohonenovy sítě 2/3 1. Inicializace, 2. předložení vzoru, 3. výpočet vzdálenosti, 4. výběr nejpodobnějšího neuronu, 5. přizpůsobení vah, w ( t + 1) = w ( t) + η( t) x ( t) w ( t) 6. goto 2. [ ] ij ij i ij Rozumíte vzorci? Váhy jakých neuronů se přizpůsobují?

Příklad 0.52 X = 0.12 0.27 0.42 0.43 W 1 = W 2 = 0.81 W 3 = 0.70 0.21 d d d 2 2 1 ( x1 w11 ) + ( x2 w21) = = (0.52 0.27) + (0.12 0.81) = 0. 73 2 2 2 ( x1 w12 ) + ( x2 w22 ) = = (0.52 0.42) + (0.12 0.70) = 0. 59 2 2 3 ( x1 w13 ) + ( x2 w23) = = (0.52 0.43) + (0.12 0.21) = 0. 13 Vyhrál třetí neuron je nejblíže 2 2 2 2 2 2

Příklad Přiblížím ho ke vzoru [ ] ( + 1) = ( ) + η( ) ( ) ( ) w t w t t x t w t ij ij i ij w13 = η (t) ( x1 w13 ) = 0.1(0.52 0.43) = 0.01 w23 = η (t)( x2 w23) = 0.1(0.12 0.21) = 0.01 W3 ( p + 1) = W3 ( p) + W3 ( p) = 0.43 0.21 + 0.01 0.01 = 0.44 0.20 Upravil jsem váhy pouze BMU vítěznému neuronu Zde tedy vítěz bere vše!

Takhle to vypadá, když updatuji také okolní neurony Slide by Johan Everts

Učení Kohonenovy sítě 3/3 Velkou roli při učení hraje okolí: topologické uspořádání, vzdálenost sousedů. Okolí se v čase mění: jeho průměr s časem klesá (až k nulovému). změna se realizuje sdruženým učicím parametrem η(t).

Příklad okolí: Gaussovské η ij * ( t) = α( t) r * j. exp 2 2 σ r i ( t) 2, Člen α(t) představuje učicí krok, druhý člen pak tvar okolí (v tomto případě Gaussova křivka s proměnným tvarem v čase).

Příklad okolí: Gaussovské Distance related learning Slide by Johan Everts

Visualizace: klasická SOM Problém jak zobrazit pozici neuronů (reprezentantů) Dimenze vah = dimenze vstupního vektoru Potřebuji zobrazit ve 2D, jak? U-matice, analýza hlavní komponenty (PCA), Sammonova nelineární projekce.

U-matice (Unified distance) Matice vzdáleností mezi váhovými vektory jednotlivých neuronů, typicky se vizualizuje, vzdáleností vyjádřeny barvou světlá barva = malá vzdálenost. Zobrazuje strukturu vzdáleností v prostoru dat. Poloha BMU odráží topologii dat. Barva neuronu je vzdálenost je váhového vektoru od všech ostatních váhových vektorů Tmavé váhové vektory jsou vzdáleny od ostatních datových vektorů ve vstupním prostoru. Světlé váhové vektory jsou obklopeny cizími vektory ve vstupním prostoru. Kopce oddělují clustery (údolí).

Příklad U-matice Data: Neurony Vzdálenosti mezi sousedními neurony

P-matrix (Pareto density estimation) Zobrazuje počet datových vektorů ze vstupního prostoru, které patří do koule kolem jeho váhového vektoru (s poloměrem nastaveným podle Paretova pravidla). Odráží hustotu dat. Neurony s velkou hodnotou jsou umístěny do hustých oblastí vstupního prostoru. Neurony s malou hodnotou jsou osamělé ve vstupním prostoru. údolí oddělují clustery ( náhorní plošiny ). Doplňuje informace získané z U-matice.

U*-Matrix Kombinace U-Matice a P-Matice Je to U-matice, korigovaná hodnotami v P- matici. Vzdálenosti mezi sousedními neurony (neurony a a b v mřížce) jsou vypočítány z U-matice a jsou váženy hustotou vektorů kolem neuronu a.

Nevýhody UMAT, PMAT, Zobrazují jen vzdálenosti mezi sousedy Při novém naučení sítě na stejných datech můžou vypadat jinak (můžou být např otočeny o 90 stupňů) Nejsou intuitivně interpretovatelné, pokud nevíte co přesně je barvou kódováno. Jak ale zobrazit n-rozměrná data ve 2D, abychom pokud možno zachovali originální vzdálenosti?

PCA nebo LDA Nové souřadnice vzniknou jako lineární kombinace původních dimenzí Algoritmus se jmenuje Analýza hlavní komponenty (Principal Component Analysis) špatná dobrá

Sammonova projekce Mějme N vektorů v L-dimenzionálním prostoru, které označme x i, i = 1,..., N. K nim nechť patří N dvoudimenzionálních vektorů označených y i, i = 1,..., N. Označme dále vzdálenost mezi vektory x i a x j v L-dimenzionálním prostoru D ij a vzdálenost odpovídajících si vektorů y i a y j symbolem d ij. Potom Sammonova projekce mapuje vstupní prostor na výstupní na základě minimalizace této chybové funkce: E sam = N 1 N i< j Dij i< j ( d D ) ij ij D ij 2..

Sammon leképezés Távolságtartó leképezés adatpontok közötti távolságok A Sammon stress célfüggvényt minimalizálja Nemlineáris optimalizálási feladat N(N-1)/2 távolság kiszámítása minden iterációs lépésben E = N 1 N i= 1 j= i+ 1 N 1 1 d( i, j) N i= 1 j= i+ 1 ( * d( i, j) d ( i, j) ) d( i, j) x 1 y 2 2 x 3 d( i, j) d * x 2 ( i, y 1 j)

Aplikace SOMU http://www.generation5.org/content/2007/kohonenimage.asp

Websom Podobnost stránek

ReefSOM http://www.brains-mindsmedia.org/archive/305

SOM vlastnosti VQ vektorová kvantizace, více vektorů se mapuje do jednoho neuronu (jeho váhového vektoru), jak přesně? -> kvantizační chyba. Komprese dimenze vstupního prostoru. Zachování topologie dat sousední (ve vstupním prostoru) vektory se mapují do sousedních (v mřížce) neuronů, jak kvalitně? -> topografická chyba. SOM má energetickou funkci, kterou minimalizuje -> zkreslení. Y336VD Vytěžování dat

Zkreslení SOM Průměrná vzdálenost mezi každým datovým vektorem a jeho BMU. Určuje přesnost mapování (vektorové kvantizace) už známe c i je váhový vektor neuronu m j je vektor dat h bij je funkce okolí Y336VD Vytěžování dat

Topografická chyba SOM Počet vstupních vektorů, pro které vítězný neuron a druhý vítězný neuron nejsou sousedi v mřížce. u(ci) je 1, když sousedi nejsou, jinak 0 V procentech počet vzorků, u nichž nebyla zachována topologie. Y336VD Vytěžování dat

Software: Zajímavý a hlavně použitelný SW SOM_PAK: http://www.cis.hut.fi/research/som_pak http://service.felk.cvut.cz/courses/36nan + český návod na ovládání Matlab SOM toolbox http://www.cis.hut.fi/projects/somtoolbox/ SOMPAK addon http://neuron.felk.cvut.cz/~jurikm Zooming SOM http://service.felk.cvut.cz/courses/36nan TKM, RSOM http://service.felk.cvut.cz/courses/36nan

Shlukování založené na modelech Např: Modelování hustoty pravděpodobnosti gaussovskou směsí (ukážeme si nyní) Model založený na samoorganizující se mapě (příští přednáška) MI-ADM Algoritmy data miningu (FIT CVUT)

Gaussovská směs Mnoharozměrná gaussovská hustota pravděpodobnosti 1D gaussovská funkce g ( x b) 2c ( x) = ae Vícedimenzionální směs 2 2 M a C? normalizace - pravděpodobnost MI-ADM Algoritmy data miningu (FIT CVUT) vážený průměr K gaussovek

Směs gausovských rozdělení M k a C k počítáme např. pomocí EM algoritmu http://www.neurosci.aist.go.jp/~akaho/mixtureem.html Každá gaussovka jeden shluk předpokládá normální rozdělení dat ve shluku MI-ADM Algoritmy data miningu (FIT CVUT)

K-Means a EM algoritmus K-means je speciální případ obecnější procedury nazývané Expectation Maximization (EM) algoritmus. Expectation: Použij aktuální parametry (a data) k rekonstrukci černé skříňky Maximization: Použij černou skříňku a data ke zpřesnění parametrů http://en.wikipedia.org/wiki/expectation-maximization_algorithm MI-ADM Algoritmy data miningu (FIT CVUT)

Aplikační oblasti shlukové analýzy Hledání podobností v datech Určování významnosti proměnných Detekce odlehlých instancí Redukce dat MI-ADM Algoritmy data miningu (FIT CVUT)

Demo Shlukování studentů FIT MI-ADM Algoritmy data miningu (FIT CVUT)