Metody analýzy dat I (Data Analysis I) Strukturální vlastnosti sítí 1. krok analýzy
Literatura Newman, M. (2010). Networks: an introduction. Oxford University Press. [235-270] Zaki, M. J., Meira Jr, W. (2014). Data Mining and Analysis: Fundamental Concepts and Algorithms. Cambridge University Press. [102-115] http://tuvalu.santafe.edu/~aaronc/courses/5352/ csci5352_2017_l1.pdf
Základní (strukturální) vlastnosti sítí Mnoho reálných sítí vykazuje určité společné rysy, bez ohledu na to z jak diametrálně odlišných oblastí (jako jsou sociální sítě, telekomunikačních sítě atp.) pocházejí. Jednoduchá měření struktury sítě jsou základem téměř každé síťové analýzy či modelování sítí. Tj. pro danou síť existuje mnoho vlastností jejichž analýzou (měřením) můžeme charakterizovat její strukturu.
Strukturální vlastnosti sítí Stupně vrcholů a jejich distribuce rozsáhlé reálné sítě mají tu vlastnost, že mnoho uzlů má malý počet sousedů (malý stupeň), ale některé mají velmi vysoký počet sousedů (vysoký stupeň) distribuce stupňů odpovídá tzv. mocninnému rozdělení - power-law degree distribution. Vzdálenosti - průměr (diameter) - mnoho rozsáhlých reálných sítí má malý průměr - small-world phenomenon Existence shluků - je-li uzel a spojen s uzlem b, a je-li zároveň uzel b spojen s uzlem c, je pravděpodobné, že uzel c bude spojen také s uzlem a. Mnoho rozsáhlých reálných sítí má vysoký clustering coefficient (shlukovací koeficient). Souvislost sítě jsou zpravidla nesouvislé, ale v mnoha sítích existuje jedna velká komponenta (giant component) s řádově O(n) vrcholy.
Hustota Velikost sítě sítě jsou zpravidla velké, tj. počet vrcholů je velký Hustota sítě sítě jsou zpravidla řídké Řídký vs. hustý graf (síť) Rozlišení je často vágní, liší se podle kontextu Nejčastěji Řídký graf - n km, m = O(n) Hustý graf m = Θ(n 2 ) Hustota (density) H: průměrný stupeň <d> = 2m/n po vydělení největším stupněm (n-1) 2m/n*(n-1) H = m / 0.5*n*(n-1), H <0,1>
Stupně (neor. graf) Z matice sousednosti A určíme stupeň vrcholu jako Počet hran v grafu m Průměrný stupeň µ d =< d >= di = n i= 1 n Posloupnost stupňů [d 1, d 2,, d n ] Distribuce stupňů pravděpodobnost P(d) = 1 2 n d i i= 1 1 n 2m d P(d)
Distribuce stupňů Lokální vlastnosti počet sousedů Průměrný stupeň <d>=2m/n (pro řídký graf je <d> jednotkového řádu, nebo alespoň <d> roste tak rychle jako n), obecně ale různé stupně Mřížka všechny vrcholy jsou stejného stupně (<d>=dim(dim+1) pro trojúhelníkovou a <d> =2dim pro čtvercovou mřížku) Karate club:
Vzdálenost v grafu Např. pravidelná mřížka (v reálném prostoru) - vzdálenost daná metrikou Eukleidovská metrika Metrika Manhattan O sítích obecně ale zpravidla neuvažujeme v kontextu souřadnic reálného prostoru. Jak porovnat mřížku, náhodný graf (později) a jiné typy grafů se stejným počtem vrcholů? Např. Pomocí grafové vzdálenosti Velikost grafu (měřená vzdáleností, průměrem, ) roste: dim-rozměrná mřížka n 1/dim náhodný graf log(n)
Průměr, průměrná vzdálenost Nejkratší cesta (shortets path, geodesic path) Mezi všemi dvojicemi vrcholů Z výchozího Rozlišit ohodnocený, neohodnocený Diameter = průměr (nejdelší nejkratší cesta), D Mean shortest path - průměrná nejkratší cesta, L Orientovaný, ohodnocený Floydův, Dijkstrův, Bellman-Fordův Neorientovaný, neohodnocený BFS, DFS, ale rovněž Floydův, Dijkstrův, Bellman- Fordův
Souvislost Obr. A) n=6, m=6, průměrná vzdál. =1.87 (30 uspoř. dvojic vrcholů), průměr =3 Souvislost lze určit kterýmkoliv algoritmem na principu procházení grafem (Floyd,...)
Metody analýzy dat I (Data Analysis I) Modely
Literatura Zaki, M. J., Meira Jr, W. (2014). Data Mining and Analysis: Fundamental Concepts and Algorithms. Cambridge University Press. [112-133] http://arxiv.org/pdf/cond-mat/0405123v1.pdf http://tuvalu.santafe.edu/~aaronc/courses/5352/csci 5352_2017_L3.pdf
Modely Pokud umíme určit např. průměr D, průměrnou nejkratší cestu L, shlukovací koeficient C nebo třeba distribuci stupňů, můžeme se ptát jaký vliv to má na chování sítě. Odpovědi mohou dát modely, které reprodukují vlastnosti reálných sítí. 3 základní modely (další v následujícím semestru ): Náhodný graf Random graph Model malého světa Small-world graph Bezškálový graf (Barabási-Albertové model) Scalefree graph
Pravidelné grafy (mřížky) Nejjednodušší pohled - Pravidelný (regulární) graf všechny vrcholy stejného stupně (Eukleidovské) mřížky (lattices) př. pevné látky a jejich krystalová mřížka (vrcholy atomy, hrany nejdůležitější vazby) Vlastnosti pravidelných grafů Průměr D velký Shlukovací koeficient C vysoký (nebo 0 u čtvercové mřížky) distribuce stupňů konstantní souvislé Reálné sítě nejsou pravidelné grafy
Pravidelné grafy Na všech obr. je pravidelný graf s n=20, m=40, m=2n (řídký graf), různé nakreslení (graph drawing) Obr. A) pravidelná mřížka ve 2D, Pro obr. C) L=2.32, průměr D=4, C=0
Náhodné grafy Z hlediska modelování je síť relativně jednoduchý objekt, skládající se pouze z uzlů a hran. Jak ale rozhodnout, kam umístit hrany mezi uzly tak, abychom reprodukovali složitost skutečného systému? Jednoduchá je filozofie náhodného grafu: Předpokládáme, že tento cíl dosáhneme nejlépe tak, že hrany umístíme náhodně mezi uzly. Náhodný graf (síť, random network) se skládá z n uzlů a každá dvojice uzlů je spojena hranou s pravděpodobností p.
Náhodné grafy Od r. 1959 do 90. let 20. století sítě modelovány jako náhodné grafy Náhodný graf máme množinu n vrcholů, pravděpodobnost hrany je p Každá hrana je stejně pravděpodobná Rozdílné modely náhodných grafů mají různé rozdělení pravděpodobnosti (nějakého jevu) Research questions, eg: Vyberu-li zcela náhodně jeden uzel grafu, jaká je pravděpodobnost P(d), že bude mít stupeň právě d?
Náhodné grafy n=20, m=40, náhodně spojíme dvojici vrcholů s p=2m/(n(n-1))=0.2105 Relativní pozice vrcholů není důležitá (na rozdíl od např. krystalové mřížky) Obr. A) L=2.17, průměr D=5, C=0.134, náhodný graf Obr. B) L=2.22, D=4, C=0.15, pravidelný graf
Dvě definice náhodné sítě G n,m model: n uzlů je spojeno právě m náhodnými hranami (Erdős a Rényi) G n,p model: n uzlů, každá dvojice uzlů je spojena hranou s pravděpodobností p (model zavedený Gilbertem). Model G n,p určuje pravděpodobnost p, že dva uzly jsou spojeny hranou a model G n,m určuje celkový počet hran m. Zatímco v modelu G n,m je průměrný stupeň jednoduše <d> = 2m / n, v modelu G n,p lze jednodušeji vypočítat jiné další charakteristiky sítě. Používá se model G n,p zejména proto, že v reálných sítích není počet pevný. Paradoxně se model označuje jako Erdős Rényi model náhodného grafu, přestože ho navrhl Gilbert. Ale vliv E+R na vývoj byl mnohem důležitější, proto ER model
Erdős Rényi model náhodného grafu Paul Erdös a Alfréd Rényi
Opak pravidelné mřížky G n,p model je určen n počtem vrcholů 0 p 1 Erdős Rényi model náhodného grafu Pro každou dvojici vrcholů (i,j) se generuje hrana (i,j) nezávisle s pravděpodobností p, tj. každá hrana v grafu s n vrcholy existuje s pravděpodobností p a neexistuje s pravděpodobností 1-p.
p=0.01
Počet hran se v náhodných sítích liší mezi realizacemi. Nahoře p=1/6 and n=12, dole p=0.03 and n=100 (některé vrcholy mají d=0)
Perkolace Vývoj grafu (graph evolution) - která vlastnost grafu je zachována roste-li p? Perkolace, fázový přechod, perkolační práh, treshold phenomenon: existuje pravděpodobnost p c taková, že pro p<p c téměř všechny grafy G n,p nějakou vlastnost nemají a pro p>p c vlastnost mají téměř všechny G n,p grafy. Prahová hodnota p c pochází z tzv. teorie perkolace. Pro mřížky a náhodné grafy se p c analyzuje snadno
Perkolace v mřížce
Souvislost Obr. A) n=6, m=6, L=1.87 (30 uspoř. dvojic vrcholů), D=3 Pravidelná mřížka je vždy souvislá, což neplatí pro náhodné grafy - u těch potřebujeme nejméně n-1 hran Erdős Rényi On Random Graphs I, 1959 ukázali, že náhodný graf je pravděpodobně souvislý má-li nejméně n*log(n)/2 hran pro velká n. Zformování velké komponenty http://networksciencebook.com/images/ch-03/video-3-2.m4v
Vlastnosti G n,p Vlastnosti G n,p : průměr D a průměrná vzdálenost L malé koeficient shlukování C nízký distribuce stupňů Poissonovo rozdělení Jak se na to přišlo? Experimentálně i analyticky.
Vlastnosti G n,p Vlastnosti G n,p se obvykle vyjadřují ve vztahu k hodnotě průměrného stupně <d> Průměrný počet hran v grafu G n,p je m=p*n*(n-1)/2, každá hrana je incidentní s dvěma vrcholy, proto je průměrný stupeň vrcholu < d >= n(n -1)p n = (n 1)p což je asi <d>=np pro velká n.
Distribuce stupňů v G n,p If we toss a fair coin N times, tails and heads occur with the same probability p = 1/2. The binomial distribution provides the probability p x that we obtain exactly x heads in a sequence of N throws. In general, the binomial distribution describes the number of successes in N independent experiments with two possible outcomes, in which the probability of one outcome is p, and of the other is 1-p. Pravděpodobnost p(d), že daný vrchol grafu o n vrcholech má stupeň d je dána binomickým rozdělením n -1 p(d) = B(n;d; p) = p d d n 1- d ( 1 p)
Distribuce stupňů v G n,p Předpokládejme <d>=np = c, kde c je naše požadovaná hodnota průměrného stupně, n, B(n,d,p) pak lze aproximovat Poissonovým rozdělením d c c p(d) = P(d;c) = e Obě distribuce jsou koncentrovány kolem prům. stupně <d>, konec klesá exponenciálně, jako 1/d!, pro d > <d> d!
Distribuce stupňů v G n,p Pozn. Poissonovo rozdělení obecně lze pro všechny hodnoty x=0,1,2,... náhodné veličiny X vyjádřit pomocí parametru λ>0 jako Nejnižší resp. nejvyšší stupeň vrcholů náhodného grafu jsou určeny pro různá p Jestliže p n -1-1/d, pak téměř žádný náhodný graf nemá vrcholy se stupněm vyšším než d. Pro dostatečně velké p, tj. je-li p n/log(n) mají náhodné grafy nejvyšší stupeň řádově jako je stupeň průměrný, tedy mají poměrně homogenní stupně.
Poissonovo rozdělení Binomické a Poissonovo rozdělení
Poissonovo rozdělení Jen málo vrcholů v náhodném grafu má velmi malý resp. velmi velký stupeň, většina vrcholů má průměrný stupeň Scale-free graf (A) a náhodný graf (B) mocninné (C) a Poissonovo rozdělení (D)
Vzdálenosti v G n,p Náhodné grafy mají tendenci mít malou průměrnou vzdálenost, zpravidla okolo (log n/log<d>). <d> <1 typický náhodný graf je složen z izolovaných stromů, průměrná vzdálenost pak odpovídá průměrné vzdálenosti stromu <d> >1 v grafu ex. obrovská komponenta. Je li <d> >3.5 je průměrná vzdálenost grafu rovna průměrné vzdálenosti této obrovské komponenty a je úměrná L=log n/log<d> <d> >log n, téměř každý náhodný graf je souvislý a průměrné vzdálenosti L těchto grafů nabývají několika hodnot okolo L=log n/log<d>
Souvislost a G n,p Pro p=0 máme diskrétní graf s n komponentami a velikost komponenty je řádově O(1/n). Pro p=1 máme úplný graf s 1 komponentou a největší komponenta (jediná) má n vrcholů. A mezi tím?
Souvislost a G n,p Jestliže je <d> <1 (počet hran m je malý), pak graf obsahuje mnoho malých komponent (souvislých), největší komponenta má počet vrcholů nejvýše O(log n). Téměř všechny komponenty jsou buď stromy nebo obsahují právě jeden cyklus. Je-li <d> >1, největší komponenta má velikost Θ(n) a druhá největší O(log n). Jestliže <d> >log n, graf je souvislý. Jestliže <d> =1, nastane změna, která vede ke vzniku obrovské komponenty O(n 2/3 ), ve které platí mocninný zákon (později).
Souvislost a G n,p S je velikost největší komponenty vyjádřená poměrem k celkové velikosti sítě
Shlukování v G n,p Mějme uzel, jeho sousedy, pak pravděpodobnost, že dva z těchto sousedů jsou spojeny hranou je rovna pravděpodobnosti, že dva náhodně vybrané vrcholy jsou spojeny hranou, tedy shlukovací koeficient C = p. Jinak: v náhodném grafu (na rozdíl od trojuh. mřížky) není důvod, aby soused souseda vrcholu i měl nějaký vztah k i. Náhodný graf s n vrcholy má pn(n-1)/2 možných hran, pokud máme M hran, C=2M/n(n-1)= =<d>/(n-1)=p, kde (<d>=c)
Shlukování v G n,p <d> <d>
G n,p p 0 0.045 0.09 1.0 <d> 0 0.5 1 n L 0 2.0 4.2 1.0 D 0.0 4 7 1 Počet vrcholů v největší komponent ě 1 5 11 12
G n,p efekt průměrného stupně <d> Pro <d>< 1: Malé, izolované shluky Malý průměr D Malá L pro <d> = 1: Objevuje se velká komponenta Průměr D dosahuje vrcholu L je velká pro <d> > 1: Téměř všechny vrcholy propojeny Průměr D se snižuje L klesá d
Příklad - Zachary's karate club
Závěr - G n,p Model náhodného grafu nevyhovuje reálným sítím zejména proto, že: Reálné grafy mají mocninné rozdělení distribuce stupňů (power-law), ne Poissonovo. Reálné sítě mají často vysoký shlukovací koeficient, náhodné grafy mají obecně malý shlukovací koeficient, který se s rostoucím n blíží k 0 (při konstantní p). Reálné sítě mají komunitní strukturu (vysvětlíme později v MAD2) Jiné modely sítí vyhovující reálným sítím lépe, začaly vznikat koncem 90. let m.s.