Za´padoˇceska´ univerzita v Plzni Fakulta aplikovany´ch vˇed Katedra informatiky a vy´poˇcetn´ı techniky
Bakal´ aˇ rsk´ a pr´ ace Anal´ yza soci´ aln´ı s´ıtˇ e pˇ r´ atel
Plzeˇ n 2013
Marek Naggy
Origin´ aln´ı zad´ an´ı M´ısto t´eto str´anky bude vloˇzeno origin´aln´ı zad´an´ı BP.
i
Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze jsem bakal´aˇrskou pr´aci vypracoval samostatnˇe a v´ yhradnˇe s pouˇzit´ım citovan´ ych pramen˚ u.
V Plzni dne 2. kvˇetna 2013 Marek Naggy
ii
Podˇ ekov´ an´ı Na tomto m´ıstˇe bych r´ad podˇekoval Ing. Michalu Nyklovi za ochotn´e veden´ı pr´ace, cenn´e rady a ˇcas, kter´ y mi vˇenoval pˇri konzultac´ıch.
iii
Abstract Analysis of social network of friends This thesis introduces the opportunities that social network analysis offers by analyzing online large-scale social network of friendship. Thus, you will find here a design of the web crawler, which has successfully crawled more than a million web pages located on the online social network called Lid´e.cz. In the thesis you will also find statistics which show socio-demographics of this server. It is also stated what kind of information you can obtain through the analysis of online social network content. The above mentioned social network is then verified against the theoretical models. Furthermore, there are rankings which contain the most important users of this network. These rankings were created by using basic Centrality measures methods (such as Degree, Closeness and Betweenness centrality). In addition the small-world theory is verified. Key words: social network analysis, Centrality measures, web crawler, small-world theory, scale free networks, Lid´e.cz
Anal´ yza soci´ aln´ı s´ıtˇ e pˇ r´ atel Pr´ace se pomoc´ı anal´ yzy rozs´ahl´e online soci´aln´ı s´ıtˇe pˇra´telstv´ı zamˇeˇruje na pˇribl´ıˇzen´ı moˇznost´ı, kter´e anal´ yza soci´aln´ıch s´ıt´ı nab´ız´ı. Naleznete zde n´avrh webov´eho robota, kter´ y proˇsel v´ıce neˇz milion webov´ ych str´anek nach´azej´ıc´ıch se na online soci´aln´ı s´ıti Lid´e.cz. Jsou zde uvedeny statistiky zab´ yvaj´ıc´ı se sociodemografi´ı tohoto serveru a je zde uvedeno, jak´e informace pomoc´ı anal´ yzy obsahu soci´aln´ıch s´ıt´ı lze z´ıskat. Z´ıskan´a s´ıt’ je pot´e verifikov´ana oproti teoretick´ ym model˚ um. T´eˇz jsou zde pomoc´ı nˇekolika z´akladn´ıch metod Centrality measures (Degree, Closeness a Betweenness centrality) urˇceny nejv´ yznamnˇejˇs´ı uˇzivatel´e nach´azej´ıc´ı se v t´eto s´ıti. Pr´ace se t´eˇz zab´ yv´a ovˇeˇren´ım hypot´ezy mal´eho svˇeta. Kl´ıˇcov´a slova: anal´ yza soci´aln´ıch s´ıt´ı, Centrality measures, webov´ y robot, teorie mal´eho svˇeta, bezˇsk´alov´e s´ıtˇe, Lid´e.cz
iv
Obsah ´ 1 Uvod
1
2 Soci´ aln´ı s´ıtˇ e a jejich anal´ yza 2.1 Polomˇer, hustota a dalˇs´ı pojmy z teorie graf˚ u 2.2 Modely a vlastnosti komplexn´ıch s´ıt´ı . . . . . 2.2.1 Bezˇsk´alov´e s´ıtˇe a mocninn´ y z´akon . . . 2.3 Small-world experiment . . . . . . . . . . . . . 2.4 Centrality measures . . . . . . . . . . . . . . . 2.4.1 Degree centrality . . . . . . . . . . . . 2.4.2 Closeness centrality . . . . . . . . . . . 2.4.3 Betweenness centrality . . . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
2 3 5 6 7 8 8 9 9
3 Online soci´ aln´ı s´ıt’ Lid´ e.cz 3.1 Smluvn´ı podm´ınky a autorsk´ y z´akon 3.2 Pˇredpokl´adan´a velikost . . . . . . . . 3.3 Omezen´ı stahov´an´ı . . . . . . . . . . 3.4 Kter´e webov´e str´anky proch´azet? . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
11 11 11 12 13
4 Z´ısk´ an´ı dat 4.1 V´ ybˇer vhodn´eho webov´eho robota . . . . . . . . . . . 4.2 Tvorba webov´eho robota . . . . . . . . . . . . . . . . 4.2.1 Ukl´ad´an´ı dat a n´avrh datab´azov´e struktury . 4.2.2 Architektura, algoritmy a pouˇzit´e technologie 4.2.3 Implementaˇcn´ı pozn´amky . . . . . . . . . . . 4.3 Z´ıskan´a data . . . . . . . . . . . . . . . . . . . . . . . 4.4 Zn´am´e probl´emy . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
15 15 16 16 17 19 21 22
. . . . . .
24 24 25 27 28 30 30
. . . .
. . . .
. . . .
. . . .
. . . .
5 Statistick´ e v´ ystupy a jejich porovn´ an´ı s dostupn´ ymi daty 5.1 Jak´e informace zjiˇst’ovat a z jak´eho d˚ uvodu? . . . . . . . . . 5.2 Obyvatelstvo . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Ciz´ı jazyky a vzdˇel´an´ı . . . . . . . . . . . . . . . . . . . . . 5.4 Mladistv´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.5 Obl´ıben´e sporty a hudba . . . . . . . . . . . . . . . . . . . . 5.6 Shrnut´ı kapitoly . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
6 Anal´ yza z´ıskan´ e s´ıtˇ e 6.1 V´ ybˇer vhodn´eho frameworku . . . . . . . . . . . . . . . . . . . . . . . 6.2 Z´akladn´ı informace o s´ıti . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 V´ ysledky Centrality measures a jejich porovn´an´ı . . . . . . . . . . . .
31 31 32 35
7 Z´ avˇ er 39 7.1 Budouc´ı pr´ace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 A Uˇ zivatelsk´ e pˇ r´ıruˇ cky 47 A.1 Webov´ y robot SNABot . . . . . . . . . . . . . . . . . . . . . . . . . . 47 A.2 Framework SNAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 A.3 SNABot-nastroje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 B Form´ aty soubor˚ u
50
C Rozˇ s´ıˇ ren´ı statistik
51
D Porovn´ an´ı v´ ysledk˚ u aproximace s pˇ resn´ ym v´ ypoˇ ctem
52
E V´ ysledky Centrality measures pro orientovanou s´ıt’ a aproximace 54 F J´ adro s´ıtˇ e
57
´ 1 Uvod S rozvojem online soci´aln´ıch s´ıt´ı (online social network – OSN), odehr´avaj´ıc´ı se v posledn´ıch letech, se otv´ır´a nov´a moˇznost, jak zkoumat strukturu lidsk´e spoleˇcnosti a jejich vztah˚ u. Touto moˇznost´ı je anal´ yza soci´aln´ıch s´ıt´ı (social network analysis – SNA). Tento analytick´ y n´astroj je pouˇz´ıv´an napˇr. v marketingu, sociologii ˇci kriminalistice. Pr´ace se zab´ yv´a anal´ yzou soci´aln´ı s´ıtˇe pˇra´tel, kter´a byla z´ısk´ana z OSN Lid´e.cz. Obecnˇe se vˇsak OSN nemus´ıme omezovat. Tyto metody lze uplatnit v mnoha dalˇs´ıch soci´aln´ıch s´ıt´ıch od spolupr´ace mezi herci, telefonn´ımi hovory aˇz po krimin´aln´ı s´ıt’. C´ılem pr´ace nen´ı komplexn´ı anal´ yza zvolen´e OSN (nenaleznete zde napˇr. anal´ yzu komunit ˇci dynamiky), ale pˇribl´ıˇzit ˇcten´aˇri moˇznosti, kter´e SNA nab´ız´ı a uk´azat, proˇc jsou jej´ı metody vyuˇz´ıv´any napˇr. FBI [25] ˇci arm´adn´ımi zpravodajci [26]. Po prvn´ıch dvou kapitol´ach, vˇenuj´ıc´ıch se zejm´ena pojm˚ um z teorie graf˚ u, pˇredstaven´ı a anal´ yze zvolen´e OSN, n´asleduje kapitola zab´ yvaj´ıc´ı se automatick´ ym sbˇerem dat pro dalˇs´ı anal´ yzu. Vzhledem k tomu, ˇze pro naˇsi anal´ yzu byla zvolena OSN, je v t´eto kapitole pops´an postup n´avrhu webov´eho robota, kter´ y umoˇzn´ı jej´ı automatick´e z´ısk´an´ı. P´at´a kapitola si klade za c´ıl motivovat napˇr. zamˇestnance marketingov´ ych ˇci reklamn´ıch agentur a uk´azat, jak´e informace lze z dat uchovan´ ych v OSN z´ıskat. V´ ysledky jsou pr˚ ubˇeˇznˇe porovn´av´any s podobn´ ymi pr˚ uzkumy, jeˇz jsou prov´adˇeny klasickou“ ” dotazn´ıkovou formou. Tento krok se snaˇz´ı urˇcit, do jak´e m´ıry lze povaˇzovat data, kter´a uˇzivatel´e uv´adˇej´ı, za spolehliv´a. Posledn´ı kapitola se zab´ yv´a samotnou anal´ yzou z´ıskan´e s´ıtˇe. Naleznete zde nˇekter´e z´akladn´ı vlastnosti t´eto s´ıtˇe a porovn´an´ı, na kolik odpov´ıd´a teoretick´ ym model˚ um, kter´e jsou uvedeny v druh´e kapitole. Dalˇs´ı ˇca´st´ı t´eto kapitoly jsou ˇzebˇr´ıˇcky sestaven´e dle metod, kter´e umoˇzn ˇuj´ı v s´ıti identifikovat kl´ıˇcov´e osoby, diskuse z´ıskan´ ych v´ ysledk˚ u a jejich porovn´an´ı s podobn´ ymi pracemi. V z´ıskan´e s´ıti se t´eˇz snaˇz´ım ovˇeˇrit teorii mal´eho svˇeta, zaloˇzenou S. Milgramem roku 1967 [29]. Ta inspirovala divadeln´ı hru a n´aslednˇe televizn´ı film, kter´ y tuto hypot´ezu ˇ proslavil tvrzen´ım: Kaˇzd´ y na t´eto planetˇe je oddˇelen jen ˇsesti jin´ ymi lidmi. Sest ” krok˚ u od sebe. Mezi n´ami a k´ ymkoli jin´ ym na t´eto planetˇe. Prezident Spojen´ ych st´at˚ u. Ben´atsk´ y gondoli´er... “ [10]. Pr´ace je inspirov´ana v´ yzkumem A.L. Barab´asiho [5, 10] zkoumaj´ıc´ım r˚ uzn´e typy komplexn´ıch s´ıt´ı a pˇredstavuj´ıc´ı jejich tzv. bezˇsk´alov´ y model. D´ale pracemi, kter´e zkoumaj´ı jin´e OSN (napˇr. Facebook.com, Flickr.com aj.) [18, 30, 6]. Za ˇcesk´e jmenujme [21] analyzuj´ıc´ı OSN CouchSurfing.com ˇci [24] zkoumaj´ıc´ı soci´aln´ı s´ıt’ organiz´ator˚ u z´aˇzitkov´ ych akc´ı. 1
2 Soci´aln´ı s´ıtˇe a jejich anal´yza Pojem soci´aln´ı s´ıt’ poch´az´ı ze sociologie a je formulov´an jako skupina soci´aln´ıch vztah˚ u nebo vazeb mezi akt´ery, kter´e vz´ajemnˇe propojuj´ı [14, 23]. Tyto vazby mohou b´ yt kladn´e ˇci z´aporn´e, m´ıt stejnou nebo rozd´ılnou v´ahu a orientaci. Soci´aln´ı s´ıt’ lze reprezentovat grafem (viz ˇc´ast 2.1) nebo matic´ı sousednosti [23, 26]. Graf, kter´ y reprezentuje soci´aln´ı s´ıt’ se naz´ yv´a sociogramem [14, 23]. V sociogramu jsou akt´eˇri zobrazeni jako vrcholy (body) a jejich vztahy jako hrany (vazby, kter´e vrcholy spojuj´ı). Jeho uk´azku m˚ uˇzete vidˇet na obr. 2.1 (pro vizualizaci byla pouˇzita data z [12] a program Gephi [11]). V tomto obr. je velikost a barva vrcholu d´ana jeho oblibou“ mezi ostatn´ımi vrcholy (jedn´a se o orientovanou vazbu – povaˇzuji ho za ” ” pˇr´ıtele“). V´ ypoˇcet je zaloˇzen na metrice Betweenness centrality (viz kapitola 2.4.3).
Robin Walt Ben
Steve
Alex Gary
Earl Ev
Bob
Pat
Mel
Jack
Dale Jim
Chris
Dan
Rick
Ovid
Nan
Irv
Ken
Carl
Upton
Hugh
Gerry
Tom
Hal
Vic
Zoe
Len
Fred Abe
Ivo
Obr. 2.1: Uk´azka sociogramu. Online soci´aln´ı s´ıt’ (Online social network – OSN) je v [17] definov´ana jako webov´a sluˇzba, kter´a uˇzivatel˚ um umoˇzn ˇuje vytvoˇrit si vlastn´ı profil1 , navazovat s dalˇs´ımi uˇzivateli spojen´ı a prohl´ıˇzet si jejich profily nebo jejich spojen´ı. OSN se tak snaˇz´ı pˇren´est ˇca´sti re´aln´ ych soci´aln´ıch s´ıt´ı do virtu´aln´ıho prostˇred´ı. 1
Vlastn´ı webovou str´ anku, kter´ a obsahuje informace o uˇzivateli.
2
Soci´aln´ı s´ıtˇe a jejich anal´yza
Polomˇer, hustota a dalˇs´ı pojmy z teorie graf˚ u
Za prvn´ı OSN je povaˇzov´ana SixDegrees.com, spuˇstˇen´a v roce 1997 a ukonˇcena v roce 2000 [17]. Mezi dneˇsn´ı nejzn´amˇejˇs´ı OSN patˇr´ı Facebook2 , Twitter3 nebo Google+4 . Za ˇcesk´e jmenujme Lid´e.cz5 nebo Spoluˇza´ci.cz6 . Anal´yzou soci´aln´ı s´ıtˇe (jak re´aln´e, tak virtu´aln´ı) rozum´ıme zkoum´an´ı, detekov´an´ı a interpretov´an´ı vzor˚ u, kter´e tvoˇr´ı soci´aln´ı vazby mezi akt´ery [16]. Oblasti vyuˇzit´ı t´eto anal´ yzy jsou ˇsirok´e, od vyuˇzit´ı v marketingu, modelov´an´ı pˇrenos˚ u nemoc´ı, zkoum´an´ı moˇzn´eho napojen´ı na krimin´aln´ı organizace, aˇz po anal´ yzu politick´eho hlasov´an´ı [10, 26, 27].
2.1
Polomˇ er, hustota a dalˇ s´ı pojmy z teorie graf˚ u
V t´eto ˇca´sti naleznete nˇekolik pojm˚ u z teorie graf˚ u, kter´e budou v textu d´ale pouˇz´ıv´any a jejich aplikaci na soci´aln´ı s´ıt’, kter´a bude d´ale zkoum´ana. Jako zdroje byly pouˇzity [4, 18, 23]. Graf, jeho orientace a v´ ahy hran Jako graf G oznaˇcujeme dvojici G = (V, E), kde V je koneˇcn´a nepr´azdn´a mnoˇzina vrchol˚ u a E je koneˇcn´a mnoˇzina hran, kter´e mezi sebou propojuj´ı dvojice vrchol˚ u z mnoˇziny V . Poˇcet vrchol˚ u V budeme znaˇcit jako n a poˇcet hran E jako m. Pokud budou vrcholy spojeny hranou, bude v textu d´ale znaˇceno, ˇze vrchol vi m´a kontakt na vrchol vj a hrana bude znaˇcena jako {vi , vj }. V naˇsem pˇr´ıpadˇe, budou vrcholy pˇredstavovat uˇzivatele OSN a hrany jejich virtu´aln´ı pˇr´atelstv´ı. Jako orientovan´y graf uvaˇzujeme takov´ y graf, u kter´eho rozliˇsujeme smˇer odkud (z v´ ychoz´ıho vrcholu) kam (do c´ılov´eho vrcholu) hrana vede tzn. hrana {x, y} = 6 {y, x}. U neorientovan´eho grafu tento smˇer neuvaˇzujeme tzn. hrana {x, y} = {y, x}. Graf oznaˇc´ıme jako nev´aˇzen´y, pokud jeho hrany nejsou ohodnoceny v´ahou7 , pˇr´ıpadnˇe pokud plat´ı ω(e) = 1; ∀e ∈ E, kde ω je funkc´ı urˇcuj´ıc´ı v´ahu hrany. V´aˇzen´ym grafem naopak oznaˇc´ıme graf, u kter´eho rozliˇsujeme v´ahy jednotliv´ ych hran. 2
http://www.facebook.com http://www.twitter.com 4 http://plus.google.com 5 http://www.lide.cz 6 http://www.spoluzaci.cz 7 V´ aha m˚ uˇze pˇredstavovat napˇr. cenu, vzd´alenost, kapacitu apod. 3
3
Soci´aln´ı s´ıtˇe a jejich anal´yza
Polomˇer, hustota a dalˇs´ı pojmy z teorie graf˚ u
Stupeˇ n vrcholu Jako stupeˇ n vrcholu v dG (v) oznaˇcujeme poˇcet hran z mnoˇziny E, pro kter´e plat´ı {v, x} ˇci {x, v}. Pokud mluv´ıme o neorientovan´em grafu, nez´aleˇz´ı, zda bude uzel v c´ılov´ y nebo poˇc´ateˇcn´ı. U orientovan´eho grafu oznaˇcujeme jako d+ cet v´ ystupG (v) poˇ n´ıch hran z vrcholu v. Pro poˇcet vstupn´ıch hran pouˇz´ıv´ame znaˇcen´ı d− (v). V pˇ r´ıpadˇe G v´aˇzen´eho grafu poˇc´ıt´ame nejen s poˇctem hran, ale i s jejich v´ahou. V naˇsem pˇr´ıpadˇe stupeˇ n vrcholu v vyjadˇruje, kolik m´a uˇzivatel v virtu´aln´ıch pˇra´tel (v´ ystupn´ıch hran) a kolik uˇzivatel˚ u ho za pˇr´ıtele povaˇzuje (vstupn´ı hrany). V ˇca´sti 2.4.1 naleznete metriku, kter´a pracuje v´ yhradnˇe s touto informac´ı. Cesta a nejkratˇ s´ı cesta Cestou v grafu G oznaˇcujeme libovolnou posloupnost pˇrechod˚ u mezi vrcholy va a vz za pomoci hran {va , vb },{vb , vc } ... {vy , vz }, ve kter´e se kaˇzd´ y vrchol vi objevuje pouze jednou. Nejkratˇs´ı cestou mezi dvˇema vrcholy rozum´ıme cestu, jej´ıˇz ohodnocen´ı je ze vˇsech existuj´ıc´ıch cest minim´aln´ı. Pokud graf obsahuje v´ıce komponent (Ki , Kj viz d´ale), d´elka nejkratˇs´ı cesty z vrcholu va ∈ Ki do vrcholu vz ∈ Kj je nekoneˇcn´a. V naˇsem pˇr´ıpadˇe cesta znamen´a posloupnost uˇzivatel˚ u, kter´a je zapotˇreb´ı pro komunikaci mezi uˇzivateli va a vz . Tuto komunikaci je moˇzn´e zprostˇredkovat pomoc´ı pˇra´tel. Komponenta Komponentou Ki v grafu G oznaˇc´ıme podgraf (podmnoˇzina vrchol˚ u a hran p˚ uvodn´ıho grafu), neexistuje-li cesta z vrcholu vi ∈ Ki do vrcholu vj ∈ Kj , pˇriˇcemˇz plat´ı Ki ∩ Kj = ∅. Jin´ ymi slovy – ˇza´dn´ y vrchol z Ki nen´ı spojen hranou s vrcholem patˇr´ıc´ı do Kj . Pokud z kaˇzd´eho vrcholu v existuje koneˇcn´a cesta do vˇsech vrchol˚ u, m´a graf jednu komponentu. Pokud by v grafu bylo v´ıce komponent, znamen´a to, ˇze uˇzivatel´e z komponenty Ki , nemohou za pomoci sv´ ych kontakt˚ u, komunikovat s uˇzivateli z komponenty Kj . Hustota grafu Hustota grafu je d´ana jako pomˇer hran existuj´ıc´ıch a hran vˇsech moˇzn´ ych. Pro m 2m y pak ∆ = n(n−1) . Kde m je neorientovan´ y graf tedy ∆ = n(n−1) , pro graf orientovan´ poˇcet hran a n poˇcet vrchol˚ u. Jej´ı hodnota se pohybuje v intervalu < 0, 1 >. V re´aln´ ych rozs´ahl´ ych s´ıt´ıch tato hodnota vˇetˇsinou nab´ yv´a mal´ ych hodnot [16].
4
Soci´aln´ı s´ıtˇe a jejich anal´yza
Modely a vlastnosti komplexn´ıch s´ıt´ı
Polomˇ er grafu Polomˇer grafu D je roven ohodnocen´ı nejdelˇs´ı z nejkratˇs´ıch cest vˇsech dvojic vrchol˚ u grafu G. V pˇr´ıpadˇe, ˇze je graf rozdˇelen´ y na v´ıce komponent, plat´ı D = ∞. V tom pˇr´ıpadˇe m´a smysl uvaˇzovat polomˇer nejvˇetˇs´ı komponenty. Pr˚ umˇ ern´ a d´ elka nejkratˇ s´ı cesty Pr˚ umˇern´a d´elka nejkratˇs´ı cesty (Average shortest path length – ASPL) l v grafu G, je definov´ana jako aritmetick´ y pr˚ umˇer d´elek nejkratˇs´ıch cest mezi vˇsemi moˇzn´ ymi dvojicemi vrchol˚ u v grafu G (viz (1) a [15]).
l=
X 1 g(vi , vj ) n(n − 1) i6=j
(1)
Kde n je poˇcet vrchol˚ u a g(vi , vj ) je d´elka nejkratˇs´ı cesty mezi vrcholy vi a vj . Pokud graf obsahuje v´ıce komponent, urˇcujeme ASPL v nejvˇetˇs´ı komponentˇe. Tuto hodnotu lze odhadnout jako l ∼ ln(n)/ ln ln(n). Jak v lidsk´e spoleˇcnosti (ve smyslu propojen´ı pomoc´ı pˇra´tel), tak v dalˇs´ıch s´ıt´ıch, jako napˇr. spolupr´ace herc˚ u v Holywoodu, citaˇcn´ıch s´ıt´ı aj. (viz [10]) je tato hodnota relativnˇe mal´a – ASPL mezi obˇcany USA je uv´adˇena jako 6,5 (viz kapitola 2.3).
2.2
Modely a vlastnosti komplexn´ıch s´ıt´ı
Text v t´eto ˇca´sti vych´az´ı ze zdroj˚ u [10, 15, 5]. Pro modelov´an´ı komplexn´ıch s´ıt´ı se v souˇcasnosti pouˇz´ıvaj´ı tˇri hlavn´ı paradigmata: teorie n´ahodn´ ych graf˚ u, WattsStrogatz˚ uv model a model bezˇsk´alov´ ych s´ıt´ı. Model n´ahodn´ych s´ıt´ı (1959) [10]. pˇredpokl´ad´a, ˇze kaˇzd´a dvojice vrchol˚ u je spojena hranou s pravdˇepodobnost´ı p. Pokud bychom tedy uvaˇzovali p = 0, ˇza´dn´e vrcholy spojeny nebudou, naopak, pokud p = 1 budou spolu spojeny vˇsechny vrcholy. Takto vytvoˇren´e s´ıtˇe, maj´ı relativnˇe mal´ y polomˇer, ale jejich dalˇs´ı vlastnosti neodpov´ıdaj´ı empirick´ ym v´ ysledk˚ um z´ıskan´ ym z re´aln´ ych s´ıt´ı8 . Zejm´ena kv˚ uli absenci vrchol˚ u s nˇekolikan´asobnˇe vˇetˇs´ım stupnˇem neˇz je stupeˇ n pr˚ umˇern´ y, kter´e se v re´aln´ ych s´ıt´ıch bˇeˇznˇe vyskytuj´ı. D´ale kv˚ uli mal´emu koeficientu shlukov´an´ı, ve kter´em se odr´aˇz´ı neschopnost podobn´ ych vrchol˚ u vytv´aˇret tzv. shluky, ve kter´ ych je vˇetˇsina vrchol˚ u vz´ajemnˇe propojena. 8
Ty m˚ uˇzete nal´ezt v [5], jedn´ a se napˇr. o s´ıt’ webov´ ych str´anek, spolupr´ace herc˚ u aj.
5
Soci´aln´ı s´ıtˇe a jejich anal´yza
Modely a vlastnosti komplexn´ıch s´ıt´ı
Model, kter´ y probl´em s mal´ ym koeficientem shlukov´an´ı odstraˇ nuje, se naz´ yv´a WattStrogatz˚ uv model (1998) [10]. Ten pouˇz´ıv´a vrcholy uspoˇr´adan´e do kruhu, jenˇz jsou propojeny se sv´ ymi K sousedy, kde K urˇcuje poˇcet propojen´ ych soused˚ u (K/2 na kaˇzd´e stranˇe). Pot´e jsou nˇekter´e vrcholy propojeny jako v modelu pˇredchoz´ım – tento krok vytv´aˇr´ı tzv. slab´e vazby9 zmenˇsuj´ıc´ı polomˇer s´ıtˇe. Tento model vˇsak st´ale nevyˇreˇsil existenci vrchol˚ u s vysok´ ym stupnˇem. Ten ˇreˇs´ı aˇz model bezˇsk´alov´ych s´ıt´ı (2001) [5].
2.2.1
Bezˇ sk´ alov´ e s´ıtˇ e a mocninn´ y z´ akon
Pˇri zkoum´an´ı re´aln´ ych s´ıt´ı, at’ jiˇz rozvoden elektˇriny, spolupr´ace herc˚ u v Holywoodu nebo zkoum´an´ı struktury internetu, se uk´azalo, ˇze nˇekter´e vrcholy maj´ı oproti jin´ ym nˇekolikan´asobnˇe vˇetˇs´ı stupeˇ n. Takov´eto vrcholy budeme d´ale oznaˇcovat jako centra. V pˇredchoz´ıch modelech je nepˇr´ıtomnost center d´ana Poissonov´ ym rozdˇelen´ım pravdˇepodobnosti, kter´ ym se u vrchol˚ u ˇr´ıd´ı rozdˇelen´ı jejich stupnˇe. Pro vysvˇetlen´ı vzniku center je tˇreba vz´ıt v u ´vahu, ˇze vrcholy jsou do s´ıtˇe pˇrid´av´any postupnˇe a neexistuj´ı v s´ıti od jej´ıho poˇc´atku, jak uvaˇzovaly modely pˇredchoz´ı. Starˇs´ı vrcholy tak maj´ı v´ıce ˇcasu na z´ısk´an´ı v´ıce kontakt˚ u. Dle [10] tento samotn´ y fakt pro vznik center nestaˇc´ı. Dalˇs´ım pravidlem pro pˇripojov´an´ı vrchol˚ u je tzv. preferenˇcn´ı pˇripojov´an´ı. To ˇr´ık´a, ˇze pravdˇepodobnost pˇripojen´ı nov´eho vrcholu k vrchol˚ um st´avaj´ıc´ım je u ´mˇern´a jejich ˇ stupni a atraktivitˇe“ pro nov´e vrcholy. C´ım vˇetˇs´ı stupeˇ n tedy vrchol m´a a ˇc´ım je ” pro nov´e vrcholy atraktivnˇejˇs´ı“, t´ım je pravdˇepodobnˇejˇs´ı, ˇze z´ısk´a dalˇs´ı kontakty. ” Na obr. 2.2 m˚ uˇzete vidˇet v´ yvoj bezˇsk´alov´e s´ıtˇe, kde kaˇzd´ y obr´azek pˇredstavuje pˇrid´an´ı nov´eho vrcholu (zn´azornˇen´ y pr´azdn´ ym krouˇzkem), pˇriˇcemˇz se kaˇzd´ y nov´ y vrchol m˚ uˇze pˇripojit pr´avˇe ke dvˇema vrchol˚ um. Nov´e vrcholy se ˇr´ıd´ı preferenˇcn´ım pˇripojov´an´ım (pouze podle stupnˇe) a jak je z obr´azku vidˇet, vznikaj´ı tak centra s vysok´ ym stupnˇem. Tyto dva faktory odstraˇ nuj´ı v´ yˇse zmiˇ novan´e Poissnovo rozdˇelen´ı a nahrazuj´ı ho tzv. mocninn´ym z´akonem. Tento z´akon se ˇr´ıd´ı vzorcem (2), N (k) = k −γ
(2)
kde N (k) znaˇc´ı ˇcetnost v´ yskytu vrchol˚ u stupnˇe k. Jako γ je oznaˇcen exponent konektivity. Tento exponent m´a v re´aln´ ych s´ıt´ıch nejˇcastˇeji hodnotu 2 ≤ γ ≤ 3 [10]. S´ıtˇe, ˇr´ıd´ıc´ı se mocninn´ ym z´akonem maj´ı nˇekolik spoleˇcn´ ych vlastnost´ı. D´ıky centr˚ um maj´ı relativnˇe mal´ y polomˇer a jsou odoln´e proti n´ahodn´ ym v´ ypadk˚ um. V s´ıt´ıch, ve kter´ ych plat´ı γ ≤ 3, pak lze n´ahodnˇe odebrat t´emˇeˇr vˇsechny vrcholy a s´ıt’ se st´ale 9
V [10, 14] se uv´ ad´ı, ˇze pr´ avˇe slab´e vazby hraj´ı v soci´aln´ı interakci d˚ uleˇzitou roli napˇr. pˇri hled´ an´ı zamˇestn´ an´ı nebo pˇri rozˇsiˇrov´an´ı f´am.
6
Soci´aln´ı s´ıtˇe a jejich anal´yza
Small-world experiment
Obr. 2.2: V´ yvoj bezˇsk´alov´e s´ıtˇe – obr´azek byl pˇrevzat z [10]. nerozpadne na v´ıce komponent [10]. Na druhou stranu, pro bezˇsk´alov´e s´ıtˇe plat´ı, ˇze pokud bychom vrcholy odeb´ırali c´ılenˇe, staˇc´ı jich odebrat pouze nˇekolik a s´ıt’ se rozpadne – v tomto pˇr´ıpadˇe bychom volili pr´avˇe centra.
2.3
Small-world experiment
Roku 1967 provedl S. Milgram experiment [29], kter´ y mˇel ovˇeˇrit kolik prostˇredn´ık˚ u je zapotˇreb´ı pro spojen´ı dvou n´ahodn´ ych lid´ı v USA. Pˇri tomto experimentu rozeslal v´ıce neˇz sto sloˇzek r˚ uzn´ ym lidem v Nebrasce, kteˇr´ı mˇeli za u ´kol pˇreposlat tyto sloˇzky 10 c´ılov´emu ˇclovˇeku v Massachusetts a dodrˇzet pravidlo, ˇze je sloˇzku moˇzn´e pˇreposlat pouze osobˇe, kterou osobnˇe znaj´ı. C´ılem bylo zjistit, na kolik je lidsk´a spoleˇcnost propojen´a (formou zn´am´ ych a pˇr´atel). V´ ysledky uk´azaly, ˇze tyto sloˇzky dorazily k c´ılov´emu ˇclovˇeku za pouˇzit´ı dvou aˇz deseti prostˇredn´ık˚ u, pˇriˇcemˇz jejich pr˚ umˇern´ y poˇcet byl 5,5. Je nutn´e podotknout, ˇze v´ ysledek m˚ uˇze b´ yt ponˇekud zav´adˇej´ıc´ı. D´elka tˇechto cest byla d´ana nejlepˇs´ım odhadem lid´ı, kteˇr´ı topologii t´eto s´ıtˇe neznali. Na zkreslen´ı v´ ysledku se takt´eˇz mohlo projevit to, ˇze z p˚ uvodn´ıch 160 sloˇzek jich k c´ıli dorazilo pouze 27,5%, tj. jen 44. Po pr˚ uzkumu ˇretˇezc˚ u Milgram nalezl nˇekolik dalˇs´ıch zaj´ımavost´ı. C´ılov´e osobˇe dorazilo 48% sloˇzek pˇres cesty, kde se jako posledn´ı zprostˇredkovatel´e vyskytovali pouze tˇri r˚ uzn´e osoby. To m˚ uˇze naznaˇcovat, ˇze nˇekter´e cesty jsou vyuˇz´ıv´any v´ıce neˇz ostatn´ı. U podobn´eho experimentu (oznaˇcovan´eho jako Kansask´ y) zjistil, ˇze jak ˇzeny, tak muˇzi pˇrepos´ılali sloˇzky stejn´emu pohlav´ı ˇcastˇeji – pˇribliˇznˇe o 78%. ˇ Tento experiment inspiroval divadeln´ı hru s n´azvem Sest stupˇ n˚ u odlouˇcen´ı, kter´a byla pozdˇeji zfilmov´ana. V t´e se mylnˇe uv´ad´ı, ˇze fenom´en ˇsesti krok˚ u plat´ı pro cel´ y svˇet [10]. Posledn´ı studie, viz [6], zkoumaj´ıc´ı v´ıce neˇz 720 mili´on˚ u uˇzivatel˚ u OSN 10
Vzd´ alen´ y z v´ ychoz´ıho bodu pˇribliˇznˇe 2 300 km.
7
Soci´aln´ı s´ıtˇe a jejich anal´yza
Centrality measures
Facebook.com z nˇekolika zem´ı vˇsak ukazuje, ˇze tato hodnota je jeˇstˇe menˇs´ı. Jako ASPL uv´ad´ı 4,74 – tedy pouze“11 3,74 stupnˇe odlouˇcen´ı. ”
2.4
Centrality measures
Centrality measures (CM) jsou kolekc´ı metod, umoˇzn ˇuj´ıc´ıch mˇeˇren´ı tzv. centrality jednotliv´ ych vrchol˚ u, kter´a urˇcuje jejich v´ yznamnost v s´ıti [18, 23, 26]. Vrcholy s vysokou centralitou maj´ı v s´ıti v´ yhodnˇejˇs´ı pozici, napˇr. ve smyslu moˇznosti kontroly toku informac´ı nebo moˇznosti ovlivˇ novat vrcholy ostatn´ı. Mezi tˇri hlavn´ı metody, kter´e umoˇzn ˇuj´ı centralitu mˇeˇrit, patˇr´ı Degree centrality (CD ), Closeness centrality (CC ) a Betweenness centrality (CB ) [23, 26]. V dalˇs´ım textu budou pops´any z´akladn´ı pˇr´ıstupy k tˇemto metod´am, nejˇcastˇeji oznaˇcovan´e jako Freemanovy12 . Pro kaˇzdou z tˇechto metod existuje nˇekolik dalˇs´ıch variant (napˇr. Bonachiho pˇr´ıstup pro CD , Eigenvector vych´azej´ıc´ı z CC aj.), kter´e tyto z´akladn´ı pˇr´ıstupy rozˇsiˇruj´ı (viz [23]). V´ ysledky vˇsech metod lze normalizovat, coˇz umoˇzn ˇuje vz´ajemn´e porovn´an´ı mezi podobn´ ymi s´ıtˇemi.
2.4.1
Degree centrality
Degree centrality je nejjednoduˇsˇs´ı metoda, kdy je centralita urˇcena stupnˇem uzlu13 (viz ˇca´st 2.1). U orientovan´e s´ıtˇe se m˚ uˇze jednat o stupeˇ n v´ ystupn´ı, vstupn´ı nebo kombinaci obou. Vrchol s vˇetˇs´ım stupnˇem je zv´ yhodnˇen t´ım, ˇze m´a v´ıce moˇznost´ı, jak v s´ıti komunikovat. T´ım se st´av´a m´enˇe z´avisl´ ym na vrcholech dalˇs´ıch. Z´aroveˇ n m˚ uˇze jin´ ym vrchol˚ um slouˇzit jako prostˇredn´ık pˇri komunikaci a z t´eto sluˇzby tˇeˇzit. V orientovan´e s´ıti jsou vrcholy s vysok´ ym vstupn´ım stupnˇem oznaˇcov´any jako prominentn´ı nebo prestiˇzn´ı, vrcholy s vysok´ ym v´ ystupn´ım stupnˇem pak jako vrcholy vlivn´e [23]. Normalizovan´a verze t´eto metriky viz vzorec (3) a [18], CD (vi ) =
d(vi ) n−1
(3)
kde d(vi ) je stupeˇ n vrcholu vi a n celkov´ y poˇcet vrchol˚ u v s´ıti. 11
Zde je moˇzn´e se na probl´em d´ıvat ze dvou stran. Z jedn´e strany se skuteˇcnˇe jedn´a o mal´e ˇc´ıslo. Na druhou stranu se jedn´ a o nˇekolik okruh˚ u zn´am´ ych, coˇz m˚ uˇze b´ yt velk´a psychologick´ a ” vzd´ alenost“ [29]. 12 Jejich autorem je sociolog Linton C. Freeman, viz [20]. 13 U v´ aˇzen´e s´ıtˇe m˚ uˇzeme pouˇz´ıt tzv. Weighed degree centrality, kter´a pro v´ ypoˇcet pouˇz´ıv´a nejen poˇcet hran, ale i jejich v´ ahu.
8
Soci´aln´ı s´ıtˇe a jejich anal´yza
Centrality measures
Nev´ yhodou t´eto metody je, ˇze vrcholy s vysokou hodnotou CD nemus´ı b´ yt ty s nejvˇetˇs´ı centralitu nebo mohou b´ yt centr´aln´ı pouze lok´alnˇe [23]. Naopak v´ yhodou t´eto metody je n´ızk´a v´ ypoˇcetn´ı sloˇzitost.
2.4.2
Closeness centrality
Closeness centrality – pˇresnˇejˇs´ı metoda, kter´a analyzuje, jak je vrchol bl´ızko k dalˇ ım je bl´ıˇze, t´ım efektivnˇeji dok´aˇze s dalˇs´ımi vrcholy komunikovat. ˇs´ım vrchol˚ um. C´ Takt´eˇz t´ım vzr˚ ust´a ˇsance, ˇze komunikace bude u ´spˇeˇsn´a (zpr´ava nebude jin´ ymi uzly zam´ıtnuta apod.). Dalˇs´ı v´ yhodou vrcholu s vysokou hodnotou CC je, ˇze se jej pravdˇepodobnˇe budou ostatn´ı vrcholy snaˇzit vyuˇz´ıt pˇri komunikaci, ˇc´ımˇz tento vrchol z´ısk´av´a na d˚ uleˇzitosti [23]. V´ ypoˇcet t´eto metriky je d´an jako pˇrevr´acen´a hodnota souˇctu d´elek nejkratˇs´ıch cest s´ıtˇe. Normalizovan´a verze viz vzorec (4) a [18], −1
n 1 X g(vi , vj ) CC (vi ) = n − 1 j6=i
(4)
kde vi je v´ ychoz´ı vrchol, vj vrchol c´ılov´ y, n poˇcet vrchol˚ u v s´ıti a g(vi , vj ) je d´elka nejkratˇs´ı cesty z vrcholu vi do vrcholu vj . Tato metoda narozd´ıl od CD dok´aˇze odhalit i vrcholy menˇs´ıho stupnˇe, kter´e jsou vˇsak na z´akladˇe sv´e polohy“ v s´ıti v´ yznamn´e [23, 26]. Nev´ yhodou je jej´ı v´ ypoˇcetn´ı ” 3 2 sloˇzitost, kter´a je pro v´aˇzen´e s´ıtˇe O(nm + n ) a pro nev´aˇzen´e O(nm + n ), viz [8].
2.4.3
Betweenness centrality
Betweenness centrality je komplexn´ı metoda, kter´a analyzuje, jak ˇcasto vrchol leˇz´ı na nejkratˇs´ı cestˇe pˇri komunikaci mezi vrcholy dalˇs´ımi [18, 23]. Vrcholy s vysokou hodnotou CB jsou d˚ uleˇzit´e, protoˇze napˇr. umoˇzn ˇuj´ı efektivn´ı komunikaci mezi r˚ uzn´ ymi komunitami. Sv´eho postaven´ı tak mohou vyuˇz´ıvat a vyb´ırat servisn´ı poplatky“, rozhodnout se blokovat neˇza´douc´ı zpr´avy nebo izolovat nˇekter´e ” vrcholy. T´ımto mohou do znaˇcn´e m´ıry kontrolovat dˇen´ı v s´ıti [23, 26]. V´ ypoˇcet CB se pro vrchol vi vypoˇc´ıt´a jako:
CB (vi ) =
X vs 6=vi 6=vt
9
σst (vi ) σst
(5)
Soci´aln´ı s´ıtˇe a jejich anal´yza
Centrality measures
kde σst je poˇcet nejkratˇs´ıch cest mezi vrcholy vs a vt (pokud maj´ı stejn´e ohodnocen´ı, m˚ uˇze jich b´ yt v´ıce) a σst (vi ) je poˇcet nejkratˇs´ıch cest mezi vrcholy vs a vt , kter´e proch´azej´ı vrcholem vi [18]. Normalizace t´eto metriky se provede vydˇelen´ım CB (vi ) s (n − 1)(n − 2) pro s´ıt’ orientovanou a (n−1)(n−2) pro s´ıt’ neorientovanou [32]. Kde n je poˇcet vrchol˚ u v s´ıti. 2 V´ yhodou CB je nalezen´ı vrchol˚ u, kter´e jsou v s´ıti nejv´ıce vyuˇz´ıv´any pˇri pˇred´av´an´ı zpr´av, za pˇredpokladu vyuˇz´ıv´an´ı nejkratˇs´ıch cest. Jej´ı nev´ yhodou je jej´ı v´ ypoˇcetn´ı sloˇzitost, kter´a je uv´adˇena jako O(mn + n2 log n) pro v´aˇzen´e s´ıtˇe, pro nev´aˇzen´e pak O(mn), viz [8]. To plat´ı pˇri pouˇzit´ı algoritmu uv´adˇen´eho v [13] jinak je pro v´aˇzen´e i nev´aˇzen´e O(n3 ).
10
3 Online soci´aln´ı s´ıt’ Lid´e.cz Soci´aln´ı s´ıt’ Lid´e.cz je nejvˇetˇs´ı ˇceskou OSN1 , kterou provozuje firma Seznam.cz, a.s. V dobˇe sv´eho vzniku (1997) slouˇzila k vyhled´av´an´ı e-mailov´ ych adres2 . Pozdˇeji se transformovala do dneˇsn´ı podoby, umoˇzn ˇuj´ıc´ı uˇzivatel˚ um mezi sebou komunikovat, seznamovat se, vz´ajemnˇe si prohl´ıˇzet profily apod.
3.1
Smluvn´ı podm´ınky a autorsk´ y z´ akon
P´at´ y bod tˇret´ı ˇca´sti smluvn´ıch podm´ınek Lid´e.cz (viz [36]) ˇr´ık´a, ˇze uveden´ım osobn´ıch informac´ı o sv´e osobˇe, uˇzivatel souhlas´ı s jejich zveˇrejnˇen´ım pˇredem neomezen´emu okruhu osob. Z toho plyne, ˇze pˇri zpracov´an´ı informac´ı z´ıskan´ ych z t´eto OSN by nemˇel b´ yt poruˇsen z´akon o ochranˇe osobn´ıch u ´daj˚ u. Autorsk´y z´akon takov´eto vytˇeˇzov´an´ı datab´aze – zejm´ena pro komerˇcn´ı u ´ˇcely – zakazuje. Z´aroveˇ n ho vˇsak dle §92 povoluje a) pro osobn´ı potˇrebu, b) pro u ´ˇcely vˇedeck´e nebo vyuˇcovac´ı, c) pro u ´ˇcely veˇrejn´e bezpeˇcnosti nebo spr´avn´ıho ˇci soudn´ıho ˇr´ızen´ı [1].
3.2
Pˇ redpokl´ adan´ a velikost
Ofici´aln´ı informace o aktu´aln´ı velikosti t´eto OSN nejsou uv´adˇeny. Poˇcet online uˇzivatel˚ u se pohybuje v rozmez´ı 20 - 30 tis´ıc. Tiskov´a zpr´ava z konce bˇrezna 2007, zveˇrejnˇen´a prostˇrednictv´ım serveru Lupa.cz3 , se zmiˇ nuje o pˇrekon´an´ı hranice milionu uˇzivatel˚ u s vlastn´ım profilem. Spoleˇcnost Netmonitor ve veˇrejn´ ych v´ ystupech z prosince 2012 uv´ad´ı, ˇze pˇribliˇzn´ y poˇcet unik´atn´ıch mˇes´ıˇcn´ıch pˇr´ıstup˚ u (RUM ) na subdom´enˇe http://profil.lide.cz byl 610 tis´ıc. Zde je pro srovn´an´ı nˇekolik u ´daj˚ u z pˇredeˇsl´ ych obdob´ı (hodnoty uvedeny v poˇctu RUM ): ˇ Cerven 2007 – 1,1 milionu; Leden 2010 – 1,5 milionu (maximum v obr. 3.1); Prosinec 2011 – 830 tis´ıc; Kvˇeten 2012 – 710 tis´ıc. 1
Dle spoleˇcnosti NetMonitor (http://www.netmonitor.cz). http://onas.seznam.cz/cz/o-firme/historie-firmy/1997 3 http://www.lupa.cz 2
11
Online soci´aln´ı s´ıt’ Lid´e.cz
Omezen´ı stahov´an´ı
Obr. 3.1 zobrazuje relativn´ı objem vyhled´av´an´ı t´eto OSN pomoc´ı vyhled´avaˇce Google.com. Z obr´azku je vidˇet postupn´ y u ´tlum, kter´ y je pravdˇepodobnˇe zp˚ usoben vstupem zahraniˇcn´ıch OSN (napˇr. Facebook.com) na ˇcesk´ y trh.
Obr. 3.1: Relativn´ı objem vyhled´av´an´ı OSN Lid´e.cz dle aplikace Google Trends4 . Jelikoˇz pr˚ umˇern´ y dennˇe str´aven´ y ˇcas n´avˇstˇevn´ıka na t´eto OSN je relativnˇe vysok´ y (cca 35 min), pˇredpokl´ad´am, ˇze se jedn´a o st´al´e n´avˇstˇevn´ıky“. Souˇcasn´ y poˇcet ” aktivn´ıch profil˚ u5 se tak dle m´eho n´azoru bl´ıˇz´ı pr˚ umˇern´emu poˇctu RUM za posledn´ı rok. Tedy 600 aˇz 800 tis´ıc˚ um. Pˇriˇcemˇz z obr. 3.1 usuzuji, ˇze tento poˇcet stagnuje ˇci pozvolna kles´a.
3.3
Omezen´ı stahov´ an´ı
Po prozkoum´an´ı podm´ınek pouˇz´ıv´an´ı [35] a smluvn´ıch ujedn´an´ı [36] Lid´e.cz zjist´ıme, ˇze se provozovatel o automatick´em proch´azen´ı nezmiˇ nuje (oproti tomu napˇr. pˇri automatick´em proch´azen´ı OSN Facebook.com je nutn´e ˇza´dat o povolen´ı6 ). Soubor robots.txt7 na adrese http://lide.cz/robots.txt, obsahuje pouze ˇra´dky: User-Agent: * Disallow: Ty robot˚ um povoluj´ı n´asledovat veˇsker´e odkazy [2]. Automatick´e proch´azen´ı nen´ı omezeno ani HTML metatagem: <meta name="robots"content="noindex, nofollow"> St´ale je vˇsak moˇzn´e, ˇze si provozovatel nebude pˇra´t, aby tato OSN byla proch´azena nezn´am´ ymi roboty (napˇr. kv˚ uli omezen´ı z´atˇeˇze serveru) a bude se proti tomu br´anit. 4
http://www.google.com/trends Neaktivn´ım uˇzivatel˚ um, kteˇr´ı se v´ıce neˇz 6 mˇes´ıc˚ u nepˇrihl´as´ı, je jejich u ´ˇcet smaz´an [36]. 6 http://www.facebook.com/apps/site_scraping_tos.php 7 Soubor, kter´ y povoluje robot˚ um proch´azet urˇcit´e ˇc´asti webov´e prezentace. 5
12
Online soci´aln´ı s´ıt’ Lid´e.cz
Kter´e webov´e str´anky proch´azet?
Jako pˇr´ıklad uved’me blokaci IP adres s vysok´ ym poˇctem poˇzadavk˚ u, nebo pouˇzit´ı 8 CAPTCHA k´od˚ u. V takov´em pˇr´ıpadˇe by pro naˇse u ´ˇcely bylo vhodn´e zv´aˇzit zmˇenu OSN. Dalˇs´ı moˇznost´ı by mohlo b´ yt z´ısk´an´ı dat z webov´ ych archiv˚ u, jako napˇr. http://www.archive.org. Ty ale nejsou pˇr´ıliˇs aktu´aln´ı a obsahuj´ı pouze zlomek poˇzadovan´ ych webov´ ych str´anek. Alternativn´ı moˇznost´ı by bylo z´ıskat data z webov´e cache Google.com, coˇz je m´ısto, kde Google.com uchov´av´a kopie webov´ ych str´anek, kter´e proˇsel jejich robot [28]. Do t´eto cache se d´a dostat napˇr. pˇres adresu: http://webcache.googleusercontent.com/search?q=cache:adresa Pˇr´ıpadnˇe ve vyhled´avaˇci Google.com vyhledat cache:adresa. Tato cache vˇsak t´eˇz neobsahuje veˇsker´e poˇzadovan´e str´anky a poˇcet pˇr´ıstup˚ u do n´ı m˚ uˇze b´ yt omezen.
3.4
Kter´ e webov´ e str´ anky proch´ azet?
Kaˇzd´ y uˇzivatel, kter´ y si na OSN Lid´e.cz zaloˇz´ı u ´ˇcet, dostane pˇridˇelen´ y profil, na unik´atn´ı adrese http://profil.lide.cz/Jm´ enoUˇ zivatele/profil. Tato u ´vodn´ı str´anka obsahuje struˇcn´e informace o uˇzivateli, nˇekolik jeho pˇr´atel a n´astˇenku (slouˇz´ıc´ı jako vzkazn´ık, kde spolu uˇzivatel´e mohou veˇrejnˇe komunikovat). Dalˇs´ımi str´ankami jsou: • o-mne • moji-pratele • maji-me-v-pratelich • fotogalerie • videa Str´anka o-mne obsahuje veˇsker´e informace, kter´e o sobˇe uˇzivatel uvedl, jako napˇr. jeho z´aliby, vˇek, bydliˇstˇe aj. Str´anka moji pˇ ra ´tel´ e je rozdˇelena na dvˇe ˇca´sti. Prvn´ı ˇca´st moji-pratele obsahuje seznam uˇzivatel˚ u, kter´e majitel profilu povaˇzuje za sv´e pˇra´tele. Druh´a ˇc´ast, majime-v-pratelich je seznam uˇzivatel˚ u, kteˇr´ı povaˇzuj´ı majitele profilu za sv´eho pˇr´ıtele. Tyto dva seznamy se pˇri nepovinn´e autorizaci (ˇz´adosti o nav´az´an´ı pˇra´telstv´ı nen´ı tˇreba potvrzovat), na rozd´ıl od nˇekter´ ych jin´ ych OSN, nemus´ı shodovat. V tom pˇr´ıpadˇe se jedn´a o orientovan´a spojen´ı. 8
Completely Automated Public Turing test to Tell Computers and Humans Apart.
13
Online soci´aln´ı s´ıt’ Lid´e.cz
Kter´e webov´e str´anky proch´azet?
Pokud vezmeme v u ´vahu v´ yˇse uveden´e, je vhodn´e z´ısk´avat data pouze ze str´anek o-mne a moji pˇra´tel´e. Z ˇcasov´ ych d˚ uvod˚ u – pˇredpokl´ad´am staˇzen´ı aˇz 800 tis´ıc profil˚ u (viz ˇca´st 3.2) – jsem se rozhodl stahovat pouze u ´daje ze str´anek moji-pratele a o-mne. Z dat, z´ıskan´ ych ze str´anek moji-pratele, bude vytvoˇrena a d´ale analyzov´ana s´ıt’ pˇra´telstv´ı uˇzivatel˚ u t´eto OSN. Data ze str´anek o-mne budou pouˇzita pro statistick´e u ´ˇcely, jejichˇz v´ ysledky budou porovn´any s dostupn´ ymi u ´daji.
14
4 Z´ısk´an´ı dat V t´eto kapitole naleznete algoritmy a poˇzadavky na webov´eho robota (d´ale jen robota), nˇekolik pozn´amek k implementaci a zp˚ usob, jak´ ym budou data ukl´ad´ana. Na konci kapitoly jsou uvedeny zn´am´e probl´emy a nˇekolik statistik, kter´e jsem pˇri pr˚ uchodu OSN shrom´aˇzdil. Uˇzivatelskou pˇr´ıruˇcku pro pr´aci s roboty naleznete v pˇr´ıloze A.1.
4.1
V´ ybˇ er vhodn´ eho webov´ eho robota
Pˇri v´ ybˇeru vhodn´eho robota jsem vych´azel z nˇekolika jiˇz implementovan´ ych ˇreˇsen´ı 1 2 3 4 (Web-Harvest 2.0 , JSpider 0.5 , JoBo 1.4 , crawler4j aj.). Z´akladn´ı podm´ınkou v´ ybˇeru byla obstojn´a dokumentace a splnˇen´ı co nejvˇetˇs´ıho poˇctu tˇechto, mnou poˇzadovan´ ych, vlastnost´ı: • Moˇznost ukl´adat data do datab´aze, CSV ˇci XML souboru. • Moˇznost pˇreruˇsit stahov´an´ı a moˇznost pokraˇcovat tam, kde robot naposledy skonˇcil. • Logov´an´ı akc´ı robota. • Generov´an´ı z´akladn´ıch statistik stahov´an´ı. • Nastaven´ı robota vlastn´ım zdrojov´ ym k´odem ˇci pomoc´ı XML souboru. • Pˇr´ıtomnost DOM5 parseru, nebo jin´e moˇznosti v´ ybˇeru ˇca´sti HTML str´anky, kter´a bude ukl´ad´ana. • Nastaven´ı doby prodlevy mezi stahov´an´ım jednotliv´ ych str´anek. • Moˇznost zpracov´an´ı nevalidn´ıho HTML. Vˇsechny tyto poˇzadavky splˇ nuje Scrapy [3]. Webov´ y robot, napsan´ y v Pythonu, kter´eho je moˇzn´e pomoc´ı vlastn´ıho zdrojov´eho k´odu libovolnˇe upravit. 1
http://web-harvest.sourceforge.net http://j-spider.sourceforge.net 3 http://www.matuschek.net/jobo-menu 4 http://code.google.com/p/crawler4j 5 Document Object Model – umoˇzn ˇuje pˇristupovat k dat˚ um uloˇzen´ ym v XML nebo HTML souborech pomoc´ı stromov´e struktury, viz http://www.w3.org/DOM. 2
15
Z´ısk´an´ı dat
4.2
Tvorba webov´eho robota
Tvorba webov´ eho robota
Jako z´aklad, pro tvorbu webov´eho robota, jsem pouˇzil framework Scrapy (v. 0.14) [3]. Framework je moˇzn´e pouˇz´ıvat i na slabˇs´ıch stroj´ıch (pˇri bˇehu vyuˇz´ıv´a cca 50 MB pamˇeti).
4.2.1
Ukl´ ad´ an´ı dat a n´ avrh datab´ azov´ e struktury
Pro dalˇs´ı pr´aci, jsem se rozhodl ukl´adat data v relaˇcn´ı datab´azi z n´asleduj´ıc´ıch d˚ uvod˚ u: a) poskytuje dostateˇcnou rychlost; b) oproti XML souboru bude objem dat menˇs´ı; c) data jsou ukl´ad´ana postupnˇe a nehroz´ı tak jejich ztr´ata; d) potˇrebn´a data lze snadno a rychle vyhled´avat; e) oproti grafov´ ym datab´az´ım m´am s jejich pouˇz´ıv´an´ım zkuˇsenosti. To umoˇzn´ı rychlejˇs´ı v´ yvoj a zbude tak v´ıce ˇcasu na z´ısk´an´ı a anal´ yzu dat. Jako c´ılovou relaˇcn´ı datab´azi jsem vybral MySQL6 Community Server (v. 5.5.25a), provozovanou na lok´aln´ım stroji. Toto ˇreˇsen´ı nab´ız´ı dostateˇcnou v´ ykonnost, je ˇs´ıˇreno pod GPL7 licenc´ı, je pˇrenositeln´e a s vyuˇzit´ım n´astroje phpMyAdmin8 nab´ız´ı pˇr´ıjemn´e uˇzivatelsk´e rozhran´ı. Robot byl na datab´azi napojen pomoc´ı knihovny MySQLdb9 . Na obr. 4.1 m˚ uˇzete vidˇet strukturu navrˇzen´e datab´aze. Mezi tabulkami profil, hrany a uzivatel jsem zvolil kardinalitu 1:1. To, v pˇr´ıpadˇe potˇreby omezen´ı datov´eho objemu, umoˇzn´ı pracovat pouze s ˇca´st´ı datab´aze. V pˇr´ıpadˇe odpojen´ı se t´eˇz omez´ı poˇcet polopr´azdn´ ych“ z´aznam˚ u, kter´e by vznikly pˇri pouˇzit´ı jedn´e tabulky. ” U tabulky hrany jsem pro atribut pratele zvolil kompaktnˇejˇs´ı zp˚ usob uchov´av´an´ı dat. Tento atribut je uchov´av´an jako textov´ y seznam. Hlavn´ım d˚ uvodem pro pouˇzit´ı t´eto konstrukce, byl pˇredpoklad relativnˇe velk´eho pr˚ umˇern´eho poˇctu pˇr´atel jednotliv´ ych uˇzivatel˚ u – dle vizu´aln´ı kontroly cca 30 - 50. Testy uk´azaly, ˇze tento zp˚ usob uloˇzen´ı m˚ uˇze uˇsetˇrit pˇri pˇredpokl´adan´em poˇctu 40 milion˚ u hran aˇz 400 MB. Stejn´ y form´at pak lze pouˇz´ıt i pro reprezentaci s´ıtˇe v programech, kter´e s n´ı d´ale pracuj´ı (jako napˇr. Pajek XXL, Gephi aj., viz ˇc´ast 6.1). 6
http://www.mysql.com GNU General Public License – licence pro svobodn´ y software (viz http://www.gnu.org). 8 http://www.phpmyadmin.net 9 http://sourceforge.net/projects/mysql-python 7
16
Z´ısk´an´ı dat
Tvorba webov´eho robota
Obr. 4.1: Struktura pouˇzit´e datab´aze.
4.2.2
Architektura, algoritmy a pouˇ zit´ e technologie
Minimalizace rizika odpojen´ı Pˇri n´avrhu robota jsem vych´azel z potenci´aln´ıho hroz´ıc´ıho odpojen´ı robota od OSN. V prvn´ı ˇradˇe jsem se proto rozhodl pro z´ısk´an´ı s´ıtˇe pˇr´atelstv´ı, kter´a bude d´ale analyzov´ana (viz kapitola 6). Data pro statistick´e u ´ˇcely pak stahovat paralelnˇe z webov´e cache spoleˇcnosti Google.com (viz ˇc´ast 3.3), ˇci je stahovat, po z´ısk´an´ı s´ıtˇe pˇra´telstv´ı, pˇr´ımo z OSN Lid´e.cz. Takto rozloˇzen´e zat´ıˇzen´ı by mˇelo stahov´an´ı urychlit a zmenˇsit riziko odpojen´ı. Jako prodleva mezi stahov´an´ım jednotliv´ ych str´anek byla zvolena jedna vteˇrina. To by mˇelo zv´ yˇsit pravdˇepodobnost, ˇze robot nebude odpojen, pˇr´ıpadnˇe bude odpojen aˇz po z´ısk´an´ı vˇetˇs´ıho mnoˇzstv´ı dat. Robota je moˇzn´e v libovolnou chv´ıli pozastavit a pˇri dalˇs´ım spuˇstˇen´ı pokraˇcovat tam, kde naposledy pˇrestal. Tato vlastnost by tak´e mˇela zmenˇsit riziko odpojen´ı. Z´ısk´ an´ı potˇ rebn´ ych dat Jelikoˇz veˇsker´e profily, maj´ı stejnou strukturu (liˇs´ı se pouze vzhledem10 ) a jedn´a se o relativnˇe mal´ y HTML dokument, je pro z´ısk´an´ı dat vhodn´e pouˇz´ıt DOM parser 10
Uˇzivatel´e si mohou vybrat z nˇekolika tzv. skin˚ u, kter´e pomoc´ı r˚ uzn´ ych kask´adov´ ych styl˚ u mˇen´ı vzhled jejich profilu.
17
Z´ısk´an´ı dat
Tvorba webov´eho robota
a potˇrebn´a data z´ıskat pomoc´ı XPath11 cest. Pˇri zmˇenˇe struktury z´ısk´avan´ ych dokument˚ u je vˇsak nutn´e aktualizovat zastaralou XPath cestu. Protoˇze zdrojov´ y k´od zpracov´avan´ ych HTML soubor˚ u je tvoˇren v´ıce neˇz tis´ıcem ˇr´adk˚ u, vyuˇzil jsem pro urˇcen´ı XPath cest n´astroj˚ u jako XPath Helper ˇci FireBug. Strategie proch´ azen´ı Flickr
LiveJournal
Jako v´ ychoz´ı body, ze kter´ robot zaˇcne OSN proch´azet, jsem urˇcil1,846,198 pseudon´ahodn´e5,284,457 Number ofych users of user population crawled uˇzivatele s pˇrihl´eEstimated dnut´ım nafraction geografickou rozmanitost jejich bydliˇstˇe26.9% a poˇctu jejich 95.4% Dates of crawl Jan 9, 2007 Dec 9 - 11, 2006 O pˇra´tel. Number of friend links 22,613,981 77,402,652 Average number of friends per user 12 12.24 16.97 Pro proch´azen´ı OSN jsem pouˇzsymmetric il algoritmus DFS (ve frameworku Scrapy reali- 73.5% Fraction of links 62.0% zovan´ y z´asobn´ıkem), kter´ by, na rozd´ıl od BFS13 , mˇel i pˇri odpojen´ ı poskytnout7,489,073 Number ofy user groups 103,648 Average number of groups memberships per user 4.62 pˇresnˇejˇs´ı u ´daje napˇr. o exponentu konektivity nebo o pr˚ umˇern´e d´elce nejkratˇs´ıch 21.25
cest (ASPL), viz [30]. Dalˇs´ı algoritmus, pomoc´ı kter´eho lze OSN proch´azet, m˚ uˇzete Table 1: High-level statistics of our social networking sit nal´ezt v [18]. Jedn´a se o tzv. Uniform Sampling. Ten je zaloˇzen na proch´azen´ı n´ahodn´ ych adres profil˚ u, coˇz umoˇzn ˇuje nalezen´ı profil˚ u z v´ıce komponent. Vzhledem 4.1.2 only ı,forward k pˇredem neomezen´ emu Using poˇctu variac´ tvoˇr´ıc´ıchlinks uˇzivatelsk´e jm´eno, ale nen´ı pro4.2.1 naˇse Flickr Flickr w ( ww.flickr.com u ´ˇcely vhodn´ y. Crawling directed graphs, as opposed to undirected graphs, presents additional challenges. In particular, many sgraph
a social network. Th
only by d˚ following links proch´ in theaforward direcfrom a crawl of th Jak bylo dˇr´ıve can zm´ınˇ eno,bez crawled ˇcasov´ ych uvod˚ u jsem zel pouze str´anku is moji9th, and contain tion (i.e., one cannot easily determine the set of nodes h whic pratele (obsahuj´ıc´ı v´ ystupn´ı hrany). To mohlo zp˚ usobit nekompletn´ı zpracov´a2007, n´ı links. Flickr exports a point into a given node). Using only forward links does not komponenty, viz obr. 4.2. Z obr´azku je vidˇet, ˇze pˇri tomto pˇr´ıstupu se mohou vywe used this API to necessarily crawl an entire WCC; instead, it explores the skytovat uˇzivatel´ e, patˇr´ıc´ı do stejn´e komponenty, kteˇr´ı nebudou nalezeni, pokud na group membership in connected component reachable from the set of seed users. nˇe nesmˇeˇruje ˇza´This dn´a limitation vstupn´ı hrana. Lze sak pˇredpokl´ adat,online ˇze pro s´ıt’ only allows us Flickr is typical forvˇ studies that crawl netzkoumanou nebudou pˇr´ıliˇs v´ y znamn´ ı. we were unable to cra works, including measurement studies of the Web [12].
the fraction of users w our crawl, we perform SLEDOVÁNÍ the fact that the vast m VÝSTUPNÍCH the form of [randoml HRAN generated 100,000 ra a possible pool of 90 of these were assigne a random sample of F Among these 6,902 START discovered during ou SLEDOVÁNÍ notpreviously discove VSTUPNÍCH A starting at each user t VÝSTUPNÍCH HRAN reach our set of previo 250 (5.0%) of the mis Figure 1: Users reached by crawling different link Obr. 4.2:types. Uk´azka nalezen´ ych vrchol˚ u pˇrused, i n´asledov´ an´ı reach v´ ystupn´ıch hran and were definitively i If only forward links are we can orientovan´ s´ıti. Pˇrevzato [30]. both sively say that the rem only the vinner cloud e(shaded cloud); z using not attached to the W forward and reverse links crawls the entire WCC 11 who points to them a Viz http://www.w3schools.com/xpath. (dashed cloud). 12 Depth-first search – prohled´ av´ an´ı do hloubky. of these have no forw 13 Breadth-first search – prohled´ av´an´ı do ˇs´ıˇrky. connected at all. Figure 1 shows an example of a directed graph crawl. The Finally, to explore h users reached by following only forward links are shown in connected, we crawled the shaded cloud, and those reached using both forward and users as seeds, and reverse links are shown in the dashed cloud. Using both forcrawl. We found only ward and reverse links allows 18 us to crawl the entire WCC, the connected compo while using only forward links results in a subset of the in the original crawl. WCC. were singleton nodes had one link, 620 (5.4 4.2 Crawling social networks (20.3%) had four or We now discuss our methodology for crawling each of the
Z´ısk´an´ı dat
Tvorba webov´eho robota
Rozdˇ elen´ı program˚ u a popis algoritm˚ u Pro proch´azen´ı OSN Lid´e.cz vznikli celkem tˇri roboti. SNABot – pro proch´azen´ı s´ıtˇe pˇra´telstv´ı. SNABot-Profily – pro proch´azen´ı profil˚ u a SNABot-Centra – pro proch´azen´ı center (viz popis probl´emu s centry v ˇc´asti 4.4). Algoritmus nejd˚ uleˇzitˇejˇs´ıch akc´ı robota SNABot: 1) Projdi v´ ychoz´ı str´anku/y a uloˇz do z´asobn´ıku ˇza´dan´e odkazy14 . 2) Vyjmi ze z´asobn´ıku odkaz a odeˇsli poˇzadavek na server. Pokud je z´asobn´ık pr´azdn´ y a nejsou napl´anov´any dalˇs´ı poˇzadavky, pˇrejdi na 7). 3) Ze z´ıskan´e odpovˇedi z´ıskej seznam pˇra´tel. 4) Uloˇz do datab´aze aktu´aln´ıho uˇzivatele a jeho pˇr´atele (tabulka uzivatele) a v´ ystupn´ı hrany uˇzivatele (tabulka hrany). Pokud bude pˇr´atel v´ıce neˇz 500, nastav z´aznamu v hrany.znovu pˇr´ıznak na 1. 5) Pˇridej do z´asobn´ıku odkazy na uˇzivatelovi pˇra´tele. 6) Pokud je z´asobn´ık pr´azdn´ y a neexistuj´ı dalˇs´ı poˇzadavky, pˇrejdi na 7), jinak opakuj 2). 7) Ukonˇci program. Dalˇs´ı roboti pracuj´ı obdobnˇe. Robot zpracov´avaj´ıc´ı profily, proch´az´ı iteraˇcnˇe datab´azi a v kaˇzd´e iteraci napl´anuje nˇekolik odkaz˚ u, kter´e budou d´ale proch´azeny. Robot pro extrakci kontakt˚ u center, ˇreˇs´ıc´ı probl´em s centry (viz ˇca´st 4.4 – probl´em s centry), proch´az´ı iteraˇcnˇe z´aznamy, kter´e byly oznaˇceny ve ˇctvrt´em kroku robotem SNABot. Proch´az´ı vˇsak mobiln´ı verzi t´eto OSN um´ıstˇenou na http://m.lide.cz15 , generuje a zpracov´av´a pˇredem zn´am´e odkazy (z´ıskan´e z uˇzivatelsk´ ych jmen). T´ım v´ yˇse uveden´ y probl´em ˇreˇs´ı. Architekturu robot˚ u, zaloˇzen´ ych na frameworku Scrapy, m˚ uˇzete vidˇet na obr. 4.3.
4.2.3
Implementaˇ cn´ı pozn´ amky
V t´eto ˇca´sti je struˇcnˇe uvedeno pouˇzit´ı nˇekter´ ych specifick´ ych konstrukc´ı frameworku Scrapy. Dalˇs´ı implementaˇcn´ı podrobnosti naleznete v ofici´aln´ı dokumentaci projektu, viz [3]. 14
Odkazy, na kter´e lze aplikovat pravidla d´ana regul´arn´ımi v´ yrazy, viz ˇc´ast 4.2.3 Na t´e existuje str´ ankov´ an´ı, kter´e umoˇzn ˇuje seznamem pˇr´atel listovat. Je ovˇsem omezeno pouze stranami 1 aˇz 100. Tzn. maxim´ alnˇe 1200 pˇr´ateli. Toto str´ankov´an´ı vˇsak lze oklamat“ pomoc´ı ” editace URL adresy. V t´e je moˇzn´e nastavit offset a pomoc´ı nˇej proj´ıt veˇsker´e pˇr´atele. 15
19
Z´ısk´an´ı dat
Tvorba webov´eho robota
Plánovač Internet Požadavky
Požadavky
Scrapy Engine
Databáze
Downloader
Odpovědi
Položky
Roboti
Obr. 4.3: Uk´azka architektury webov´ ych robot˚ u, zaloˇzen´ ych na frameworku Scrapy. Obr´azek byl pˇrevzat z [3]. Robotovi je moˇzn´e nastavit pravidla, kter´e pˇriˇrazuj´ı str´ank´am r˚ uzn´e akce a lze s jejich pomoc´ı obsah str´anek zpracov´avat. Toho lze doc´ılit k´odem: rules = ( Rule(SgmlLinkExtractor(allow = "profil.lide.cz/(.+)/moji-pratele/"), callback ="pratele_parse"), Rule(SgmlLinkExtractor(allow = "profil.lide.cz/(.+)/o-mne/"), callback = "profil_parse") )
Kde ˇretˇezec pˇriˇrazen´ y allow je regul´arn´ı v´ yraz. Pokud odkaz bude odpov´ıdat alespoˇ n jednomu regul´arn´ımu v´ yrazu, uplatn´ı se na nˇej metoda maj´ıc´ı stejn´ y n´azev, jako ˇretˇezec pˇriˇrazen´ y promˇenn´e Callback. Pokud robot nalezne odkazy, na kter´e ˇza´dn´a pravidla uplatnit nelze, budou ignorov´any. V´ ychoz´ı adresy se urˇcuj´ı jako start_urls = ["www.prvni.cz", ... ]. Na v´ ychoz´ı adresy nejsou uplatˇ nov´ana pravidla – tzn. v´ ychoz´ı adresy nebudou zpracov´any! Proto doporuˇcuji v´ ychoz´ı adresy napˇr. podstrˇcit“ v lok´aln´ım souboru jako start_urls ” = ["file:start.html"]. Adresy obsaˇzen´e v souboru jiˇz budou standardnˇe zpracov´any. V z´ıskan´em HTML dokumentu lze pomoc´ı XPath cest vyb´ırat data n´asledovnˇe: xpath = HtmlXPathSelector(response) xpath.select("//div[@id=’profileTitle’]/h2/text()").extract()[0]
20
Z´ısk´an´ı dat
Z´ıskan´a data
Kde response je z´ıskan´ y HTML dokument a ˇretˇezec v metodˇe select XPath cesta, pomoc´ı n´ıˇz lze v dokumentu vybrat poˇzadovan´a data. Metoda extract vrac´ı unic´odov´ y ˇretˇezec vybran´ y pomoc´ı XPath cesty. ˇ Casovou prodlevu mezi stahov´an´ım jednotliv´ ych str´anek lze mˇenit pomoc´ı promˇenn´e download_delay. V aktu´aln´ım nastaven´ı roboti zapisuj´ı veˇsker´e informace do soubor˚ u log-rrrr-mm-dd.txt. Stupeˇ n v´ ypis˚ u lze zm´ırnit napˇr. pouze na chybov´e hl´aˇsky zmˇenou hodnoty LOG_LEVEL na ERROR v souboru settings.py. Dalˇs´ı zmˇenu nastaven´ı je moˇzn´e prov´est v t´emˇze souboru.
4.3
Z´ıskan´ a data
Tisíce
Počet nalezených profilů
Sbˇer dat pro vytvoˇren´ı s´ıtˇe pˇr´atelstv´ı (tzn. str´anek moji-pratele) neprob´ıhal kontinu´alnˇe, robot byl nˇekolikr´at pozastaven (nejˇcastˇeji po 12 hodin´ach bˇehu). Sbˇer dat trval pˇribliˇznˇe mˇes´ıc, pˇriˇcemˇz robot nebyl od OSN odpojen. Pˇri pr˚ uchodu OSN Lid´e.cz bylo celkem nalezeno 589 374 uˇzivatel˚ u (vˇcetnˇe duplicit, viz ˇc´ast 4.4). Z obr. 4.4 m˚ uˇzete vidˇet, ˇze pro nalezen´ y poˇcet uˇzivatel˚ u t´emˇeˇr plat´ı Paretovo pravidlo [10] (pravidlo 80/20), v n´asleduj´ıc´ım kontextu: Po pr˚ uchodu a zpracov´an´ı prvn´ıch 20% ” uˇzivatel˚ u, nalezneme 80% uˇzivatel˚ u z celkov´eho poˇctu“. 700 600 500 400 300
200 100 0 0
100
200
300
400
500
600 Tisíce
Počet prošlých profilů
Obr. 4.4: Poˇcet nalezen´ ych uˇzivatel˚ u. Celkov´ y poˇcet u ´spˇeˇsnˇe proˇsl´ ych str´anek moji-pratele je 574 988. Po odeˇcten´ı duplicitn´ıch uˇzivatel˚ u (cca 10 tis´ıc), zjist´ıme, ˇze za mˇes´ıc bylo smaz´ano pˇribliˇznˇe 4,5 tis´ıce profil˚ u. Pˇri stahov´an´ı profil˚ u z webov´e cache spoleˇcnosti Google.com byl robot odpojen (viz 4.4 – Odpojen´ı od cache Google.com). Mimo to se uk´azalo, ˇze tato cache obsahuje pouze cca 58% poˇzadovan´ ych str´anek. Data ze str´anek o-mne proto byla z´ısk´ana pˇr´ımo z c´ılov´e OSN, po z´ısk´an´ı s´ıtˇe pˇr´atelstv´ı. Stahov´an´ı trvalo cca 40 dn´ı, pˇriˇcemˇz 21
Z´ısk´an´ı dat
Zn´am´e probl´emy
opˇet neprob´ıhalo nepˇretrˇzitˇe. Dalˇs´ı zaj´ımavost´ı je, ˇze pˇri posledn´ıch iterac´ıch stahov´an´ı – cca o tˇri mˇes´ıce pozdˇeji po zah´ajen´ı stahov´an´ı str´anek moji-pratele – byl pomˇer neexistuj´ıc´ıch str´anek (smazan´ ych profil˚ u) k poˇctu nalezen´ ych profil˚ u 1,6 : 23,5. Tzn., ˇze za tˇri mˇes´ıce bylo smaz´ano cca 7% uˇzivatelsk´ych u ´ˇct˚ u. To, dle m´eho n´azoru, m˚ uˇze b´ yt jednak d˚ usledkem vysok´e dynamiky OSN nebo to m˚ uˇze ukazovat na postupn´ y odliv“ uˇzivatel˚ u (viz ˇc´ast 3.2). ” Robot proch´azej´ıc´ı mobiln´ı verzi OSN, proˇsel za cca 2,5 hodiny vˇsechny oznaˇcen´e z´aznamy tvoˇren´e 58 centry s v´ıce neˇz 500 pˇr´ateli. Ze 7 tis´ıc z´ıskan´ ych str´anek tak 16 mohl z´ıskat aˇz 27 tis´ıc nov´ ych hran . Roboti proˇsli v´ıce neˇz 1,1 milionu webov´ych str´anek. Pr˚ umˇern´ y poˇcet staˇzen´ ych str´anek za minutu se pohyboval v intervalu 50-55 str´anek/min. Pˇri stahov´an´ı bylo odesl´ano na server cca 380 MB poˇzadavk˚ u a staˇzeno cca 4,75 GB dat. Z tˇechto dat vznikla datab´aze maj´ıc´ı pˇribliˇznˇe 9,6 milionu ˇra´dk˚ u o velikosti 370 MB. SQL Dump t´eto datab´aze naleznete na pˇriloˇzen´em DVD.
4.4
Zn´ am´ e probl´ emy
Pˇri z´ısk´av´an´ı dat se vyskytlo nˇekolik probl´em˚ u, kter´e budou d´ale pops´any. Probl´ em s centry Uk´azalo se, ˇze poˇcet zobrazovan´ ych pˇr´atel na str´ance moji-pratele je omezen horn´ı hranic´ı 500 pˇra´tel (ˇrazeno abecednˇe). Tento probl´em se podaˇrilo odstranit dodateˇcn´ ym robotem, kter´ y centra znovu projde (viz ˇc´ast 5.2.2 – robot pro extrakci kontakt˚ u center). Probl´ em s diakritikou v n´ azvech profil˚ u Pˇri stahov´an´ı dat bylo zjiˇstˇeno, ˇze existuje minoritn´ı mnoˇzstv´ı uˇzivatel˚ u, kteˇr´ı si v minulosti vytvoˇrili profil se jm´enem, obsahuj´ıc´ı diakritiku. To v souˇcasnosti nen´ı moˇzn´e. Tyto profily jsou pak spojeny s profily bez diakritiky (napˇr. uˇzivatel = uzivatel). Tvar zobrazovan´eho jm´ena v seznamech pˇr´atel nen´ı normalizov´an. Tato skuteˇcnost vytv´aˇr´ı v datab´azi duplicitn´ı z´aznamy, mezi kter´e jsou vstupn´ı hrany rozdˇeleny. Pˇred samotnou anal´ yzou OSN je nutn´e tyto duplicity odstranit. Tento probl´em ˇreˇs´ı aplikace SNABot-Nastroje, kter´a umoˇzn ˇuje profily sjednotit a pˇresmˇerovat chybn´e vstupn´ı hrany duplicit. Pro budouc´ı pr´aci doporuˇcuji robota upravit tak, aby zpracov´aval pouze u ´ˇcty bez diakritiky. Nebude tak tˇreba u ´ˇcty sjednocovat a dle namˇeˇren´ ych u ´daj˚ u, se projde cca o 10 tis´ıc str´anek m´enˇe. 16
Kaˇzd´e centrum mˇelo 500 hran, tzn. 29 tis´ıc jich jiˇz existovalo. Z kaˇzd´e str´anky, vyjma posledn´ıch, bylo z´ısk´ ano 8 hran.
22
Z´ısk´an´ı dat
Zn´am´e probl´emy
Odpojen´ı od cache Google.com Dalˇs´ım probl´emem se uk´azalo paraleln´ı stahov´an´ı dat z cache Google.com. Jiˇz pˇri testov´an´ı byl robot odpojen pˇribliˇznˇe po zasl´an´ı sta poˇzadavk˚ u. Nepomohlo ani zv´ yˇsen´ı ˇcasov´e prodlevy mezi stahov´an´ım jednotliv´ ych str´anek. V [22] autor, kter´ y z´ısk´aval data z Google Scholar17 , uv´ad´ı cituji: Experiment´alnˇe bylo zjiˇstˇeno, ˇze ide” a´ln´ı je pozastavit program na jednu hodinu po kaˇzd´ ych 150 uskuteˇcnˇen´ ych dotazech. Je ovˇsem moˇzn´e, ˇze po vˇetˇs´ım poˇctu pˇr´ıstup˚ u z jedn´e IP adresy, bude nutn´e limity zpˇr´ısnit.“ Kv˚ uli neefektivitˇe (150 z´ıskan´ ych str´anek za hodinu oproti 3600), jsem od paraleln´ıho stahov´an´ı dat z t´eto cache upustil a rozhodl se toto ˇreˇsen´ı vyuˇz´ıt pouze v pˇr´ıpadˇe, pokud bude robot SNABot z OSN Lid´e.cz odpojen. Nepˇ retrˇ zit´ a zmˇ ena dat Posledn´ım probl´emem, kter´ y byl pˇredem zn´am, ale nebyl oˇcek´av´an v takov´em rozsahu, je neust´al´a zmˇena OSN. Jejich velikost a neust´al´a zmˇena znemoˇzn ˇuje z´ısk´an´ı vˇsech poˇzadovan´ ych informac´ı ve stejn´em ˇcase. V naˇsem pˇr´ıpadˇe to napˇr. zp˚ usobuje existenci uˇzivatel˚ u, kter´e nˇekdo povaˇzuje za pˇra´tele, ale neˇz se robot dostal k jejich zpracov´an´ı, jejich u ´ˇcet byl smaz´an. Nebylo tak moˇzn´e z´ıskat jejich pˇr´atele a profily.
17
http://scholar.google.com
23
5 Statistick´e v´ystupy a jejich porovn´an´ı s dostupn´ ymi daty V t´eto kapitole naleznete nˇekolik statistik, kter´e jsou n´aslednˇe porovn´any s daty ˇ eho statistick´eho u ˇ U) ´ ˇci jin´ Cesk´ ´ˇradu (CS ymi zdroji. Tyto informace lze pouˇz´ıt napˇr. pro urˇcen´ı nejvˇetˇs´ı c´ılov´e skupiny. Pokud se potvrd´ı, ˇze vˇetˇsina dat souhlas´ı s jiˇz proveden´ ymi mˇeˇren´ımi, mohou b´ yt pˇr´ınosn´a i pro sociology (viz d´ale). N´asleduj´ıc´ı informace byly z´ısk´any z datab´aze profil˚ u, obsahuj´ıc´ı v´ıce neˇz 550 tis´ıc profil˚ u, kterou se podaˇrilo vytvoˇrit robotem SNABot-Profily (viz kapitola 4). Tvorba graf˚ u a v´ ysledk˚ u je z ˇc´asti zautomatizov´ana. Aplikace SNABot-Nastroje umoˇzn ˇuje vytvoˇrit CSV soubory (viz pˇr´ıloha A.3) s poˇzadovan´ ymi daty a z tˇech pak pomoc´ı R1 skript˚ u (nach´azej´ıc´ıch se na pˇriloˇzen´em DVD) vygenerovat d´ale uveden´e grafy. Pˇri aktualizaci dat je tak moˇzn´e n´asleduj´ıc´ı statistiky pomˇernˇe snadno aktualizovat.
5.1
Jak´ e informace zjiˇ st’ovat a z jak´ eho d˚ uvodu?
C´ılem t´eto ˇca´sti je vytvoˇrit uk´azkovou mnoˇzinu ot´azek, t´ ykaj´ıc´ı se dat z´ıskan´ ych z c´ılov´e OSN, kter´e budou d´ale zkoum´any. Na z´akladˇe v´ ysledk˚ u pak z´ıskat pˇredstavu, nakolik jsou data ud´avan´a uˇzivateli shodn´a s u ´daji uv´adˇen´ ymi jin´ ymi zdroji a zjistit tak jejich relevantnost. V pˇr´ıpadˇe jejich shody by st´alo za zv´aˇzen´ı, zda neprov´adˇet nˇekter´e kvantitativn´ı sociologick´e pr˚ uzkumy anal´ yzou dat z´ıskan´ ych ze soci´aln´ıch s´ıt´ı. Tato alternativa by oproti dotazn´ıkov´e formˇe poskytla vˇetˇs´ı poˇcet respondent˚ u a uˇsetˇrila by n´aklady spojen´e s distribuc´ı a n´asledn´ ym ruˇcn´ım vyhodnocov´an´ım dotazn´ık˚ u. Jako uk´azkovou mnoˇzinu jsem zvolil n´asleduj´ıc´ı ot´azky: Populace zkouman´ e OSN • Jak´e je vˇekov´e sloˇzen´ı uˇzivatel˚ u? • Jak jsou uˇzivatel´e rozm´ıstˇeni dle jednotliv´ ych kraj˚ u? • Plat´ı Milgramem pozorovan´ yu ´kaz z ˇca´sti 2.3 – stejn´e pohlav´ı se kontaktuje (v naˇsem pˇr´ıpadˇe pˇra´tel´ı) ˇcastˇeji? 1
Jedn´ a se o software umoˇznuj´ıc´ı, pomoc´ı jazyka R, statistick´e v´ ypoˇcty a tvorbu graf˚ u. Viz http://www.r-project.org.
24
Statistick´e v´ystupy
Obyvatelstvo
Ciz´ı jazyky a vzdˇ el´ an´ı • Jak´e je sloˇzen´ı uˇzivatel˚ u dle nejvyˇsˇs´ıho dosaˇzen´eho vzdˇel´an´ı? • Kolika ciz´ımi jazyky uˇzivatel´e hovoˇr´ı? • Bude nejv´ıce uv´adˇen´ ym ciz´ım jazykem angliˇctina2 n´asledov´ana nˇemˇcinou? • Souvis´ı poˇcet ciz´ıch jazyk˚ u, kter´ ymi uˇzivatel hovoˇr´ı, s dosaˇzen´ ym vzdˇel´an´ım? Mladistv´ı • Kolik procent mladistv´ ych kouˇr´ı a/nebo konzumuje alkohol? • Kouˇr´ı a konzumuj´ı alkohol v´ıce chlapci, nebo d´ıvky? Obl´ıben´ e sporty a hudba • Jak´e jsou nejpopul´arnˇejˇs´ı sporty a hudebn´ı ˇza´nry?
5.2
Obyvatelstvo
Z obr. 5.1 je vypl´ yv´a, ˇze nejv´ıce zastoupenou skupinou v t´eto OSN jsou lid´e ve vˇeku 15 - 29 let. Pr˚ umˇern´ y vˇek je 26 let. 55,8% uˇzivatel˚ u sv˚ uj vˇek neuv´ad´ı. V populaci ve vˇeku 15 - 19 jasnˇe pˇrevl´adaj´ı ˇzeny, dalˇs´ı vˇekov´e skupiny jsou pomˇernˇe vyrovnan´e. Celkov´e zastoupen´ı uˇzivatel˚ u tvoˇr´ı 45,5% muˇz˚ u a 54,5% ˇzen. ˇ U ´ Vˇekov´e sloˇzen´ı uˇzivatel˚ u ani sloˇzen´ı pohlav´ı neodpov´ıdaj´ı u ´daj˚ um uv´adˇen´ ymi CS (50,9% ˇzen a 49,1% muˇz˚ u, viz soubor csu-kr-obyvatele.xls na pˇriloˇzen´em DVD). Neshoduj´ı se ani s ofici´aln´ımi u ´daji uv´adˇen´ ych na OSN3 a to sice: 53% muˇz˚ u a 47% ˇzen. Ty vych´azej´ı z mˇeˇren´ı spoleˇcnosti Netmonitor.cz (jako vzorek bylo pouˇzito 2 889 respondent˚ u). Je vˇsak tˇreba vz´ıt v u ´vahu odliˇsnou metodologii tˇechto mˇeˇren´ı. Ofici´aln´ı statistiky vych´az´ı z u ´daj˚ u poskytnut´ ych n´avˇstˇevn´ıky t´eto OSN nikoliv ze sloˇzen´ı profil˚ u. Z obr. 5.2 vypl´ yv´a, ˇze sloˇzen´ı uˇzivatel˚ u t´eto OSN procentu´alnˇe odpov´ıd´a sloˇzen´ı ˇ obyvatelstva v CR dle kraj˚ u (s toleranc´ı 2 - 3% u jednotliv´ ych kraj˚ u). V´ yraznou anom´alii tvoˇr´ı pouze uˇzivatel´e z Plzeˇ nsk´eho kraje. V tomto kraji je zkouman´a OSN velmi popul´arn´ı, zejm´ena v Plzni. 72,3% uˇzivatel˚ u z Plzeˇ nsk´eho kraje uv´ad´ı ve sv´em ˇ ´ profilu mˇesto Plzeˇ n. Data z CSU uv´ad´ı, ˇze pouze 56,4% obyvatel z Plzeˇ nsk´eho kraje se nach´az´ı v okresech Plzeˇ n-mˇesto, Plzeˇ n-jih a Plzeˇ n-sever (ˇci pouze 32,3% Plzeˇ nmˇesto). 19,4% uˇzivatel˚ u kraj neuvedlo. 2 3
Slovenˇstina zde nen´ı zahrnuta, jelikoˇz na zkouman´e OSN ji nen´ı moˇzn´e vybrat. Viz http://onas.seznam.cz/cz/lide-cz.html.
25
Statistick´e v´ystupy
Obyvatelstvo
20
Pohlaví Muži Ženy
Počet (%)
15
10
5
60-64
55-59
50-54
45-49
40-44
35-39
30-34
25-29
20-24
15-19
10-14
5-9
0
Věková skupina (dle ČSU)
Obr. 5.1: Vˇekov´e sloˇzen´ı uˇzivatel˚ u OSN Lid´e.cz dle pˇetilet´ ych vˇekov´ ych skupin a pohlav´ı.
20
Zdroj Lidé.cz ČSU
Počet (%)
15
10
5
0 Jh
Jm Ka
Kr
Li
Mo
Ol
Pa
Pl
Pr
St
Ús
Vy
Zl
Kraj
ˇ dle kraj˚ Obr. 5.2: Porovnan´e sloˇzen´ı uˇzivatel˚ u OSN Lid´e.cz s obyvateli CR u. 26
Statistick´e v´ystupy
Ciz´ı jazyky a vzdˇel´an´ı
´ Ukaz, pozorovan´ y Milgramem, o ˇcastˇejˇs´ım vyuˇz´ıv´an´ı kontakt˚ u stejn´eho pohlav´ı se neprok´azal. Naopak pouze 12,5% ze vˇsech pˇr´atelstv´ı tvoˇr´ı pˇr´atelstv´ı mezi muˇzi a 30,1% mezi ˇzenami.
5.3
Ciz´ı jazyky a vzdˇ el´ an´ı
Informace o nejvyˇsˇs´ım dosaˇzen´em vzdˇel´an´ı byly zjiˇst’ov´any u uˇzivatel˚ u ve vˇeku 15 let a starˇs´ıch. Nejv´ıce je v t´eto OSN zastoupena skupina uˇzivatel˚ u s maturitou – 34,7%, stˇredn´ım vzdˇel´an´ım bez maturity – 33,5% a z´akladn´ım vzdˇel´an´ım – 23,7%. Vysokoˇskolsk´e vzdˇel´an´ı je zde zastoupeno cca 8%. Sv´e vzdˇel´an´ı uv´ad´ı 59,4% uˇzivatel˚ u. ˇ U ´ uv´ad´ı tyto u CS ´daje4 : z´akladn´ı vzdˇel´an´ı 18%, stˇredn´ı vzdˇel´an´ı bez maturity 33%, stˇredn´ı vzdˇel´an´ı s maturitou 34% a vysokoˇskolsk´e vzdˇel´an´ı 15%. Z toho vypl´ yv´a, ˇze tuto OSN vyuˇz´ıv´a vˇetˇs´ı procentu´aln´ı ˇca´st lid´ı se z´akladn´ım vzdˇel´an´ım, neˇzli je ˇ Naopak zde nejsou pˇr´ıliˇs zastoupeni lid´e vysokoˇskolsky vzdˇelan´ı. pr˚ umˇer v CR. Poˇcet ciz´ıch jazyk˚ u, kter´ ymi uˇzivatel´e u ´dajnˇe hovoˇr´ı, naleznete na obr. 5.3b. Procentu´aln´ı zastoupen´ı jednotliv´ ych ciz´ıch jazyk˚ u na obr. 5.3a. Tyto v´ ysledky jsou podobn´e tˇem, kter´e jsou uv´adˇeny v [33] (jedn´a se o pr˚ uzkum mezi obˇcany ve vˇeku 18–69 let, zkoum´ano bylo 9 500 dom´acnost´ı). V tomto v´ yzkumu uv´ad´ı 40% respondent˚ u znalost jednoho jazyka, 24% dvou a 7% tˇr´ı a v´ıce. 30% dotazovan´ ych nemluv´ı ˇz´adn´ ym ciz´ım jazykem. Jazyk angličtina němčina jiný ruština francouzština španělština italština
Počet cizích jazyků žádný jeden dva tři a více
41.3% 37.5%
19.7%
2.1% 3% 4.6%
28.4%
12.2%
9.6% 30.5%
11.1%
(a) Pomˇer v´ yskytu jednotliv´ ych ciz´ıch jazyk˚ u.
(b) Pomˇer poˇctu ciz´ıch jazyk˚ u, kolika u ´dajnˇe uˇzivatel´e hovoˇr´ı.
Obr. 5.3: Znalosti ciz´ıch jazyk˚ u. 4
Viz prezentace O. N´ yvlta na pˇriloˇzen´em DVD.
27
Statistick´e v´ystupy
Mladistv´ı
Nejˇcastˇeji uv´adˇen´ ymi ciz´ımi jazyky (dle [33]) jsou: angliˇctina – 45%, nˇemˇcina – 26% a ruˇstina – 23%. V´ yzkum [34] (z roku 2002, kde bylo dot´az´ano 900 respondent˚ u) uv´ad´ı, ˇze ruˇstina je zastoupena v nejvˇetˇs´ı m´ıˇre u starˇs´ıch generac´ı. Vzhledem k mal´emu zastoupen´ı, kter´e ve zkouman´e OSN tvoˇr´ı, to bude pravdˇepodobnˇe d˚ uvod, proˇc nen´ı uv´adˇena ˇcastˇeji.
100
Na obr. 5.4 naleznete grafick´e zn´azornˇen´ı z´avislosti poˇctu jazyk˚ u, kter´e uˇzivatel´e t´eto OSN uv´adˇej´ı, na jejich dosaˇzen´em vzdˇel´an´ı. [34] uv´ad´ı, ˇze nejˇcastˇejˇs´ı forma v´ yuky ciz´ıch jazyk˚ u (u lid´ı ve vˇeku 15 - 30 let, bylo moˇzn´e vybrat v´ıce moˇznost´ı) je: ˇ ˇ 42% a VS ˇ 21%. Za zaj´ımav´ v´ yuka na SS 60,5%, ZS y fakt tak povaˇzuji to, ˇze lid´e se z´akladn´ım vzdˇel´an´ım uv´adˇej´ı znalost v´ıce jazyk˚ u neˇzli vyuˇcen´ı lid´e a velmi podobnou znalost lidem se stˇredn´ım vzdˇel´an´ım s maturitou. U vysokoˇskolsky vzdˇelan´ ych lid´ı je v´ yrazn´ y n´ar˚ ust znalosti tˇr´ı a v´ıce jazyk˚ u. U tˇechto skupin tvoˇr´ı t´emˇeˇr 25% a v´ıce.
Cizích jazyků:
60 40 0
20
Počet (%) v kat.
80
0 1 2 3 a více
zák
vyu
stř
mat
bak
vys
mag
dok
jin
Vzdělání
Obr. 5.4: Z´avislost znalosti poˇctu ciz´ıch jazyk˚ u na dosaˇzen´em vzdˇel´an´ım.
5.4
Mladistv´ı
V s´ıti existuje 27 048 uˇzivatel˚ u mladˇs´ıch 18 let (tj. 11% z uˇzivatel˚ u uv´adˇej´ıc´ıch sv˚ uj vˇek). Z toho jich 43,3% uv´ad´ı, ˇze alespoˇ n pˇr´ıleˇzitostnˇe kouˇr´ı (cca 17,7%) nebo konzumuj´ı alkohol (cca 41,1%). Pouze 16,8% uˇzivatel˚ u mladˇs´ıch 18 let uv´ad´ı, ˇze 28
Statistick´e v´ystupy
Mladistv´ı
nekouˇr´ı ani nekonzumuj´ı alkohol. 25% jich o sobˇe tyto u ´daje neuv´ad´ı a 17,8% uv´ad´ı pouze jeden u ´daj. V n´asleduj´ıc´ım textu jsou vynech´any osoby, kter´e o sobˇe neuvedly obˇe informace (tj. 42,8% mladistv´ ych). Nejv´ıce (23,9%) je zastoupena skupina mladistv´ ych konzumuj´ıc´ıch alkohol, kter´a uvedla, ˇze nekouˇr´ı. Naopak kuˇr´ak˚ u nekonzumuj´ıc´ıch alkohol je velmi m´alo (1,4%). Kuˇra´k˚ u konzumuj´ıc´ıch alkohol je 16,5%. Zd´a se tak, ˇze vˇetˇsina mladistv´ ych m´a prvotn´ı zkuˇsenost s alkoholem a ˇca´st z nich pot´e zaˇcne b´ yt i kuˇra´ky. Podrobnˇejˇs´ı u ´daje naleznete v pˇr´ıloze C.
60 40
Počet (%)
20
Zl
Vy
St
Ús
Pl
Pr
Ol
Pa
Li
Mo
Kr
Ka
Jh
Kraj
Jm
0 Zl
Vy
St
Ús
Pl
Pr
Ol
Pa
Li
Mo
Kr
Ka
Jh
Jm
0
20
10
Počet (%)
30
80
40
100
Porovn´an´ı mladistv´ ych kuˇr´ak˚ u (obr. 5.5a) a konzument˚ u alkoholu (obr. 5.5b) dle kraj˚ u naleznete na obr. 5.5 (vynech´ani mladistv´ı bez vyplnˇen´ ych informac´ı). Z tˇechto graf˚ u vypl´ yv´a, ˇze nejv´ıce mladistv´ ych kuˇra´k˚ u je v Praze, nejm´enˇe pak v Plzeˇ nsk´em, Zl´ınsk´em a Moravskoslezsk´em kraji. Nejm´enˇe mladistv´ ych konzument˚ u alkoholu je opˇet v Moravskoslezsk´em kraji.
Kraj
(a) Porovn´ an´ı mladistv´ ych kuˇr´aku dle jednotliv´ ych kraj˚ u.
(b) Porovn´an´ı mladistv´ ych konzument˚ u alkoholu dle jednotliv´ ych kraj˚ u.
Obr. 5.5: Porovn´an´ı mladistv´ ych kuˇr´ak˚ u a konzument˚ u alkoholu dle kraj˚ u. V [31] (studie omezen´a na 16 let´e studenty) je uvedeno, ˇze mezi mladistv´ ymi se vyskytuje 25,7% kuˇr´ak˚ u (27,1% chlapc˚ u a 24,2% d´ıvek) a pˇribliˇznˇe 79% mladistv´ ych, kteˇr´ı v posledn´ıch 30 dnech pily alkohol. Pr˚ uzkum byl proveden v roce 2011 a t´ ykal se 3 913 student˚ u. V pˇr´ıpadˇe omezen´ı na mladistv´e ve vˇeku 16 let, jich ve zkouman´e OSN 74,4 % uv´ad´ı konzumaci alkoholu a 26,5%, ˇze jsou kuˇr´aci (vzorek tvoˇrily cca 4 tis´ıce uˇzivatel˚ u a nebyli br´ani v u ´vahu mladistv´ı bez vyplnˇen´e informace). D´ale se ze z´ıskan´ ych dat podaˇrilo zjistit (viz tab. 5.1, kter´a bere v u ´vahu mladistv´e ve vˇeku 16 let uv´adˇej´ıc´ı oba u ´daje), ˇze mezi kuˇra´ky je vˇetˇs´ı procentu´aln´ı zastoupen´ı d´ıvek (34,4% oproti 27,8% chlapc˚ u). Konzumace alkoholu je pomˇernˇe vyrovnan´a (78,8% d´ıvek oproti 76,9% chlapc˚ u). 29
Statistick´e v´ystupy
Obl´ıben´e sporty a hudba
Tab. 5.1: Kouˇren´ı a konzumace alkoholu dle pohlav´ı. Pohlav´ı Celkem Alkohol Kouˇren´ı Chlapci D´ıvky
5.5
1430 2536
1127 1951
398 872
Obl´ıben´ e sporty a hudba
Nejˇcastˇeji uv´adˇen´ y hudebn´ı ˇz´anr je rock. Ten uv´ad´ı 40,8% uˇzivatel˚ u. D´ale pop – 34,8% a hip-hop – 26,3%. Nejm´enˇe uv´adˇen´ ymi ˇza´nry jsou opera a opereta 1,4% a swing 1,7%. Pr´ace [19] (bylo dotazov´ano 440 respondent˚ u) na prvn´ıch dvou m´ıstech uv´ad´ı t´eˇz rock a pop (neuvaˇzujeme-li soundtrack). Mezi nejˇcastˇeji uv´adˇen´e sporty v OSN Lid´e.cz patˇr´ı kolektivn´ı hry s m´ıˇcem – 33,5%, cyklistika – 29,3% a zimn´ı sporty – 25,6%. Naopak nejm´enˇe uv´adˇen´ ymi sporty jsou parasporty (paraˇsutismus apod.) – 1,7% a jogging – 2%. Zaj´ımavou infografiku o obl´ıbenosti sport˚ u uv´ad´ı [37]. Zde se na prvn´ım m´ıstˇe um´ıstil fotbal, na druh´em cyklistika a na tˇret´ım hokej. Jako nejˇcastˇeji provozovan´ y sport se uv´ad´ı cyklistika.
5.6
Shrnut´ı kapitoly
V t´eto kapitole bylo uvedeno nˇekolik statistik, kter´e byly porovn´any s v´ ysledky z jin´ ych zdroj˚ u. Vˇetˇsina z nich odpov´ıdala v´ ysledk˚ um z jin´ ych zdroj˚ u s pomˇernˇe malou toleranc´ı. Lze tak doporuˇcit pouˇz´ıvat anal´ yzu obsahu OSN jako alternativn´ı formu k z´ısk´av´an´ı kvantitativn´ıch informac´ı. Jej´ı hlavn´ı v´ yhodou je snadn´e shrom´aˇzdˇen´ı velk´eho objemu dat, kter´e, jak bylo v t´eto kapitole naznaˇceno, jsou dostateˇcnˇe relevantn´ı. Tuto alternativu je vˇsak nutn´e pouˇz´ıvat s rozmyslem a uvˇedomit si, ˇze nˇekter´a data mohou b´ yt, zejm´ena proto, ˇze si uˇzivatel´e uvˇedomuj´ı jejich dostupnost, ˇca´steˇcnˇe zkreslen´a. ´ Udaje uveden´e v t´eto kapitole lze napˇr. vyuˇz´ıt k urˇcen´ı, jak velkou c´ılovou skupinu m˚ uˇze oslovit reklamn´ı sdˇelen´ı. Napˇr. reklama s v´ ybavou pro ryb´aˇre nebo s bˇeˇzeck´ ymi potˇrebami nenalezne pˇr´ıliˇs potencion´aln´ıch z´ajemc˚ u. Naopak reklama napˇr. s v´ ybavou cyklistickou, lyˇzaˇrkou ˇci se vstupenkami na koncert obl´ıben´eho rockov´eho zpˇev´aka by jich mohla oslovit aˇz nˇekolik des´ıtek, ne-li stovek, tis´ıc.
30
6 Anal´yza z´ıskan´e s´ıtˇe V t´eto kapitole naleznete informace o z´ıskan´e s´ıti, ovˇeˇren´ı, zda odpov´ıd´a bezˇsk´alov´e topologii (viz 2.2.1), a ˇzebˇr´ıˇcky uˇzivatel˚ u sestaven´e dle metod Centrality measures (CM), kter´e jsou n´aslednˇe porovn´any. Poˇc´atek kapitoly tvoˇr´ı struˇcn´e pˇredstaven´ı pouˇzit´ ych program˚ u a framework˚ u. Obr. 6.1 zobrazuje proces, jak´ ym byla data z´ısk´ana a zpracov´ana. Transformace (pomocí SNABot-nastroje)
SNABot
.gr
astroje
SNABot-n
Lidé.cz SNABot-profily
DB
SN
AB o
t-n
AB SN
SNABot-centra
as
tro j
e
ot-
Scrapy
SNAP
Pajek
oje
str
na
.net
R
Grafické a statistické výstupy
.csv
Gephi
Obr. 6.1: Proces pouˇzit´ y pro z´ısk´an´ı informac´ı z c´ılov´e OSN.
6.1
V´ ybˇ er vhodn´ eho frameworku
ˇ asteˇcn´ C´ y seznam n´astroj˚ u, umoˇzn ˇuj´ıc´ıch anal´ yzu s´ıt´ı, naleznete napˇr. v [7]. Nˇekter´ ym z nich se vˇsak z´ıskanou s´ıt’, kv˚ uli jej´ı velikosti, nepodaˇrilo ani naˇc´ıst. U dalˇs´ıch, vzhledem k neparaleln´ı implementaci a kvadratick´e ˇci vyˇsˇs´ı asymptotick´e sloˇzitosti, nebylo moˇzn´e hodnoty centralit (CB a CC ) v re´aln´em ˇcase vypoˇc´ıtat. Pomoc´ı programu Pajek XXL jsem zjistil, ˇze pˇresn´ y neparaleln´ı v´ ypoˇcet (jedn´e z centralit) by na stroji s procesorem AMD Phentom II X4 955 3,20 GHz trval pˇribliˇznˇe mˇes´ıc. Small-world Network Analysis and Partitioning (SNAP) Pro v´ ypoˇcet centralit jsem zvolil framework Small-world Network Analysis and Partitioning (SNAP) [9, 7]. Ten, jako jeden z m´ala (dalˇs´ı viz [7]) umoˇzn ˇuje paraleln´ı bˇeh. Je implementov´an v jazyce C, vyuˇz´ıv´a POSIX vl´akna a primitiva OpenMP. Je ˇs´ıˇren jako open-source. Framework se mi podaˇrilo zprovoznit pouze na syst´emech zaloˇzen´ ych na OS Linux (konkr´etnˇe na Ubuntu 12.10 64bit a Debian 3.2.0). 31
Anal´yza z´ıskan´e s´ıtˇe
Z´akladn´ı informace o s´ıti
V [7] je uvedeno, ˇze oproti existuj´ıc´ım ˇreˇsen´ım je SNAP ˇcasto 10-100 rychlejˇs´ı a m˚ uˇze 9 pracovat se s´ıtˇemi maj´ıc´ımi ˇr´adovˇe aˇz 10 vrchol˚ u. T´eˇz zde naleznete algoritmy, v tomto frameworku pouˇzit´e (napˇr. paraleln´ı verze algoritmu BFS aj.). SNAP mj. umoˇzn ˇuje identifikaci komunit, v´ ypoˇcet CB a centralit hran. V´ ypoˇcet CC bylo nutn´e doimplementovat. Takt´eˇz jsem doimplementoval v´ ypoˇcet polomˇeru s´ıtˇe a ASPL. V´ ypoˇcty vˇsech v´ yˇse uveden´ ych hodnot prob´ıhaj´ı v jednom pr˚ uchodu – na rozd´ıl od nˇekter´ ych jin´ ych program˚ u, kde je v jednom pr˚ uchodu moˇzn´e vypoˇc´ıtat pouze jednu metriku. SNAP t´eˇz umoˇzn ˇuje hodnoty centralit aproximovat, coˇz povaˇzuji za velmi pˇr´ınosn´e (viz d´ale). V [9] je uvedeno, ˇze pˇri 5% aproximaci se pr˚ umˇern´a chyba u nejcentr´alnˇejˇs´ıch vrchol˚ u (nejvyˇsˇs´ıho 1%) pohybuje pod hranic´ı 20%. Veˇsker´e v´ ypoˇcty jsou procesorovˇe n´aroˇcn´e a nen´ı-li SNAP omezen, vyuˇz´ıv´a 100% procesorov´eho ˇcasu. Pajek XXL a Gephi Dalˇs´ım programem, kter´ y jsem vyuˇzil pro ˇcasovˇe nen´aroˇcn´e v´ ypoˇcty (napˇr. DC , poˇcet komponent apod.), byl Pajek XXL [32]. Ten t´eˇz umoˇzn ˇuje pr´aci s rozs´ahl´ ymi s´ıtˇemi, nicm´enˇe neumoˇzn ˇuje paraleln´ı bˇeh. U programu Gephi (viz [11]) oceˇ nuji velmi kvalitn´ı vizualizaci s´ıtˇe, se kterou je moˇzn´e r˚ uznˇe manipulovat (napˇr. dle r˚ uzn´ ych metrik zvˇetˇsovat a obarvovat vrcholy). Kv˚ uli vizualizaci vˇsak nen´ı moˇzn´e pracovat s rozs´ahl´ ymi s´ıtˇemi (jako maximum se uv´ad´ı 50 tis´ıc vrchol˚ u – tuto hodnotu se mi vˇsak podaˇrilo pˇrekonat). Gephi t´eˇz neumoˇzn ˇuje paraleln´ı bˇeh. Program je nav´ıc velmi pamˇet’ovˇe n´aroˇcn´ y a pˇr´ıleˇzitostnˇe se chov´a nestabilnˇe. Lze ho vˇsak doporuˇcit pro anal´ yzu menˇs´ıch s´ıt´ı.
6.2
Z´ akladn´ı informace o s´ıti
S pouˇzit´ım program˚ u, popsan´ ych v pˇredeˇsl´e ˇc´asti, jsem z´ıskal pro neorientovanou 1 s´ıt’ n´asleduj´ıc´ı informace: Tab. 6.1: Informace o neorientovan´e s´ıti. Poˇc. vrchol˚ u
Poˇc. hran
∼ 578 tis´ıc
∼ 6 788 tis´ıc
Vrch. v nej. komp. Poˇc. komp. Pˇredpokl. % OSN 99,99 %
53
Polomˇer ASPL Hustota Pr˚ um. dG 15
4,87
4,06E-5
23,48
72-96%
Max. dG
γ
5254
3,5
Z tabulky 6.1 vypl´ yv´a, ˇze mimo hlavn´ı komponentu se v s´ıti nach´az´ı dalˇs´ıch 52 komponent (kaˇzdou tvoˇr´ı jeden vrchol). To je pravdˇepodobnˇe zp˚ usobeno existenc´ı dupli1
Vzhledem ke stahov´ an´ı pouze v´ ystupn´ıch hran, velmi rychlou zmˇenou OSN a moˇznost´ı vypnut´ı/zapnut´ı autorizace pˇr´ atel, nen´ı snadn´e rozhodnout, kter´ y model je vhodnˇejˇs´ı. Proto jsou d´ ale uvedeny oba modely.
32
Anal´yza z´ıskan´e s´ıtˇe
Z´akladn´ı informace o s´ıti
citn´ıch profil˚ u (viz ˇca´st 4.4) a rychlou zmˇenou dat v OSN. Vzhledem k jej´ı velikosti nem´a tato skuteˇcnost na v´ ysledn´a data vliv. Jelikoˇz je hodnota ASP L ≤ 6, 5, podaˇrilo se pro neorientovanou s´ıt’ potvrdit hypot´ezu ˇsesti krok˚ u (pr˚ umˇern´ y poˇcet prostˇredn´ık˚ u = ASP L − 1, nebot’ ASP L = 1 je pˇr´ım´ y kontakt, viz ˇca´st 2.3 a [29]). Zjiˇstˇen´a hodnota ASPL je velmi podobn´a (4,87 oproti 4,74) hodnotˇe, zveˇrejnˇen´e v pr´aci [6], popisuj´ıc´ı strukturu OSN Facebook.com. Kaˇzd´eho uˇzivatele ve zkouman´e s´ıti je tak moˇzn´e pr˚ umˇernˇe kontaktovat pomoc´ı 4 prostˇredn´ık˚ u. D´elka nejdelˇs´ıho ˇretˇezce je pak 14 prostˇredn´ık˚ u (v experimentu prov´adˇen´em Milgramem jich bylo 10, viz 2.3). T´eˇz se potvrdilo, ˇze hodnota ASPL m˚ uˇze b´ yt odhadnuta jako: ln(n)/ ln ln(n). V naˇsem pˇr´ıpadˇe tedy 5,13. ASPL v dalˇs´ıch OSN jsou takt´eˇz podobn´e a to sice v intervalu 4,25 - 5,88, viz [30]. Tab. 6.2 uv´ad´ı informace z´ıskan´e z orientovan´e s´ıtˇe2 . Tab. 6.2: Informace o orientovan´e s´ıti. + Polomˇer ASPL Hustota Pr˚ um. d− G , dG
17
5,07
2,03E-5
Max. d+ G
Max. d− G
5254
590
11,74
γ vstup. γ v´ ystup. Vz´ajemn´ ych hran 3,5
3,5
31,5%
Oproti OSN Orkut, ˇci jin´ ym, je pr˚ umˇern´ y poˇcet hran (pr˚ um. dG ) t´emˇeˇr 10x menˇs´ı (viz [30]). Za zaj´ımav´ y fakt povaˇzuji to, ˇze pouze jedno ze tˇr´ı pˇr´atelstv´ı je vz´ajemn´e. To je v porovn´an´ı s jin´ ymi OSN velmi m´alo. Napˇr. Flickr m´a u ´dajnˇe tuto hodnotu 62%, LiveJournal 73,5% a YouTube 79,1% [30]. To m˚ uˇze naznaˇcovat, ˇze se ve zkouman´e s´ıti vyskytuje pomˇernˇe velk´e mnoˇzstv´ı slab´ ych vazeb nebo to, ˇze se ve skuteˇcnosti nˇekteˇr´ı uˇzivatel´e navz´ajem neznaj´ı. Maxim´aln´ı v´ ystupn´ı stupeˇ n je t´emˇeˇr desetkr´at vˇetˇs´ı neˇz maxim´aln´ı vstupn´ı stupeˇ n. Z toho vyvozuji, ˇze se v s´ıti nenach´az´ı extr´emnˇe popul´arn´ı ˇci prestiˇzn´ı osoby ( pouze“ 50 kr´at ˇcastˇeji vyhled´avan´e neˇzli je pr˚ umˇer). Naopak zde existuje nˇekolik ” osob shromaˇzd’uj´ıc´ıch velk´ y poˇcet kontakt˚ u (jejich poˇcet kontakt˚ u pˇresahuje aˇz 500 kr´at pr˚ umˇer). Vysok´ y exponent konektivity3 pravdˇepodobnˇe umoˇzn ˇuje existenci kritick´eho prahu [10]. Pokud bychom n´ahodnˇe odeb´ırali vrcholy, s´ıt’ by se nejsp´ıˇse rozpadla na v´ıce komponent. Ztr´ac´ı se tak jedna z v´ yhod bezˇsk´alov´ ych s´ıt´ı. 2
ASPL a polomˇer byly z´ısk´ any 20% aproximac´ı, viz d´ale. Vypoˇcten pomoc´ı n´ astroje dostupn´eho na http://tuvalu.santafe.edu/∼aaronc/powerlaws metodou maxim´ aln´ı vˇerohodnosti s hodnotou Kolmogorov–Smirnova testu rovn´e 0,0297. Tato mal´ a hodnota naznaˇcuje pomˇernˇe pˇresnou aproximaci [30]. 3
33
Anal´yza z´ıskan´e s´ıtˇe
Z´akladn´ı informace o s´ıti
Četnost % (log) 1e-03 1e-01 1e+01 1
2
1e-05
1e-05
Četnost % (log) 1e-03 1e-01 1e+01
Na obr. 6.2 naleznete ˇcetnosti vstupn´ıho (obr. 6.2a) a v´ ystupn´ıho stupnˇe (obr. 6.2b).
5 20 50 200 Vstupní stupeň (log)
1
(a) vstupn´ı – d− G
5 50 500 Výstupní stupeň (log)
5000
(b) v´ ystupn´ı – d+ G
ˇ Obr. 6.2: Cetnosti vstupn´ıho a v´ ystupn´ıho stupnˇe.
0.0
0.0
0.2
0.5
Četnost (%) 0.4 0.6
Četnost (%) 1.0 1.5
0.8
2.0
Na obr. 6.3 naleznete v´ yskyt ˇcetnost´ı hodnot CC (obr. 6.3b) a ASPL (obr. 6.3a). I kdyˇz se rozdˇelen´ı stupnˇe vrchol˚ u neˇr´ıd´ı norm´aln´ım rozdˇelen´ım pravdˇepodobnosti tyto dvˇe t´emˇeˇr ano.
0.05
0.15
0.25 CC
0.35
2
(a) CC
4
6 8 ASPL
10
12
(b) ASPL
ˇ Obr. 6.3: Cetnosti hodnot CC a ASPL. Z obr. 6.44 vypl´ yv´a, ˇze i pˇres pomˇernˇe dobrou aproximaci koeficientu konektivity (γ), je v t´eto s´ıti tlumen´ı poˇctu hran (zejm´ena u vrchol˚ u s menˇs´ım stupnˇem) menˇs´ı neˇz 4
CCDF – doplˇ nkov´ a kumulativn´ı distribuˇcn´ı funkce, vypoˇctena jako 1 − F (x), kde F (x) je distribuˇcn´ı funkce.
34
Anal´yza z´ıskan´e s´ıtˇe
V´ysledky Centrality measures a jejich porovn´an´ı
je pro bezˇsk´alov´e s´ıtˇe obvykl´e. Jako EXP 0,075 je oznaˇceno CCDF exponenci´aln´ıho rozdˇelen´ı s parametrem λ = 0.075. Jako SF 2 a SF 3,5 jsou oznaˇceny CCDF standardn´ıch bezˇsk´alov´ ych s´ıt´ı s pˇr´ısluˇsn´ ym koeficientem konektivity. Tvar CCDF OSN + Lid´e.cz (zejm´ena dG ) pˇripom´ın´a CCDF vytvoˇrenou ze s´ıtˇe spolupr´ace herc˚ u z´ıskanou z IMDb5 [5]. U t´e t´eˇz nastupuje mocninn´ y z´akon aˇz po urˇcit´em stupni vrchol˚ u. Domn´ıv´am se tak, ˇze v t´eto s´ıti je vˇetˇsina uˇzivatel˚ u schopna z poˇca´tku sesb´ırat“ ” 6 nˇekolik kontakt˚ u pomˇernˇe snadno . Tato jejich schopnost se s pˇrib´ yvaj´ıc´ım stupnˇem sniˇzuje a nastupuje mocninn´ y z´akon, kter´ y umoˇzn´ı dos´ahnout velk´eho stupnˇe pouze nˇekolika vrchol˚ um.
Obr. 6.4: Porovn´an´ı nˇekolika r˚ uzn´ ych CCDF.
6.3
V´ ysledky Centrality measures a jejich porovn´ an´ı
Kv˚ uli v´ ypoˇcetn´ı sloˇzitosti (viz ˇca´st 2.4) a ˇcasov´e n´aroˇcnosti byly v´ ypoˇcty centralit prov´adˇeny na serveru students.kiv.zcu.cz. Na tom se nach´az´ı: 8x Intel(R) Xeon(TM) 3.0 GHz (dvou j´adrov´e, tedy celkem 16x CPU) a 32GB RAM. Z ˇcasov´ ych d˚ uvod˚ u (viz d´ale) jsem pro neorientovanou s´ıt’ provedl 5% aproximaci a pˇresn´ y v´ ypoˇcet. Pro orientovanou s´ıt’ pak 5% a 20% aproximaci. V´ ypoˇcet 5% aproximace trval cca 5,5 hodiny, 20% aproximace pˇribliˇznˇe jeden den a pˇresn´ y v´ ypoˇcet cca 4,5 dne. 5 6
http://www.imdb.com Coˇz vzhledem k tomu, ˇze ˇclovˇek m´a u ´dajnˇe 200-5000 soci´aln´ıch vazeb [10, 29] nen´ı pˇrekvapiv´e.
35
Anal´yza z´ıskan´e s´ıtˇe
V´ysledky Centrality measures a jejich porovn´an´ı
V´ ysledky hodnot orientovan´e i neorientovan´e s´ıtˇe, jsou si v naˇsem pˇr´ıpadˇe velmi podobn´e (viz tab. v pˇr´ıloze E a tab. 6.3). Aproximace t´eˇz dosahuj´ı velmi podobn´ ych v´ ysledk˚ u. Vzhledem k mal´emu r˚ ustu ASPL v neorientovan´e s´ıti (cca 2% pˇri 15% rozˇs´ıˇren´ı vrchol˚ u, viz tab. D.1) lze pˇredpokl´adat, ˇze je hypot´eza ˇsesti krok˚ u splnˇena i pro orientovanou s´ıt’ a to i pˇres to, ˇze je pouze 31,5% pˇra´telstv´ıch vz´ajemn´ ych. Pˇredpokl´ad´am tedy, ˇze je s´ıt’ dobˇre propojena, zejm´ena mezi v´ yznamn´ ymi vrcholy, kter´e tvoˇr´ı tzv. j´adro s´ıtˇe (viz pˇr´ıloha F). V tab. 6.3 naleznete ˇzebˇr´ıˇcky uˇzivatel˚ u, kteˇr´ı se dle z´akladn´ıch metrik CM (tj. CC , ˇ r´ıˇcky byly sestaveny pro pˇresn´e CB a CD ) um´ıstili na prvn´ıch dvaceti m´ıstech. Zebˇ hodnoty CM pro neorientovanou s´ıt’. Uˇzivatel´e, vyskytuj´ıc´ı se v prvn´ı des´ıtce, maj´ı napˇr´ıˇc ˇzebˇr´ıˇcky pˇriˇrazenou jednotnou barvu pro snadnˇejˇs´ı identifikaci. Vˇsimnˇete si, ˇze i pˇres r˚ uzn´e zp˚ usoby v´ ypoˇct˚ u tˇechto metod se v prvn´ı des´ıtce t´emˇeˇr vˇsechna jm´ena opakuj´ı a jsou na podobn´ ych pozic´ıch. Tab. 6.3: Uˇzivatel´e OSN seˇrazeni dle dosaˇzen´eho m´ısta pro jednotliv´e metriky CM – pˇresn´ y v´ ypoˇcet neorientovan´e s´ıtˇe. #
CB
CC
CD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
honzek098 sochurek.j r.hasek melly.19 ashraf.shafeek martinoof
[email protected] vvladimirvanek flamez10 durdil.d nezkrotny.dablicek.lucie.xd topol.d zasova1991 rocker.k ajik-1 vivi.elien.186 kapradorosty martin.karatista kubasvitak citronek.zx
honzek098 sochurek.j r.hasek nezkrotny.dablicek.lucie.xd melly.19 flamez10
[email protected] martinoof vivi.elien.186 kapradorosty durdil.d marcela-marsi nikollka22 topol.d ashraf.shafeek ajik-1 s.e.x.o.n.t.h.e.b.e.a.c.h rocker.k zasova1991 beruska.no1
honzek98 sochurek.j r.hasek martinoof melly.19 flamez10 vvladimirvanek ashraf.shafeek
[email protected] durdil.d vivi.elien.186 topol.d zasova1991 kapradorosty ajik-1 martin.karatista rocker.k citronek.zx avoldies petrlupik
Na obr. E.1 naleznete tyt´eˇz ˇzebˇr´ıˇcky pro 5% aproximaci s´ıtˇe (aproximace vych´az´ı z toho, ˇze n´as zaj´ımaj´ı pouze vrcholy s nejvyˇsˇs´ı hodnotou – tj. centra). Jiˇz po 5% aproximaci, kter´a je 20 kr´at rychlejˇs´ı neˇz pˇresn´ y v´ ypoˇcet, metody CB i CC (DC nen´ı v´ ypoˇcetnˇe n´aroˇcn´a, nem´a ji tedy smysl aproximovat) pomˇernˇe pˇresnˇe centra odhal´ı. 36
Anal´yza z´ıskan´e s´ıtˇe
V´ysledky Centrality measures a jejich porovn´an´ı
Obr. D.2 zobrazuje grafick´e porovn´an´ı aproximovan´ ych hodnot s hodnotami pˇresn´ ymi. Z obr. D.2b a D.1b, zobrazuj´ıc´ı pouze nejvyˇsˇs´ı hodnoty, vypl´ yv´a, ˇze vˇetˇsina center je um´ıstˇena na spr´avn´em m´ıstˇe (body tvoˇr´ı t´emˇeˇr pˇr´ımku). Aproximace ve frameworku SNAP byla optimalizov´ana pro metodu CB (viz. [9]), proto je jej´ı aproximace pˇresnˇejˇs´ı. Aproximace CC ve frameworku SNAP p˚ uvodnˇe implementov´ana nebyla, pˇresto vysok´e hodnoty aproximuje pomˇernˇe dobˇre. V tab. E.2 a E.3 naleznete tyt´eˇz ˇzebˇr´ıˇcky pro s´ıt’ orientovanou. Aby bylo moˇzn´e v´ ypoˇcty vˇsech metrik prov´est v jednom bˇehu, byla nam´ısto metriky CC pouˇzita metrika CC− (bl´ızkost dle vstupn´ıch hran) – tzn., jak snadno se k vrcholu dostanou vrcholy ostatn´ı [32]. Z toho d˚ uvodu ve v´ yˇse uveden´ ych tabulk´ach naleznete metriku − CD a ˇzebˇr´ıˇcek se od dˇr´ıve uveden´ ych ponˇekud liˇs´ı. CB je opˇet aproximov´ana dobˇre. − CC jiˇz pˇr´ıliˇs ne z d˚ uvodu, kter´ y byl uveden dˇr´ıve. Obr. 6.5 zobrazuje z´avislosti mezi hodnotami CM ve zkouman´e s´ıti. Z obr. 6.5a a 6.5b vypl´ yv´a, ˇze v t´eto s´ıti jsou hodnoty CB a CC u ´mˇern´e hodnotˇe CD . Tzn. ˇc´ım vˇetˇs´ı je stupeˇ n vrcholu, t´ım m´a vˇetˇs´ı hodnoty CB a CC (patrn´e zejm´ena u vysok´ ych hodnot).
(a) CB x CD
(b) CC x CD
Obr. 6.5: Vz´ajemn´e z´avislosti centralit ve zkouman´e s´ıti pro pˇresn´ y v´ ypoˇcet neorientovan´e s´ıtˇe. Obecnˇe tomu tak b´ yt nemus´ı. Pokud by napˇr. s´ıt’ byla tvoˇrena v´ıce rozs´ahl´ ymi komunitami, kter´e by spojovalo pouze nˇekolik vrchol˚ u, hodnota CB tˇechto vrchol˚ u by byla vysok´a, nehledˇe na jejich stupeˇ n. Jelikoˇz se zde takov´e vrcholy nevyskytuj´ı, lze vylouˇcit, ˇze je s´ıt’ rozdˇelena do velk´ ych komunit (napˇr. dle kraj˚ u, generac´ı apod.), kter´e jsou spojeny pouze nˇekolika vrcholy. S´ıt’ je naopak dobˇre propojen´a a pˇri komunikaci, vyuˇz´ıvaj´ıc´ı nejkratˇs´ıch cest, j´ı vˇetˇsina informac´ı putuje pˇres j´adro s´ıtˇe (viz pˇr´ıloha F – pods´ıt’ vytvoˇren´a z uˇzivatel˚ u maj´ıc´ı v´ıce neˇz 500 hran). 37
Anal´yza z´ıskan´e s´ıtˇe
V´ysledky Centrality measures a jejich porovn´an´ı
Obr. 6.6a ukazuje, ˇze v s´ıti existuje nˇekolik vrchol˚ u maj´ıc´ıch malou hodnotu CC , ale relativnˇe velkou hodnotu CB . Z toho usuzuji, ˇze v s´ıti existuj´ı vrcholy (ˇci mal´e komunity), kter´e jsou na okraji“ s´ıtˇe a k jej´ımu zbytku jsou pˇripojeny napˇr. pouze ” prostˇrednictv´ım jednoho ˇci dvou vrchol˚ u, kter´e jsou od ostatn´ıch vrchol˚ u vzd´alen´e“. ” Lze oˇcek´avat, ˇze k tˇemto vrchol˚ um se dostanou informace ze s´ıtˇe mezi posledn´ımi pˇr´ıpadnˇe v˚ ubec. Obr. 6.6b zn´azorˇ nuje nez´avislost vstupn´ıho a v´ ystupn´ıho stupnˇe. V t´eto s´ıti tak existuj´ı vrcholy, kter´e jsou popul´arn´ı (vyhled´avan´e s vysok´ ym vstupn´ım stupnˇem), ale nejsou pˇr´ıliˇs vlivn´e (nemaj´ı vysok´ y v´ ystupn´ı stupeˇ n) a naopak.
+ − x CD (b) CD
(a) CB x CC
Obr. 6.6: Vz´ajemn´e z´avislosti centralit ve zkouman´e s´ıti pro pˇresn´ y v´ ypoˇcet neorientovan´e s´ıtˇe. Vzhledem k tomu, ˇze je tato s´ıt’ dobˇre propojen´a, lze pro urˇcov´an´ı v´ yznamnosti vrchol˚ u doporuˇcit metriku CD , kter´a nen´ı pˇr´ıliˇs v´ ypoˇcetnˇe n´aroˇcn´a. Pˇr´ıpadnˇe pouˇz´ıvat 5% aproximaci metrik CB a CC , kter´e jsou pro odhalen´ı nejv´ yznamnˇejˇs´ıch vrchol˚ u (zejm´ena u neorientovan´e s´ıtˇe) dostateˇcnˇe pˇresn´e.
38
7 Z´avˇer Pr´ace si kladla za u ´kol sezn´amit ˇcten´aˇre s nˇekter´ ymi metodami, kter´e anal´ yza soci´aln´ıch s´ıt´ı nab´ız´ı. Za t´ımto u ´ˇcelem byla analyzov´ana rozs´ahl´a soci´aln´ı s´ıt’ pˇra´tel, kterou se podaˇrilo z´ıskat z online soci´aln´ı s´ıtˇe (Online social network – OSN) Lid´e.cz. Uk´azalo se, ˇze provozovatel t´eto OSN se automatick´emu proch´azen´ı nebr´an´ı a podaˇrilo se tak proj´ıt v´ıce neˇz milion webov´ ych str´anek. Z tˇechto str´anek byla vytvoˇrena datab´aze, obsahuj´ıc´ı pˇra´telstv´ı mezi uˇzivateli a informace o uˇzivatel´ıch. Odhaduji, ˇze tato datab´aze v dobˇe, kdy byla aktu´aln´ı, obsahovala 72-96% uˇzivatel˚ u, kteˇr´ı se v t´eto OSN nach´azeli. V teoretick´e ˇc´asti byl pˇredstaven model bezˇsk´alov´e s´ıtˇe, kter´ ym se dle Barab´asiho (viz [10]) ˇr´ıd´ı vˇetˇsina re´aln´ ych komplexn´ıch s´ıt´ı. Z´ıskanou s´ıt’ (ta byla tvoˇrena t´emˇeˇr 600 tis´ıci vrcholy a 7 miliony hran) jsem se oproti tomuto modelu pokusil verifikovat. Uk´azalo se, ˇze se dle tohoto modelu ˇr´ıd´ı“ pouze ˇca´steˇcnˇe. D´ale bylo zjiˇstˇeno, ˇze se ” jej´ı topologie podob´a soci´aln´ı s´ıti spolupr´ace mezi herci. Byly pˇredstaveny z´akladn´ı metody, kter´e jsou schopn´e odhalit uˇzivatele, maj´ıc´ı ve zkouman´e s´ıti kl´ıˇcovou roli. Podle tˇechto metod byly sestaveny ˇzebˇr´ıˇcky kl´ıˇcov´ ych uˇzivatel˚ u v s´ıti, kter´e jsou mezi sebou porovn´any. Toto porovn´an´ı odhalilo, ˇze v s´ıti nejsou lid´e rozdˇeleni do velk´ ych komunit (napˇr. dle generac´ı, pohlav´ı, bydliˇstˇe apod.), kter´e by spojovalo pouze nˇekolik uˇzivatel˚ u. Naopak je s´ıt’ velmi dobˇre propojen´a a nejv´ıce vyuˇz´ıvan´ ymi cestami jsou ty mezi centry. Jelikoˇz jsou si z´ıskan´e ˇzebˇr´ıˇcky velmi podobn´e, lze pro identifikaci center v t´eto s´ıti doporuˇcit nejrychlejˇs´ı, i kdyˇz obecnˇe nejm´enˇe pˇresnou, metodu – Freemanovu degree centrality. Jej´ı v´ yhodou je okamˇzit´ y v´ ypoˇcet. Pˇresn´ y v´ ypoˇcet dalˇs´ıch metrik, vzhledem k jejich v´ ypoˇcetn´ı n´aroˇcnosti a velikosti s´ıtˇe, zabral 4,5 dne. Obecnˇe tak lze doporuˇcit 5% aproximaci dalˇs´ıch metrik (Closeness a Betweenness centrality). Jak bylo uk´az´ano, v´ ysledky tˇechto aproximac´ı jsou dostateˇcnˇe pˇresn´e. D´ıky dobˇre propojen´emu j´adru m´a s´ıt’ velmi malou pr˚ umˇernou d´elku nejkratˇs´ı cesty a to sice 4,87. Pro orientovan´ y model je tato hodnota o nˇekolik procent vyˇsˇs´ı. St´ale je vˇsak menˇs´ı, neˇz hodnota uv´adˇen´a Milgramem (tj. 6,5). Pro tuto soci´aln´ı s´ıt’ pˇr´atel se tak podaˇrilo ovˇeˇrit hypot´ezu ˇsesti krok˚ u. Z´ıskan´a hodnota je nav´ıc velmi podobn´a hodnot´am, kter´e jsou uv´adˇen´e v podobn´ ych v´ yzkumech, zkoumaj´ıc´ıch jin´e OSN. Pr´ace se t´eˇz zab´ yvala anal´ yzu dat v OSN uloˇzen´ ych. Z tˇech byly vytvoˇreny statistick´e v´ ystupy, kter´e byly porovn´any s podobn´ ymi pr˚ uzkumy, aby bylo moˇzn´e posoudit jejich relevantnost. Z tˇechto informac´ı je moˇzn´e napˇr. zjistit, jak velkou potencion´aln´ı skupinu m˚ uˇze reklamn´ı sdˇelen´ı oslovit a mohou tak b´ yt pouˇzity reklamn´ımi ˇci marketingov´ ymi agenturami. T´eˇz poskytuj´ı jasnˇejˇs´ı informace o sociodemografii t´eto OSN (ofici´aln´ı u ´daje, uv´adˇen´e na OSN Lid´e.cz, jsou tvoˇreny ze vzorku tvoˇr´ıc´ıho cca 0,5% mnou analyzovan´ ych dat). V OSN Lid´e.cz jsou konkr´etnˇe nejv´ıce zastoupenou 39
Z´avˇer
Budouc´ı pr´ace
skupinou lid´e ve vˇeku 15-29 let, se z´ajmy o sport (zejm´ena cyklistiku a kolektivn´ı m´ıˇcov´e hry) a o hudbu (zejm´ena rock a pop). Nejpopul´arnˇejˇs´ı je tato OSN u uˇzivatel˚ u v Plzeˇ nsk´em kraji. Dalˇs´ımi zkouman´ ymi vlastnostmi byla vzdˇelanost, znalost ciz´ıch jazyk˚ u a problematika konzumace alkoholu a kouˇren´ı u mladistv´ ych. Z´ıskan´e u ´daje se, s pomˇernˇe malou toleranc´ı, shoduj´ı s u ´daji uv´adˇen´ ymi v jin´ ych zdroj´ıch. Mohou tak b´ yt povaˇzov´any za relevantn´ı a anal´ yzu obsahu OSN lze doporuˇcit jako alternativn´ı formu k formˇe dotazn´ıkov´e“ a uˇsetˇrit tak n´aklady, kter´e jsou s n´ı spojen´e. ”
7.1
Budouc´ı pr´ ace
Jako moˇzn´e rozˇs´ıˇren´ı se nab´ız´ı anal´ yza komunit, kter´a zkoum´a a identifikuje komunity, ve kter´ ych se vˇetˇsina uˇzivatel˚ u navz´ajem zn´a. T´eˇz by bylo moˇzn´e analyzovat dynamiku s´ıtˇe. S drobn´ ymi u ´pravami datab´aze a webov´ ych robot˚ u by bylo moˇzn´e uchov´avat r˚ uzn´e verze s´ıtˇe a zkoumat, jak se ˇcasem mˇenila. V´ ysledky t´eto anal´ yzy by mohli napˇr. odhalit vzory, jak se virtu´aln´ı pˇra´telstv´ı navazuj´ı, mˇen´ı ˇci ruˇs´ı. D´ale by bylo moˇzn´e z´ıskat v´ıce informac´ı vych´azej´ıc´ıch z dat v OSN obsaˇzen´ ych. Napˇr. je moˇzn´e zkoumat r˚ uzn´e z´avislosti mezi bydliˇstˇem a z´alibami uˇzivatel˚ u. Tyto ot´azky, zamˇeˇren´e na lokalitu, by mohli b´ yt pˇr´ınosn´e napˇr. pro lok´aln´ı obchodn´ıky, kina ˇci organiz´atory sportovn´ıch akc´ı. Zaj´ımavou moˇznost´ı by t´eˇz bylo porovn´an´ı v´ ysledk˚ u z´ıskan´ ych pomoc´ı z´akladn´ıch (tj. Freemanov´ ych) metod Centrality measures s metodami dalˇs´ımi (napˇr. s metodami PageRank, Bonachii degree ˇci HITS). V t´eto pr´aci jsem pro zjednoduˇsen´ı, urychlen´ı v´ ypoˇctu a urychlen´ı z´ısk´an´ı dat, povaˇzoval vˇsechny hrany za stejnˇe v´ yznamn´e. Ve skuteˇcnosti tomu tak b´ yt nemus´ı. Hran´am lze pˇriˇradit r˚ uzn´e v´ahy. Ty mohou b´ yt z´ısk´any napˇr. pomoc´ı kombinace geografick´e vzd´alenosti uˇzivatel˚ u, jejich spoleˇcn´ ymi z´ajmy, poˇctu a obsahu zpr´av, kter´e si p´ıˇs´ı na n´astˇenku“, jak´ y koment´aˇr uv´adˇej´ı u popisu pˇr´atelstv´ı a je-li pˇr´atelstv´ı ” vz´ajemn´e. Pot´e m˚ uˇze b´ yt zaj´ımav´e pozorovat, zda a jak se prvn´ı m´ısta v ˇzebˇr´ıˇcc´ıch zmˇen´ı. Posledn´ım n´avrhem na budouc´ı pr´aci je moˇzn´ y pr˚ uzkum, z jak´eho d˚ uvodu jsou centra, ˇci konkr´etn´ı uˇzivatel´e, centry. Maj´ı nˇejak´e spoleˇcn´e z´ajmy ˇci vlastnosti? Znaj´ı stejn´e uˇzivatele? Jak by asi vypadal a jak´e by mˇel m´ıt vlastnosti ide´aln´ı“ uˇzivatel, ” proto aby se mohl st´at popul´arn´ım centrem a z t´eto pozice profitovat?
40
Literatura [1] Z´akon ˇc. 121/2000 Sb., o pr´avu autorsk´em, o pr´avech souvisej´ıc´ıch s pr´avem autorsk´ ym a o zmˇenˇe nˇekter´ ych z´akon˚ u (autorsk´ y z´akon). [2] The Web Robots Pages [online]. http://www.robotstxt.org.
[cit.
28.4.2013].
Dostupn´e
z:
[3] Scrapy [online]. [cit. 28.4.2013]. Dostupn´e z: http://scrapy.org. ˇ ´ CEK, ˇ [4] CADA, R. – RYJA Z. – KAISER, T. Diskr´etn´ı matematika. Z´apadoˇcesk´a univerzita, 2004. ´ [5] ALBERT, R. – BARABASI, A.-L. Statistical mechanics of complex networks. Reviews of modern physics. 2002, 74, 1, s. 47. [6] BACKSTROM, L. et al. Xiv:1111.4570. 2011.
Four degrees of separation.
arXiv preprint ar-
[7] BADER, D. A. Parallel Programming for Graph Analysis [online]. [cit. 28.4.2013]. Dostupn´e z: http://www.cc.gatech.edu/∼bader/papers/ PPoPP12. [8] BADER, D. A. – MADDURI, K. Parallel algorithms for evaluating centrality indices in real-world networks. In Parallel Processing, 2006. ICPP 2006. International Conference on, s. 539–550. IEEE, 2006. [9] BADER, D. A. – MADDURI, K. SNAP, Small-world Network Analysis and Partitioning: an open-source parallel graph framework for the exploration of large-scale networks. In Parallel and Distributed Processing, 2008. IPDPS 2008. IEEE International Symposium on, s. 1–12. IEEE, 2008. ´ [10] BARABASI, A.-L. V pavuˇcinˇe s´ıt´ı. Paseka, 2005. ISBN 80-7185-751-3. [11] BASTIAN, M. – HEYMANN, S. – JACOMY, M. Gephi: An Open Source Software for Exploring and Manipulating Networks. International AAAI Conference on Weblogs and Social Media. 2009. Dostupn´e z: http://gephi.org. [12] BATAGELJ, V. Friendship and unionization in a hi-tech firm. [online]. [cit. 28.4.2013]. Dostupn´e z: http://vlado.fmf.uni-lj.si/pub/networks/ data/esna/hiTech.htm. 41
LITERATURA
LITERATURA
[13] BRANDES, U. A faster algorithm for betweenness centrality. Journal of Mathematical Sociology. 2001, 25, 2, s. 163–177. ˇ ´IKOVA, ´ L. Anal´ [14] BUST yza soci´aln´ıch s´ıt´ı. Sociologick´y ˇcasopis. 1999, 35, 2, s. 193–206. [15] CATANESE, S. et al. Extraction and analysis of facebook friendship relations. Computational Social Networks. 2012, s. 291–324. [16] DE NOOY, W. – MRVAR, A. – BATAGELJ, V. Exploratory social network analysis with Pajek. Cambridge University Press, 2011. ISBN 9780521602624. [17] ELLISON, N. B. et al. Social network sites: Definition, history, and scholarship. Journal of Computer-Mediated Communication. 2007, 13, 1, s. 210–230. [18] FERRARA, E. – FIUMARA, G. Mining and Analysis of Online Social Networks. University of Messina, 2012. ˇ ˇ´IK, P. [19] FRANEK, M. – MUZ Hudebn´ı preference a jej´ı souvislost s nˇekter´ymi osobnostn´ımi rysy [online]. [cit. 28.4.2013]. Dostupn´e z: http://acta.musicologica.cz/06-03/0603s02.html. [20] FREEMAN, L. C. A set of measures of centrality based on betweenness. Sociometry. 1977, s. 35–41. ˇ T. Extrakce informac´ı ze soci´aln´ıch m´edi´ı. Masarykova Uni[21] GREGOROVIC, verzita, 2010. [22] HANKE, T. Import dat ze sluˇzby Google Scholar do form´atu XML. Z´apadoˇcesk´a univerzita, 2012. [23] HANNEMAN, R. A. – RIDDLE, M. Introduction to social network methods. University of California Riverside, 2005. ˇ [24] JARUSEK, P. Anal´yza soci´aln´ı s´ıtˇe organiz´ator˚ u z´aˇzitkov´ych akc´ı. Masarykova Univerzita, 2008. [25] JOHNSON, J. A. et al. Social Network Analysis: A Systematic Approach for Investigating [online]. [cit. 28.4.2013]. Dostupn´e z: http://www.fbi.gov/ stats-services/publications/law-enforcement-bulletin/2013/March/ social-network-analysis. ˇ [26] SLERKA, J. Social network analysis pro zaˇc´ateˇcn´ıky [online]. [cit. 28.4.2013]. Dostupn´e z: http://www.lupa.cz/clanky/social-network-analysis-prozacatecniky. [27] LESKOVEC, J. Social media analytics: tracking, modeling and predicting the flow of information through networks. In Proceedings of the 20th international conference companion on World wide web, s. 277–278. ACM, 2011. 42
LITERATURA
LITERATURA
[28] LONG, J. Google Hacking. Zoner Press, 2005. ISBN 80-86815-31-5. [29] MILGRAM, S. The small world problem. Psychology today. 1967, 2, 1, s. 60–67. [30] MISLOVE, A. et al. Measurement and analysis of online social networks. In Proceedings of the 7th ACM SIGCOMM conference on Internet measurement, s. 29–42. ACM, 2007. ˇ ´IK, V. Evropsk´a ˇskoln´ı studie o alkoholu a jin´ [31] MRAVC ych drog´ach (ESPAD). ´ ˇ In Zaostˇreno na drogy 1/2012. Uˇrad vl´ady CR, 2012. [32] MRVAR, A. Network Analysis using Pajek [online]. [cit. 28.4.2013]. Dostupn´e z: http://mrvar.fdv.uni-lj.si/sola/info4. ´ [33] NOSAL, P. Vzdˇel´av´an´ı dospˇel´ych [online]. [cit. 28.4.2013]. Dostupn´e z: http://www.czso.cz/csu/tz.nsf/i/prezentace_z_tiskove_konference _vzdelavani_dospelych/$File/csu_tk_vzdelavani_prezentace.pdf. [34] SAK, P. Stav a v´yvoj znalost´ı ciz´ıch jazyk˚ u ˇcesk´e populace [online]. [cit. 28.4.2013]. Dostupn´e z: http://www.insoma.cz/index.php?id=1&n=1 &d_1=paper&d_2=jazyky_cz. [35] SEZNAM.CZ. Lid´e.cz – Nevhodn´e chov´an´ı a zak´azan´e aktivity [online]. [cit. 28.4.2013]. Dostupn´e z: http://napoveda.seznam.cz/cz/nevhodnechovani-a-zakazane-aktivity.html. [36] SEZNAM.CZ. Smluvn´ı ujedn´an´ı - Seznam u ´ˇcet [online]. [cit. 28.4.2013]. Dostupn´e z: http://registrace.seznam.cz/licenceScreen. [37] STERLY, R. V´ysledky ankety Sport roku 2012 – nap´ınav´y souboj mezi cyklistikou a fotbalem [online]. [cit. 28.4.2013]. Dostupn´e z: http://info.sportcentral.cz/blog/vysledky-ankety-sport-roku-2012souboj-mezi-cyklistikou-a-fotbalem.
43
Slovn´ık pojm˚ u a zkratek ASPL BFS CCDF
Pr˚ umˇern´a d´elka nejkratˇs´ı cesty (Average shortest path length) Prohled´av´an´ı do ˇs´ıˇrky (Breadth-first search) Doplˇ nkov´a kumulativn´ı distribuˇcn´ı funkce (Complementary cumulative distribution function) CM Centrality measures CSV Comma-separated values ˇ U ´ ˇ y statistick´ CS Cesk´ yu ´ˇrad DFS Prohled´av´an´ı do hloubky (Depth-first search) DOM Document Object Model GPL General Public License HTML HyperText Markup Language IBMd Internet Movie Database OS Operaˇcn´ı syst´em OSN Online soci´aln´ı s´ıt’ (Online social network) RUM Mˇes´ıˇcn´ıch unik´atn´ıch pˇr´ıstup˚ u SNAP Small-world Network Analysis and Partitioning URL Uniform resource locator XML Extensible Markup Language XPath XML Path Language
Znaky pouˇ zit´ e ve vzorc´ıch ∆ γ CB CC CC− CD + CD − CD D dG
Hustota grafu Exponent konektivity Betweenness centrality Closeness centrality Closeness centrality dle vstupn´ıch hran Degree centrality Degree centrality dle v´ ystupn´ıch hran Degree centrality dle vstupn´ıch hran Polomˇer grafu Stupeˇ n vrcholu
44
Obsah DVD Na pˇriloˇzen´em DVD naleznete n´asleduj´ıc´ı sloˇzky a soubory: • Data – lide-sit.net – s´ıt’ ve form´atu .net (viz pˇr´ıloha B) – lide-sit.gr – s´ıt’ ve form´atu .gr (viz pˇr´ıloha B) – lide-sit.sql – SQL Dump datab´aze se z´ıskan´ ymi daty – lide-struktura.sql – SQL Dump struktury datab´aze (viz ˇc´ast 4.2.1) – vypocty – sloˇzka obsahuj´ıc´ı vypoˇcten´e hodnoty CM • Roboti – SNABot-sit – robot pro pr˚ uchod a zpracov´an´ı s´ıtˇe pˇra´telstv´ı – SNABot-profily – robot pro pr˚ uchod a zpracov´an´ı profil˚ u – SNABot-centra – robot pro pr˚ uchod a zpracov´an´ı center – Scrapy.pdf a Scrapy-0.14.4.tar.gz – manu´al a knihovna Scrapy • Analyza – SNAP – rozˇs´ıˇren´ y framework SNAP ˇ U ´ – statistiky – tabulky a prezentace uv´adˇen´e CS • R – csv – CSV soubory slouˇz´ıc´ı k tvorbˇe graf˚ u – skripty – R skripty – pdf – PDF soubory s grafy vygenerovan´e pomoc´ı R skript˚ u • SNABot-nastroje.jar – program umoˇzn ˇuj´ıc´ı generov´an´ı CSV soubor˚ u pro tvorbu statistik a generov´an´ı souboru se s´ıt´ı • BP-Marek-Naggy.pdf – elektronick´a verze BP • BP-Marek-Naggy.rar – zdrojov´e dokumenty elektronick´e verze BP 45
Pˇ r´ılohy
46
A Uˇzivatelsk´e pˇr´ıruˇcky A.1
Webov´ y robot SNABot
Pro spuˇstˇen´ı webov´eho robota je tˇreba m´ıt nainstalovan´ y Python verzi 2.6 nebo 2.7 a knihovnu Scrapy. Tu m˚ uˇzete nal´ezt v [3] (pr˚ ubˇeh instalace je pops´an v ofici´aln´ı dokumentaci v ˇc´asti Installation guide). D´ale je nutn´e vytvoˇrit datab´azi s pˇredepsanou strukturou (viz ˇca´st 4.2.1 ˇci SQL Dump na pˇriloˇzen´em DVD). Roboti byli vyv´ıjeni a testov´ani na OS Windows 7. Vzhledem k tomu, ˇze vˇsechny pouˇzit´e ˇca´sti jsou platformˇe nez´avisl´e, mˇelo by b´ yt moˇzn´e roboty spustit i na jin´ ych OS. Pˇred spuˇstˇen´ım je tˇreba v souboru scrapy.bat nastavit cestu, ve kter´e je Python nainstalov´an. Pro zah´ajen´ı stahov´an´ı spust’te pˇr´ıkazov´ y ˇr´adek a pˇrepnˇete se do sloˇzky, ve kter´e se robot nach´az´ı. Toho n´aslednˇe spust´ıte pˇr´ıkazem: scrapy crawl jmeno -s JOBDIR=adresar Kde jmeno je jm´eno webov´eho robota. Tˇemi jsou: SNABot-profily – pro pr˚ uchod profil˚ u, jejichˇz jm´ena je nutn´e z´ıskat pomoc´ı robota SNABot-sit –, SNABot-centra – pro pr˚ uchod center, jejichˇz jm´ena je nutn´e z´ıskat pomoc´ı robota SNABot-sit – a SNABotsit – pro pr˚ uchod str´anek moji-pratele, obsahuj´ıc´ı pˇra´tele uˇzivatele. Parametr adresar je adres´aˇr, do kter´eho budou ukl´ad´ana data, d´ıky kter´ ym bude moˇzn´e robota pozastavit a pˇri dalˇs´ım spuˇstˇen´ı na toto stahov´an´ı nav´azat. Nedoporuˇcuji spouˇstˇet v´ıce robot˚ u najednou. Jinak m˚ uˇze doj´ıt k jejich odpojen´ı ˇci nespr´avn´e funkˇcnosti. Pro pˇreruˇsen´ı stahov´an´ı stisknˇete v pˇr´ıkazov´e ˇra´dce kombinaci kl´aves ctrl + c. Robot bude po kr´atk´e dobˇe ukonˇcen. Pˇr´ıpadnˇe lze ukonˇcen´ı vynutit dvojit´ ym stisknut´ım t´eto kombinace. Pot´e vˇsak nen´ı zaruˇceno, ˇze budou zpracov´any vˇsechny str´anky korektnˇe. Pro nav´az´an´ı na pˇreruˇsen´e stahov´an´ı opˇet zadejte v´ yˇse uveden´ y pˇr´ıkaz. Roboti loguj´ı sv´e akce do soubor˚ u log-rrrr-mm-dd.txt. V tˇech je moˇzn´e odhalit pˇr´ıpadn´e probl´emy. T´eˇz jsou v nich uvedeny z´akladn´ı statistiky o stahov´an´ı, jako je jeho rychlost, velikost pˇrenesen´ ych dat apod.
47
Uˇzivatelsk´e pˇr´ıruˇcky
A.2
Framework SNAP
Framework SNAP
Framework SNAP se mi podaˇrilo spustit pouze na syst´emech zaloˇzen´ ych na OS Linux. Pˇred samotn´ ym spuˇstˇen´ım je tˇreba framework nakonfigurovat. Toho doc´ıl´ıte pˇr´ıkazem ./configure --enable-openmp. Bez zad´an´ı parametru -openmp nebude umoˇznˇen paraleln´ı v´ ypoˇcet! Po konfiguraci zadejte pˇr´ıkaz make, kter´ y zdrojov´e soubory pˇreloˇz´ı (pˇreklad m˚ uˇze trvat i nˇekolik minut). Pro spuˇstˇen´ı v´ ypoˇctu centralit pˇrejdˇete do sloˇzky test. V termin´alu pot´e zadejte n´asleduj´ıc´ı pˇr´ıkaz: ./eval_vertex_betweenness -infile vstup.gr -outfile vystup.txt [-approx X] Kde vstup.gr je soubor se s´ıt´ı, kter´a m´a b´ yt analyzov´ana, ve form´atu .gr (viz pˇr´ıloha B). vystup.txt je soubor, do kter´eho budou v´ ysledky uloˇzeny. Pomoc´ı voliteln´eho parametru -approx je moˇzn´e v´ ysledky aproximovat (viz ˇca´st 6.3) a v´ ypoˇcet tak znaˇcnˇe urychlit. X znaˇc´ı kolika procentn´ı aproximac´ı bude v´ ypoˇcet proveden (nejˇcastˇeji se uv´ad´ı 5%). Pˇresn´ y v´ ypoˇcet m˚ uˇze b´ yt ˇcasovˇe velmi n´aroˇcn´ y. Pˇri cca 580 tis´ıc´ıch vrcholech trval na 16 j´adrov´em procesoru cca 4,5 dne. Pokud nen´ı program omezen, vyuˇz´ıv´a po ˇcas v´ ypoˇctu 100% procesorov´eho ˇcasu.
A.3
SNABot-nastroje
Tento n´astroj slouˇz´ı k odstranˇen´ı duplicit, kter´e vznikly z d˚ uvodu uveden´em v ˇca´sti 4.4. D´ale umoˇzn ˇuje vygenerov´an´ı souboru, obsahuj´ıc´ıho soci´aln´ı s´ıt’ a generov´an´ı CSV soubor˚ u, kter´e umoˇzn ˇuj´ı automatickou aktualizaci graf˚ u uveden´ ych v kapitole 5. Pro spr´avnou funkˇcnost je tˇreba, aby data byla uloˇzena v datab´azi maj´ıc´ı dˇr´ıve uvedenou strukturu (viz ˇca´st 4.2.1 ˇci SQL Dump na pˇriloˇzen´em DVD). Soubory obsahuj´ıc´ı s´ıt’ je moˇzn´e vygenerovat ve dvou form´atech (viz pˇr´ıloha B). Pro odstranˇen´ı duplicit a vygenerov´an´ı souboru se s´ıt´ı zadejte do pˇr´ıkazov´e ˇra´dky n´asleduj´ıc´ı pˇr´ıkaz: java -jar SNABot-nastroje.jar -d/n -format [-csv] Kde -d je pˇr´ıznak pro odstranˇen´ı duplicit (tˇech se v datab´azi nach´az´ı cca 10 tis´ıc). Pˇri zad´an´ı tohoto pˇr´ıznaku m˚ uˇze zpracov´an´ı trvat nˇekolik minut. Z d˚ uvodu zpˇetn´e 48
Uˇzivatelsk´e pˇr´ıruˇcky
SNABot-nastroje
kompatibility nebyly duplicity odstranˇeny pˇr´ımo v datab´azi. Pˇri zad´an´ı pˇr´ıznaku n duplicity odstranˇeny nebudou a soubory jsou vygenerov´any t´emˇeˇr ihned. Parametr -format urˇcuje, v jak´em form´atu bude s´ıt’ uloˇzena. Na v´ ybˇer jsou tˇri moˇznosti: -net – s´ıt’ bude moˇzn´e analyzovat pomoc´ı vˇetˇsiny program˚ u (jako jsou napˇr. Pajek XXL, Gephi atd.), -gr – s´ıt’ bude moˇzn´e analyzovat pomoc´ı frameworku SNAP, kter´ y umoˇzn ˇuje paraleln´ı v´ ypoˇcet metrik CC a CB , -oba – budou vytvoˇreny oba soubory s v´ yˇse uveden´ ymi form´aty. Pokud bude zad´an voliteln´ y parametr -csv, z datab´aze budou vygenerov´any CSV soubory, kter´e umoˇzn ˇuj´ı automatickou tvorbu graf˚ u pomoc´ı statistick´eho n´astroje R (R skripty naleznete na pˇriloˇzen´em DVD ve sloˇzce R).
49
B Form´aty soubor˚ u S´ıt’ lze uloˇzit do dvou r˚ uzn´ ych form´at˚ u, kter´e budou d´ale pops´any. Form´ at .gr Soubor s pˇr´ıponou .gr je pouˇz´ıv´an frameworkem SNAP pˇri v´ ypoˇctu centralit CC a CB . Reprezentace s´ıtˇe m´a n´asleduj´ıc´ı form´at: p 578119 6788208 u u 1 1 1211 ...... 578119 22513 Prvn´ı ˇr´adka definuje model, se kter´ ym se bude d´ale pracovat, ostatn´ı ˇr´adky tvoˇr´ı jednotliv´e hrany. p definuje prvn´ı ˇr´adku, ˇc´ıslo za n´ım urˇcuje poˇcet vrchol˚ u. Druh´e ˇc´ıslo urˇcuje poˇcet hran. N´asleduj´ıc´ı p´ısmeno znaˇc´ı: u – s´ıt’ je neorientovan´a, d – s´ıt’ je orientovan´a. Tˇret´ı p´ısmeno urˇcuje zda je s´ıt’ v´aˇzen´a – w, ˇci nev´aˇzen´a – u. V´ahy je moˇzn´e pˇridat na konec ˇra´dek tvoˇr´ıc´ı hrany napˇr. takto: 1 1211 5. Posledn´ı ˇc´ıslo znaˇc´ı, zda je prvn´ı vrchol ˇc´ıslov´an od jedniˇcky, ˇci od nuly. Dle toho je toto ˇc´ıslo nutn´e nastavit. U ˇr´adk˚ u, urˇcuj´ıc´ıch hrany, je nutn´e db´at na to, aby se v nich nevyskytovali nepatˇriˇcn´e mezery (napˇr. na konci ˇra´dek). Form´ at .net Tento form´at je pouˇz´ıv´an programy Gephi, Pajek XXL a nˇekter´ ymi dalˇs´ımi programy. Soubor m´a n´asleduj´ıc´ı form´at: *Vertices 578119 1 "jmeno" ......... 578119 "jmeno" *Edgeslist 1 1211 1212 1213 1214 ......... 578118 278044 ˇ ıslo za znaˇckou *Vertices ud´av´a poˇcet vrchol˚ C´ u. Vrcholy jsou ˇc´ıslov´any od 1 a je moˇzn´e je r˚ uznˇe oznaˇcit. V naˇsem pˇr´ıpadˇe jm´enem. Znaˇcka *Edgelist ˇr´ık´a, ˇze se jedn´a o neorientovan´e hrany. V pˇr´ıpadˇe hran orientovan´ ych pouˇzijeme znaˇcku *Arcslist. T´eˇz je moˇzn´e pouˇz´ıt znaˇcky *Edges a *Arcs. V tom pˇr´ıpadˇe je vˇsak nutn´e, aby se na jedn´e ˇr´adce nach´azela pouze jedna hrana. Hran´am je t´eˇz moˇzn´e pˇriˇradit v´ahu pˇrid´an´ım jej´ı hodnoty na konec ˇra´dky (napˇr. 1 1211 5). 50
C Rozˇs´ıˇren´ı statistik V t´eto pˇr´ıloze naleznete tabulku s detailn´ım rozdˇelen´ım mladistv´ ych do skupin podle toho, jak ˇcasto u ´dajnˇe konzumuj´ı alkohol a kouˇr´ı. Tabulka se vztahuje k ˇca´sti 5.4. Tab. C.1: Skupiny kuˇr´ak˚ u a konzument˚ u alkoholu u uˇzivatel˚ u mladˇs´ıch 18 let. Konzumace alkoholu Kouˇren´ı Mladistv´ ych Neuv´ad´ı Neuv´ad´ı Neuv´ad´ı Neuv´ad´ı Neuv´ad´ı Abstinent Abstinent Abstinent Abstinent Abstinent Dennˇe Dennˇe Dennˇe Dennˇe Dennˇe I bez m´ıry I bez m´ıry I bez m´ıry I bez m´ıry I bez m´ıry Poˇra´d Poˇra´d Poˇra´d Poˇra´d Poˇra´d S m´ırou S m´ırou S m´ırou S m´ırou S m´ırou
Neuv´ad´ı Hodnˇe Ne Obˇcas Poˇra´d Neuv´ad´ı Hodnˇe Ne Obˇcas Poˇra´d Neuv´ad´ı Hodnˇe Ne Obˇcas Poˇra´d Neuv´ad´ı Hodnˇe Ne Obˇcas Poˇra´d Neuv´ad´ı Hodnˇe Ne Obˇcas Poˇr´ad Neuv´ad´ı Hodnˇe Ne Obˇcas Poˇra´d
6755 58 3859 216 42 95 66 4539 243 67 7 99 51 31 13 115 448 794 572 91 3 448 794 572 91 424 610 5544 1860 282
Celkem
27048
51
D Porovn´an´ı v´ysledk˚ u aproximace s pˇ resn´ ym v´ ypoˇ ctem V t´eto pˇr´ıloze, kter´a se v´aˇze k ˇc´asti 6.2, naleznete porovn´an´ı hodnot CM, polomˇeru s´ıtˇe a ASPL. T´eˇz jsou zde porovn´any pˇresn´e v´ ysledky a v´ ysledky z´ıskan´e pomoc´ı aproximace. V tabulce D.1 naleznete hodnoty polomˇeru s´ıtˇe a ASPL pro r˚ uzn´e typy v´ ypoˇct˚ u. Na obr´azc´ıch naleznete porovn´an´ı nakolik jsou aproximovan´e hodnoty (resp. um´ıstˇen´ı jednotliv´ ych vrchol˚ u) shodn´e s pˇresn´ ym v´ ysledkem. V idea´ln´ım pˇr´ıpadˇe by se mˇelo jednat o pˇr´ımku. Je zde uvedeno porovn´an´ı 5% aproximace a pˇresn´eho v´ ypoˇctu neorientovan´e s´ıtˇe. Obr. D.2 zobrazuje celkov´e porovn´an´ı. Na ˇ tˇech, n´asleduj´ıc´ı str´ance naleznete detail tohoto porovn´an´ı pro vysok´e hodnoty. Cili kter´e n´as vˇetˇsinou zaj´ımaj´ı. Tab. D.1: Porovnan´ı ASPL a polomˇeru s´ıtˇe pro r˚ uzn´e typy v´ ypoˇct˚ u. Typ s´ıtˇe Neorientovan´a Neorientovan´a Orientovan´a Orientovan´a
Aproximace 5% 100% 5% 20%
(a) CC – vˇsechny hodnoty
ASPL Polomˇer 4,39 4,86 4,97 5,07
12 15 15 17
(b) CB – vˇsechny hodnoty
Obr. D.1: Porovn´an´ı 5% aproximace a pˇresn´eho v´ ypoˇctu pro neorientovanou s´ıt’.
52
Porovn´an´ı v´ysledk˚ u aproximace s pˇresn´ym v´ypoˇctem
(a) CB – detail vysok´ ych hodnot
(b) CC – detail vysok´ ych hodnot
Obr. D.2: Porovn´an´ı 5% aproximace a pˇresn´eho v´ ypoˇctu pro neorientovanou s´ıt’.
53
E V´ysledky Centrality measures pro orientovanou s´ıt’ a aproximace V t´eto pˇr´ıloze naleznete ˇzebˇr´ıˇcky uˇzivatel˚ u, kteˇr´ı se um´ıstily na prvn´ıch 20 m´ıstech, dle z´akladn´ıch metrik Centrality measures1 . Uˇzivatel´e, vyskytuj´ıc´ı se na prvn´ıch 10 m´ıstech v ˇzebˇr´ıˇcku uveden´em v ˇc´asti 6.3, maj´ı pro snadnˇejˇs´ı identifikaci napˇr´ıˇc ˇzebˇr´ıˇcky pˇriˇrazenou jednotnou barvu. Jsou zde uvedeny ˇzebˇr´ıˇcky pro s´ıt’ orientovanou i neorientovanou a jejich 5% a 20% aproximace. Pˇresn´ y v´ ypoˇcet pro neorientovanou s´ıt’ naleznete v tabulce 6.3. Tab. E.1: Uˇzivatel´e OSN seˇrazeni dle dosaˇzen´eho m´ısta pro jednotliv´e metriky CM – 5% aproximace neorientovan´e s´ıtˇe. # 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
CB
CC
honzek098 honzek098 r.hasek r.hasek sochurek.j sochurek.j melly.19 melly.19 flamez10 flamez10 martinoof martinoof
[email protected] vivi.elien.186 nezkrotny.dablicek.lucie.xd nezkrotny.dablicek.lucie.xd ashraf.shafeek
[email protected] durdil.d kapradorosty vvladimirvanek durdil.d vivi.elien.186 janmukarovsky topol.d ajik-1 kapradorosty topol.d rocker.k nikollka22 ajik-1 marcela-marsi zasova1991 martin.karatista
[email protected] lusie44
[email protected] karollecka martin.karatista s.e.x.o.n.t.h.e.b.e.a.c.h
CD honzek098 sochurek.j r.hasek martinoof melly.19 flamez10 vvladimirvanek ashraf.shafeek
[email protected] durdil.d vivi.elien.186 topol.d zasova1991 kapradorosty ajik-1 martin.karatista rocker.k citronek.zx avoldies petrlupik
− – Closeness Legenda k tabulk´ am: CB – Betweenness centrality, CC – Closeness centraltity, CC − centrality dle vstupn´ıch hran, CD – Degree centrality, CD – Degree centrality dle vstupn´ıch hran). 1
54
V´ysledky Centrality measures pro orientovanou s´ıt’ a aproximace
Tab. E.2: Uˇzivatel´e OSN seˇrazeni dle dosaˇzen´eho m´ısta pro jednotliv´e metriky CM – 5% aproximace orientovan´e s´ıtˇe. #
CB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
honzek098 r.hasek melly.19 sochurek.j nezkrotny.dablicek.lucie.xd durdil.d flamez10 vivi.elien.186
[email protected] martinoof vvladimirvanek avoldies ashraf.shafeek zlatovlaska111 rompears
[email protected] 01pitrisek martin.karatista
[email protected] italfllexo
CC−
− CD
r.hasek
[email protected] vivi.elien.186 avoldies honzek098 splichalpeta melly.19 vivi.elien.186 x.x.radushka.princess.x.x beruska.no1
[email protected] denny.hebdova lusie44 karollecka karollecka italfllexo durdil.d honzek098 rompears jitka.pabyskova lucixxcka-lucik lucixxcka-lucik nezkrotny.dablicek.lucie.xd domi-stara flamez10 myska122 xxxluciiinkaxxx r.hasek nikollka22 zpewanda bacio333 durdil.d adrika75 marcela-marsi asuss jahodka444 jahodka444 petra.dark elvislu rompears
55
V´ysledky Centrality measures pro orientovanou s´ıt’ a aproximace
Tab. E.3: Uˇzivatel´e OSN seˇrazeni dle dosaˇzen´eho m´ısta pro jednotliv´e metriky CM – 20% aproximace orientovan´e s´ıtˇe. #
CB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
honzek098 r.hasek melly.19 durdil.d sochurek.j flamez10 nezkrotny.dablicek.lucie.xd martinoof vivi.elien.186
[email protected] vvladimirvanek rompears ashraf.shafeek ashraf.shafeek avoldies martin.karatista
[email protected] 01pitrisek zsidlo asuss italfllexo
CC−
− CD
r.hasek
[email protected] vivi.elien.186 avoldies rompears splichalpeta melly.19 vivi.elien.186 durdil.d beruska.no1 x.x.radushka.princess.x.x denny.hebdova honzek098 karollecka lucixxcka-lucik italfllexo
[email protected] honzek098 karollecka jitka.pabyskova lusie44 lucixxcka-lucik flamez10 domi-stara lucinnkaa16 myska122 nezkrotny.dablicek.lucie.xd r.hasek nikollka22 zpewanda bacio333 durdil.d xxxluciiinkaxxx marcela-marsi jjjjoenick jahodka444 asuss petra.dark horalka5 rompears
56
F J´adro s´ıtˇe V t´eto pˇr´ıloze naleznete vizualizaci a nˇekolik informac´ı o j´adru s´ıtˇe. To tvoˇr´ı uˇzivatel´e, kteˇr´ı maj´ı v´ıce neˇz 500 pˇra´tel nebo je za pˇr´atele povaˇzuje v´ıce neˇz 500 uˇzivatel˚ u. Pˇr´ıloha se v´aˇze ke kapitole 6. Pˇres toto j´adro je v s´ıti pˇren´aˇseno nejv´ıce informac´ı. Je zaj´ımav´e, ˇze t´emˇeˇr vˇsechny vrcholy tvoˇr´ı jednu komponentu (105 ze 123, tj. 85,4%). To ukazuje na velmi dobr´e propojen´ı mezi centry. ASPL v t´eto pods´ıti (pro neorientovan´ y model) je 3 a polomˇer s´ıtˇe 8. Pro orientovanou s´ıt’ je pak ASPL 4 a polomˇer s´ıtˇe 10. Pr˚ umˇern´ y stupeˇ n vrcholu je 5,2. Hustota j´adra je 4,3E-2 pro s´ıt’ neorientovanou a 2,1E-2 pro s´ıt’ orientovanou. Je tedy v´ yraznˇe hustˇs´ı neˇz s´ıt’ tvoˇrena vˇsemi uˇzivateli. Nejcentr´alnˇejˇs´ım uˇzivatelem v j´adˇre je dle vˇsech zkouman´ ych metrik CM (CD , CC a CB ) uˇzivatelka nezkrotny.dablicek.lucie.xd.
Obr. F.1: Nejvˇetˇs´ı komponenta j´adra s´ıtˇe – vrcholy jsou obarveny a zvˇetˇseny dle metriky CD (vytvoˇreno pomoc´ı programu Gephi).
57