Analýza a vizualizácia veľkých dát

Similar documents
Spájanie tabuliek. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Aplikačný dizajn manuál

kucharka exportu pro 9FFFIMU

Databázové systémy. SQL Window functions

Anycast. Ľubor Jurena CEO Michal Kolárik System Administrator

Obsah. SOA REST REST princípy REST výhody prest. Otázky

Databázy (1) Prednáška 11. Alexander Šimko

VYLEPŠOVANIE KONCEPTU TRIEDY

Mesačná kontrolná správa

Copyright 2016 by Martin Krug. All rights reserved.

Registrácia účtu Hik-Connect

Mesačná kontrolná správa

Constraint satisfaction problems (problémy s obmedzujúcimi podmienkami)

Desatinné čísla #1a. Decimal numbers #1b. How much larger is 21,8 than 1,8? Desatinné čísla #2a. Decimal numbers #2b. 14 divided by 0,5 equals...

REPORT DESIGNER 1 VYTVORENIE A ÚPRAVA FORMULÁRA. úprava formulárov v Money S4 / Money S Vytvorenie formulára

Poradové a agregačné window funkcie. ROLLUP a CUBE

1 Komplexný príklad využitia OOP

Problém Big Data a ako ho riešiť pomocou NoSQL. Ján Zázrivec Softec

Ochrana koncových staníc pomocou Cisco Security Agent 6.0. Ľubomír Varga.

VLSM a CIDR. CCNA2 Kapitola Cisco Systems, Inc. All rights reserved. Cisco Public 1

Microsoft Azure platforma pre Cloud Computing. Juraj Šitina, Microsoft Slovakia

Manuál k programu FileZilla

Riešenia a technológie pre jednotnú správu používateľov

Textový formát na zasielanie údajov podľa 27 ods. 2 písm. f) zákona

Jazyk SQL. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Testovanie bieleho šumu

Základná(umelecká(škola(Jána(Albrechta Topoľčianska(15

Databázy (1) Prednáška 08. Alexander Šimko

Spôsoby zistenia ID KEP

TP-LINK 150Mbps Wireless AP/Client Router Model TL-WR743ND Rýchly inštalačný sprievodca

18. Matlab figure ako objekt

Ekonomický pilier TUR

obsahuje 5 príkladov, spolu 29>25 bodov skupina:

MS Exchange 2010 Prechod Ing. Peter Záhradník

Coordinates ordering in parallel coordinates views

ÚMRTNOSŤ NA ÚRAZY MOZGU VO VYBRANÝCH EURÓPSKYCH KRAJINÁCH

MOŽNOSTI VYUŽITIA ĽUDSKÉHO POSTUPU PRE NÁVRH

LL LED svietidlá na osvetlenie športovísk. MMXIII-X LEADER LIGHT s.r.o. Všetky práva vyhradené. Uvedené dáta podliehajú zmenám.

Ochrana proti DDoS za použitia open-source software. Katarína Ďurechová

POSSIBILITIES OF APPLICATION THE METHODS OF NETWORK ANALYSIS TO OPTIMIZE WAREHOUSE LOGISTICS

ÚRAD VEREJNÉHO ZDRAVOTNÍCTVA SLOVENSKEJ REPUBLIKY Trnavská cesta 52 P.O.BOX Bratislava

Štruktúra údajov pre kontajner XML údajov 1. Dátové prvky pre kontajner XML údajov

Vzory, rámce a webové aplikácie

Osobovo-orientovaný prístup vývoja softvéru

UNIVERZITA KOMENSKÉHO V BRATISLAVE FAKULTA MATEMATIKY, FYZIKY A INFORMATIKY VIZUALIZÁCIA ZÁKLADNÝCH GRAFOVÝCH ALGORITMOV.

BGP - duálne prepojenie AS. (primary + backup spoj), s IBGP, cez virtuální L2 linky

VIRTUALIZÁCIA DÁTOVÝCH ÚLOŽÍSK. Karol Schütz, S&T Slovakia

Tvorba informačných systémov. 4. prednáška: Návrh IS

POKROČILÉ C++ Marian Vittek

Portál pre odborné publikovanie ISSN

MERANIE SOFTVÉRU. Jakub Šimko MSI

Algoritmy deterministickej a stochastickej optimalizácie a ich počítačová realizácia

Doporučovací systém pro eshop

D.Signer prostriedok pre vytváranie zaručeného elektronického podpisu. Inštalačná príručka

Recipient Configuration. Štefan Pataky MCP, MCTS, MCITP

ŽILINSKÁ UNIVERZITA V ŽILINE

Komunikačné protokoly 2005 KP 2005 #3 - IP v02.doc

Crestron Mercury. Univerzálny Videokonferenčný a Kolaboračný systém

Katedra Informatiky Fakulta Matematiky, Fyziky a Informatiky Univerzita Komenského, Bratislava. Toky v sieťach. (bakalárska práca) Richard Štefanec

TECHNICKÁ UNIVERZITA V KOŠICIACH. Pokročilé metódy grafickej analýzy komplexných dát DIPLOMOVÁ PRÁCA

POROVNANIE GUI VYBRANÝCH SOFTVÉROVÝCH NÁSTROJOV

9. PROJEKTOVÉ PLÁNOVANIE

NÁKLADY ŽIVOTNÉHO CYKLU LIFE CYCLE COSTS

UNIVERZITA KOMENSKÉHO V BRATISLAVE FAKULTA MATEMATIKY, FYZIKY A INFORMATIKY VÝUKOVÁ WEBOVÁ APLIKÁCIA NA PROGRAMOVANIE GPU.

Košice. Riešenia pre malé a stredné podniky

Univerzita Komenského v Bratislave Fakulta matematiky, fyziky a informatiky. Interaktívna výuková webová aplikácia na riešenie úloh o pravdepodobnosti

QtiPlot Základy práce s programom

Transactions of the VŠB Technical University of Ostrava, Mechanical Series No. 2, 2014, vol. LX article No. 1991

Rýchlosť Mbit/s (download/upload) 15 Mbit / 1 Mbit. 50 Mbit / 8 Mbit. 80 Mbit / 10 Mbit. 10 Mbit / 1 Mbit. 12 Mbit / 2 Mbit.

Databázy (2) Prednáška 08. Alexander Šimko

Komunikačné protokoly 2004 KP 2004 #3 - IP v03.doc

UNIVERZITA KOMENSKÉHO V BRATISLAVE FAKULTA MATEMATIKY, FYZIKY A INFORMATIKY

Fuzzy teoria a jazyk SQL

systemove programovanie win32 programovanie

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

SLOVENSKÁ TECHNICKÁ UNIVERZITA FAKULTA INFORMATIKY A INFORMAČNÝCH TECHNOLÓGIÍ ILKOVIČOVA 3, BRATISLAVA 4

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

NÁVRH A REALIZÁCIA WEBOVEJ APLIKÁCIE FINANCOVANIE POLITICKÝCH STRÁN

RIZIKO V PODNIKU. Prípadová štúdia 4. Ing. Michal Tkáč, PhD

Podporované grantom z Islandu, Lichtenštajnska a Nórska prostredníctvom Finančného mechanizmu EHP a Nórskeho finančného mechanizmu

Hodnotenie kvality produktu

1 Vytvorenie tabuľky

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Mikroprocesor. Mikroprocesor. Program. Federico Faggin, tvorca prvého mikroprocesora i4004

Aplikácia k určovaniu rastlín pre platformu ios

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

INTERAKTÍVNE PROSTREDIE NA PRÁCU S GRAFMI

Government Cloud. Stratégia využitia Cloud Computing-u vo Verejnej správe SR. Peter Kišša

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Jeden z variantov príkazu priradenia nám umožňuje zadať za sebou aj viacej vstupných hodnôt, ako napríklad

Návrh kritérií pre habilitáciu docentov a vymenúvanie profesorov na Ekonomickej fakulte TU v Košiciach

Programovanie v jazyku Python. Michal Kvasnica

MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY

Databázové systémy. 10. prednáška. NoSQL databázy Viktor Škultéty, ESTEN s.r.o.

BODY PRÍPADOV POUŽITIA ALEBO AKO MERAŤ SOFTVÉR

Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE

ŽILINSKÁ UNIVERZITA V ŽILINE

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Transcription:

MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY Analýza a vizualizácia veľkých dát DIPLOMOVÁ PRÁCA Bc. Jakub Caban Brno, 2015

Prehlásenie Prehlasujem, že táto diplomová práca je mojím pôvodným autorským dielom, ktoré som vypracoval samostatne. Všetky zdroje, pramene a literatúru, ktoré som pri vypracovaní používal alebo z nich čerpal, v práci riadne citujem s uvedením plného odkazu na príslušný zdroj. Jakub Caban............... Vedúci práce: RNDr. Radek Ošlejšek, Ph.D. ii

Poďakovanie Chcel by som sa poďakovať vedúcemu tejto práce, pánovi RNDr. Radkovi Ošlejškovi, Ph.D. za jeho profesionálne vedenie a pozitívny prístup. Ďalej by som sa chcel poďakovať celej mojej rodine a mojej partnerke, že ma po celý čas podporovali a pomáhali mi. iii

Zhrnutie Práca popisuje problematiku takzvaných veľkých dát a rozoberá čo tento pojem znamená a ako sa rieši. Následne práca skúma a popisuje analytické prístupy, najmä sa zameriava na a predstavuje exploratívnu analýzu. V ďalšej kapitole práca popisuje rôzne možnosti vizualizácii s návodom na ich tvorbu a uvádza aj príklady vytvorené pomocou rôznych nástrojov. iv

Kľúčové slová Big data, analýza, Hadoop, vizualizácia, graf, exploratívna analýza v

Obsah 1 Úvod... 3 2 Big data... 4 Apache Hadoop... 6 HDFS... 6 MapReduce... 7 Hadoop Common Components... 7 3 Exploratívna analýza... 8 4 Vizualizácie... 15 Micro / Meso / Macro... 16 Proces vizualizácie... 17 Ohodnotenie... 18 Color... 18 Farebné schémy... 19 Temporal Data... 21 Geopriestorové vizualizácie... 22 Tematické vizualizácie... 24 Príprava dát... 24 Vizualizácia textových dát... 26 Word Clouds... 26 Wordle... 28 Sieťové Vizualizácie... 29 1

Stromové vizualizácie... 32 Radial Layout... 32 Treemap layout... 33 Záver... 37 Literatúra... 38 2

1 Úvod Žijeme v novej dobe. Dobe informácii, nových technológii, pokroku. S technologickým pokrokom súvisí aj pokrok na komunikačnej úrovni. Nové zariadenia, sociálne siete, to všetko nám umožňuje byť stále s niekým v kontakte, stále niečo, sťahovať, získavať, vymieňať, posielať, zdieľať. Dostali sme sa do doby, kde je všetko zaplavené informáciami a všetci si tie informácie ukladajú. Každý človek čo používa technológie zanecháva po sebe stopu dát a všetky tieto dáta sa niekam ukladajú. Každý človek a každá spoločnosť má uložené svoje dáta a čím väčšia spoločnosť, tým viac dát. Problém je, keď tých dát je až príliš a sú rôzneho druhu. Spoločnosť tie dáta má uložené a chce ich použiť, len ich je neskutočne veľa a sú rôzneho druhu, tak nevie čo s tým. To znamená, že má Big Data problém a musí prísť na to, ako získať z tých dát čo najviac informácii. 3

2 Big data Termínom Veľké Dáta označujeme informácie, ktoré sa nedajú spracovať a analyzovať tradičnými procesmi, alebo nástrojmi v rozumnom čase. Veľké dáta sú hlavne definované tromi základnými charakteristikami, alebo v angličtine tromi V : Volume Objem: predstavuje koľko máme dát Velocity Rýchlosť: ako rýchlo sme schopný tieto dáta spracovať Variety Rôznorodosť: aké rôzne typy dát vlastníme Termín Veľké Dáta môže byť mätúci, lebo aby informácie mohli byť označené ako Big Data nestačí, aby ich objem zaberal veľké množstvo úložného priestoru. Nie je ani možné určiť, aký veľký objem dát sa už považuje za Big Data. Preto aj keď je veľkosť dát dôležitá pri tejto definícii, nie je jediným rozhodujúcim faktorom. Veľkú úlohu zohráva v akom formáte sú dané dáta a akú majú štruktúru a s tým je spojené aj to, ako rýchlo sme schopný ich spracovať a zanalyzovať. Súvisí to s tým, že väčšina týchto dát je vo veľmi neštruktúrovanej podobe a vo veľa rôznych formátoch a podobách. S nástupom mobilných zariadení a digitalizácii všetkých informácii sa získavajú a ukladajú dáta už nie len v textovej podobe, ako v minulosti, ale aj ako audio, video, dáta z log súborov, obrázky zo satelitov a pod. Z toho vyplýva, že ako Big Data môže byť označená aj pomerne malá množina neštruktúrovaných, rôznorodých dát, ktorú je časovo náročné zanalyzovať a na druhú stranu, množina dát zaberajúcich niekoľko petabytov úložného priestoru, ktoré sú ale veľmi štruktúrované a v jednotnom formáte Big Data byť nemôžu, lebo ich analýza môže byť vykonaná extrémne rýchlo. Príkladom zberu veľkých dát sú senzory používané v lietadlách, ktoré konštantne počas letu zachytávajú množstvo informácii. V jednom lietadle môže byť použitých až stotisíc senzorov, kde každý z nich zachytáva informácie od rýchlosti vetra, cez množstvo oxidu uhličitého v kabíne a teplotu, či tlak vzduchu. Vo výsledku sú najmä dôležité kombinácie 4

záznamov z jednotlivých senzorov, ktoré bývajú veľmi komplexné a tým náročné na analýzu. Aj keď zozbierané údaje z hodinového letu takého lietadla zaberajú len niekoľko GB priestoru, ich veľká komplexnosť ich robí skutočne Veľkými. Opačným príkladom sú telekomunikačné spoločnosti, ktoré nahrávajú a ukladajú obrovské množstvo hovorov, ktoré zaberajú niekoľko násobne viac úložného priestoru. Jedná sa ale o veľmi štruktúrované dáta, ktorá sa dajú veľmi rýchlo zanalyzovať a preto aj keď v tomto prípade máme oveľa viac informácii ako v prvom prípade, nejedná sa o veľké dáta [1]. Zvyčajne sa ale jedná o obrovské množstvo dát, ktorému čím ďalej tým viac čelia všetky možné organizácie a majú problémom so skladom týchto veľkých dát. Často krát má organizácia k dispozícii enormné množstvo informácii s potenciálnou hodnotou, ale nie sú schopní vyťažiť z daného dátového úložiska žiadne hodnotné informácie. Tie sú často uložené v neštruktúrovanej forme a formáte a analytici si nevedia poradiť s tým ako z nich vyťažiť relevantné informácie a tak sú organizácie vlastniace tieto dáta nútené zvažovať či je potrebné si tieto dáta udržiavať. Veľké dáta spravidla zaberajú obrovské hardwarové priestory a preto je neefektívne udržiavať ich, ak nie sú schopní ich zanalyzovať. Čistý objem dát, ktoré sú skladované, sa stále prudko rozrastá, zatiaľ čo percentuálny počet dát, ktoré sú organizácie schopné spracovať rapídne klesá. Len samotný Facebook vygeneruje denne 10 TB dát a toto číslo stále rastie [2]. 5

Apache Hadoop Je to spôsob ako sa vysporiadať s obrovským množstvom neštruktúrovaných dát a pomocou svojich jednotlivých častí ich dokáže spracovať a zanalyzovať. Hadoop je softwarový projekt spoločnosti Apache Software Foundation, ktorý je napísaný v jazyku Java. Bol inšpirovaný Google File Systémom od Google a MapReduce programovacím paradigmatom. Hadoop je navrhnutý tak, aby preskúmal veľké množiny dát a priniesol výsledky, pomocou vysoko škálovateľného, distribuovaného, procesného systému. Hadoop sa skladá z troch komponentov: Hadoop Distributed File System (HDFS) Hadoop MapReduce model Hadoop Common HDFS Pomocou HDFS je možné rozdeliť Hadoop klaster na stovky až tisíce uzlov. Dáta sú rozdelené do menších blokov a sú distribuované v rámci clusteru. Vďaka tomu sú procedúry map a reduce vykonávané na menších množinách dát, čo poskytuje potrebnú škálovateľnosť pri spracovaní Veľkých Dát. Hadoop využíva bežne dostupné servery vo veľkom clustery, kde každý server má niekoľko hard diskov. Dáta ktoré sa majú spracovať pomocou MapReduce sú uložené na týchto serveroch čo zvyšuje výkon. Pri použití Hadoop clusteru je veľká pravdepodobnosť výpadkov na diskoch MTTF mean time to failure. MTTF je priemerná doba fungovania medzi výpadkami na disku. Odpovedá pravdepodobnosti výpadku [3]. S týmto faktom sa ale počíta, čo je silnou stránkou Hadoopu, pretože má zabudovanú schopnosť tolerancie voči chybám (fault tolerance) a kompenzácie chýb (fault compensation). Dáta sú rozdelené do blokov a kópie týchto blokov sú uložené v Hadoop clusteri. Takže jeden súbor je uložený ako menšie bloky, ktoré sú replikované na viacerých serveroch po celom clusteri. Celá logika ukladania dát je organizovaná jedným serverom nazvaným NameNode. Ten udržiava 6

všetky informácie a organizuje všetky dátové súbory v HDFS. Jeho informácie sú uložené v pamäti, čo umožňuje rýchle odpovede na požiadavky, alebo manipuláciu s úložným priestorom. Keďže existuje len jeden NameNode pre celý Hadoop cluster, tento NameNode potom tvorí Single Point Of Failure (SPOF) pre celý systém. Takže v prípade, ak dôjde k výpadku jediného NameNode, nastane výpadok celého systému [4]. Preto je potrebné, aby serverový komponent obsahujúci NameNode, bol oveľa robustnejší v porovnaní zo zvyškom serverov v Hadoop clusteri aby sa čo najviac minimalizovala pravdepodobnosť chýb a taktiež je potrebná pravidelná záloha metadát uložených v NameNode. Výhodou Hadoop MapReduce aplikačného frameworku je, že vývojár sa nemusí starať o záležitosti NameNode a kde sú dáta uložené, pretože Hadoop to robí samostatne. MapReduce Názov odkazuje na dve oddelené funkcie, ktoré sú vykonávané. Funkcia map vezme množinu dát a konvertuje ju na inú množinu, v ktorej sú jednotlivé prvky rozdelené do usporiadaných dvojíc kľúč, hodnota. Funkcia reduce vezme výsledok map a dostane ho na vstup a kombinuje tieto dvojice do menšej množiny dvojíc. Hadoop Common Components Common components sú knižnice ktoré podporujú rôzne Hadoop projekty [5]. 7

3 Exploratívna analýza Exploratory data analysis, skrátene EDA, bola predstavená v roku 1977 v knihe s rovnakým názvom, ktorú napísal autor John W. Tukey. Je to alternatíva ku klasickej analýze a štatistike, ktoré kladú veľký dôraz na hypotézy a ich testovanie. EDA je skôr prístup, alebo filozofia k analýze, ktorá sa zameriava najmä na dáta [6]. Medzi hlavné ciele EDA analýzy patrí: maximalizácia náhľadu do dát odkrytie skrytej štruktúry dát vyňatie dôležitých premenných odhalenie anomálii, chýb a outlinerov testovanie predpokladov zisťovanie vzťahov medzi premennými Outliner je prvok z množiny, ktorý sa nadštandardne z tejto množiny vymyká. Znamená to, že v náhodnej množine dát vykreslenej na osi sa nachádza v abnormálnej vzdialenosti od ostatných. EDA rovnako ako aj iné analýzy začínajú s problémom a postupne sa snažia dospieť k záveru. EDA sa od ostatných ale líši najmä v poradí a zameraní krokov, ktoré k záveru vedú. Na rozdiel od ostatných je užitočná tým, že po tom čo sme oboznámení s problémom a následne získame dáta, nastáva analýza týchto dát a až potom z toho vyplýva tvorba modelu a nakoniec záver. Pri klasickej, alebo Bayesovej analýze po získaní dát nasleduje odvodenie modelu a analýza vychádza z parametrov tohto modelu. EDA sa teda pri analýze neobmedzuje predom zvoleným modelom, ale skôr sa snaží odvodiť, aký model by bol najvhodnejší. Na rozdiel od klasickej a Bayesovej, ktoré sa zameriavajú na model, sa EDA zameriava na dáta a na ich štruktúru. Hlavnou výhodou je, že pracuje a využíva všetky dostupné dáta. Nesnaží sa zovšeobecniť dáta, alebo ich namapovať do menšej množiny, pre ušetrenie priestoru, alebo času. Pokiaľ si samotná analýza nevyžaduje zredukovať, alebo 8

namapovať dáta, tak EDA pracuje s celou množinou a teda nedochádza k strate, alebo k potencionálnej zmene žiadnych informácii [7]. EDA je dôležitým prvým krokom pri analýze dát a zvyčajne sú predmetom tejto analýzy experimenty, alebo prieskumy. Výsledky týchto experimentov alebo prieskumov, sú následne použité ako zdrojové dáta pre analýzu. Obvykle sa jedná o dáta uložené v tabuľkovom formáte, alebo zjednodušene to môže byť aj pole záznamov. Zvyklosťou je, že v riadkoch sú uložené subjekty experimentu a ku každému existujú stĺpce s identifikátorom pre každý subjekt a v ďalších stĺpcoch nazbierané hodnoty. Počet stĺpcov závisí od počtu premenných s ktorými pracujeme. V jednotlivých stĺpcoch sú uložené hodnoty numerické, ak sa jedná o kvantitatívnu premennú, alebo je tam uložená kategorická hodnota, ktorá závisí od typu premennej. Prezeranie si dáta v takomto formáte je samozrejme veľmi nepraktické a nevedie k úspešnému charakterizovaniu dát. Preto je EDA analýza v týchto prípadoch veľmi užitočná [8]. EDA sa silno opiera o kolekciu techník takzvanej grafickej štatistiky. Napriek tomu sa nejedná a identické pojmy. Grafická štatistika je len súbor techník, pričom všetky sú grafického charakteru. EDA nie je len množina techník, ale je to prístup ako by mala byť analýza dát vykonávaná a je hlavne na analytikovi akým spôsobom bude postupovať. Cieľom je neriadiť sa zvyčajnými predpokladmi o tom akým modelom sa dáta riadia, ale naopak nechať dáta samé odhaliť svoju štruktúru a model. Preto sa nejedná len o aplikáciu rôznych techník v stanovenom poradí, ale jedná sa o hlbšiu filozofiu ako nahliadnuť do množiny dát, zistiť čo hľadáme a ako to hľadať. Väčšina techník ktoré EDA využíva je grafického charakteru, ale opiera sa aj o niekoľko kvantitatívnych techník. Dôvod prečo sa EDA tak veľmi zameriava na grafické techniky je ten, že sa snaží objektívne odkryť štruktúru dát a získať vždy nový, často krát nečakaný náhľad do dát. Práve pomocou grafických techník a prirodzeného pattern-recognition EDA dosahuje týchto výsledkov. 9

Jednoduchým príkladom môžeme ukázať, že grafické techniky skutočne môžu poskytovať oveľa väčší náhľad do dát. Uveďme príklad dvoch množín dát: X Y 10 8.04 8 6.95 13 7.58 9 8.81 11 8.33 14 9.96 6 7.24 4 4.26 12 10.84 7 4.82 5 5.68 Pomocou základnej štatistickej analýzy by sme zistili nasledujúce údaje: Počet záznamov v každej množine je N = 11 Priemer množiny X Mx = 9 Priemer množiny Y My = 7.5 Korelácia týchto dvoch množín = 0.816 Sklon = 0.5 Smerodajná odchýlka = 1.236 Tieto základné kvantitatívne techniky analýzy, napriek tomu, že majú veľký význam, dajú nám len obmedzenú predstavu s akými množinami máme dočinenia, obzvlášť, keby sa jednalo o dve obrovské množiny dát. Na druhú stranu, použitie grafických techník nám dokáže rýchlo odhaliť skryté vlastnosti. 10

Obr. 3.1: Korelačný diagram vytvorený v programe STATISTICA Na obrázku 3.1 môžeme vidieť korelačný diagram alebo nazývaný aj ako bodový graf (Scatter plot), ktorý bol vytvorený z množín premenných X a Y. Tento diagram odhaľuje následné veci, ktoré z predošlých kvantitatívnych techník neboli zrejmé: dáta sa správajú lineárne s miernym rozptylom nie je potreba komplikovanejší model (napr. kvadratický) v množine nie sú žiadne prvky, ktoré by vybočovali (outlinery) dáta sú rovnomerne rozložené 11

Vezmime do úvahy nasledujúce dve premenné: X2 Y2 10 9.14.. 8 8.14.. 13 8.74.. 9 8.77.. 11 9.26.. 14 8.10.. 6 6.13.. 4 3.10.. 12 9.13.. 7 7.26.. 5 4.74.. Keď vypočítame rovnaké kvantitatívne štatistiky na tieto dve množiny premenných, dostaneme identické výsledky ako v predošlom príklade. Na základe toho by sa mohlo javiť, že sa jedná o kvázi rovnaké, alebo aspoň podobné dáta. Obrázok 3.2 ale odhaľuje, že to nie je pravda. Opäť sa jedná o korelačný diagram, čo je najpravdepodobnejší prvý krok pri väčšine EDA analýz, tentokrát je graf vyhodnotený nad dátami z druhého príkladu. Na obrázku je možné vidieť, že dáta sú kvadratického charakteru. 12

12,00 10,00 8,00 Y2 6,00 4,00 2,00 0,00 0,00 2,00 4,00 6,00 8,00 10,00 12,00 14,00 16,00 X2 Obr 3.2: Korelačný diagram vytvorený v programe Microsoft Excel Takže aj napriek tomu, že dáta sa javili byť rovnaké po tom čo sme na ne aplikovali niektoré z hlavných kvantitatívnych techník, po vykonaní jednej grafickej sme sa presvedčili o opaku. Jednalo sa ale iba o ilustračný príklad, v praxi, pri práci s omnoho väčším množstvom dát, by bola samotná analýza omnoho komplexnejšia so zapojením viacerých kombinácii rôznych techník. Príklad nám ale demonštroval, prečo sú grafické techniky také dôležité a že skutočne pomáhajú získať náhľad do dát a preto sa EDA o ne tak silno opiera. V závislosti od toho koľko máme premenných, používame k analýze rôzne techniky. Najčastejším prípadom je, že máme analýzu jednej, alebo dvoch premenných. Ak pracujeme s viacerými, je vždy užitočné urobiť na úvod 13

analýzu každej jednej premennej zvlášť. EDA používa veľké množstvo techník grafickej štatistiky, medzi najpoužívanejšie patria Histogram... Korelačný diagram... Krabicový diagram. Pravdepodobnostný diagram... Normálový diagram atď...... 14

4 Vizualizácie Slovenské príslovie hovorí, že lepšie raz vidieť než stokrát počuť. Podobne to platí aj pre písaný text. Ľudský mozog a jeho pamäť spracúva obrázky oveľa rýchlejšie a lepšie ako text a hovorené slovo [9]. Preto sa analytici veľkých dát snažia výstupy svojej práce prezentovať práve vizuálne. V predošlej kapitole sme taktiež prezentovali, že grafické techniky sú pri analýze veľmi užitočné, teraz je potreba zabezpečiť, aby boli vykonávané správne. Našim cieľom vždy musí byť, aby vizualizácia bola v prvom rade informatívna. Kľúčom k úspechu je, aby nám poskytla čo najviac informácii, ktoré potrebujeme vedieť, a ak sa to pomocou nej nepodarí, zlyhala v tom, k čomu bola určená. To dosiahneme, keď sa budeme snažiť ju spraviť čo najviac efektívnu. Vizualizácia nám musí odovzdať určitú správu, a prístup k nej musí byť čo najpriamejší bez toho aby sme vynechali niečo podstatné. Ďalším dôležitým prístupom ako dosiahnuť efektivitu je nesnažiť sa do výsledku zapojiť čo najviac informácii. Vizualizácia musí byť priama a jasná, ak podľahneme pokušeniu a budeme chcieť zobraziť všetko naraz do jednej vizualizácie, výsledkom bude zmätok. Pre užívateľa bude náročnejšie sa v zobrazení vyznať a bude mu dlhšie trvať nájsť čo potrebuje, alebo pochopiť, o čo sa vlastne jedná. Preto pre dosiahnutie efektivity chceme pracovať skutočne len s relevantnými informáciami a ostatné, aj keď sa môžu zdať zaujímavé, ak nie sú predmetom analýzy, tvoria len šum. V neposlednom rade, naša vizualizácia musí byť estetická. Keď už vieme čo sa snažíme vizualizovať, musíme to prezentovať tak, aby to pomáhalo navigovať čitateľa a ten dospel rýchlejšie k záveru. Pri konštrukcii vizualizácie je podstatným momentom voľba parametrov ako sú farba, veľkosť, pozícia a podobne, ktoré slúžia ako návod. Správna voľba parametrov nielenže prispieva aj k estetickému zážitku, ale najmä pomáha v reprezentovaní informácii, ktoré chceme ukázať. Pomocou parametrov 15

zvýrazňujeme, čo je dôležité a tým ukazujeme na čo sa sústrediť a aj v akom poradí [10]. Nasledujúca časť práce sa konceptom opiera o myšlienky z knihy Visual Insights a je v priebehu kapitoly citovaná na viacerých miestach [11]. Micro / Meso / Macro Nielen v rámci vizualizácii, ale aj celej analýzy môžeme rozdeliť analytické postupy do troch stupňov, podľa toho, ako veľa informácii spracúvajú. micro meso macro Level micro, ktorý je označovaný aj ako individuálny level pozostáva z malých množín dát typicky medzi 1 až 100 záznamami. Môže sa jednať o osobu a jej priateľov, rodinu, alebo malú firmu. Meso level, označovaný aj ako skupinový, obsahuje od 101 do 10,000 záznamov. Príkladom môže byť celá univerzita, alebo celá jedna téma výskumu. A posledný, najvyšší level macro, ináč nazývaný aj globálny, alebo populačný, ktorého záznamy prevyšujú 10,000 položiek a môže obsahovať dáta napríklad o celej krajine, alebo o celej jednej vednej disciplíne. Analýza na micro úrovni často nevyžaduje náročné výpočty a často je možné túto analýzu vykonať len pomocou pera a papiera. Meso analýza je svojou kapacitou náročnejšia na výpočty a musí byť vykonávaná už počítačom. A macro analýza je často objemom svojich dát náročná natoľko, že výpočty musia byť vykonávané superpočítačmi. Toto je level analýzy, ktorý sa skutočne zaoberá veľkými dátami. Jednou z najdôležitejších častí pochopenia dát je identifikovať otázku, ktorú chceme s analýzou zodpovedať. Čím je otázka špecifickejšia, tým je analýza jasnejšia a o to lepšia bude vizualizácia. Podľa toho čo chceme zistiť, tak podľa 16

toho kladieme otázky, následne získavame adekvátne dáta a n atých dátach robíme vizualizácie odpovedajúce našim otázkam. Podľa toho môžeme mať vizualizáciu časových dát (Temporal), ktorá odpovedá na otázky typu KEDY?, Geopriestorových dát (Geospatial) a otázky typu KDE? Tematických dát (Topical) a otázky typu ČO? Alebo sieťových dát (Network) a otázky typu S KÝM? A tak ďalej. Niekedy môže projekt hľadať odpovede na viaceré otázky zároveň. Napríklad ak je zadaním vizualizovať tematickú evolúciu fyzického výskumu za posledných 100 rokov, na mieste sú tematické, ale aj časové otázky. Proces vizualizácie Prvým krokom je zistiť aké požiadavky majú zúčastnené strany a čo od nás požadujú. Keď presne vieme čo je predmetom záujmu a aké otázky potrebujú byť zodpovedané, môžeme určiť typ a level analýzy. Potom pri analýze a vizualizácii nasledujeme nasledujúci proces: Acquire -> Parse > Filter > Mine > Represent > Refine -> Interact [12]. Na začiatok musíme získať adekvátne a čo možno najkvalitnejšie a najrelevantnejšie dáta. Kvalita a množstvo dát závisí od dostupného času a rozpočtu. Dáta môžu byť spravidla získané od zúčastnených strán, ale môžu byť aj zakúpené od hlavných poskytovateľov, získané z open-source poskytovateľov, alebo získané pomocou vlastných zdrojov. Dáta sú typicky uložené v textovom formáte, v tabuľkovom formáte, alebo sú uložené v databáze. Dáta môžu vyžadovať údržbu pred tým ako sa začnú analyzovať, aby sme si boli istý, že všetky dáta majú konzistentný formát. Ak používame dáta z viacerých zdrojov, je možné, že bude potreba prekonvertovať určité jednotky. Napríklad Európske a Americké dáta sa môžu rozlišovať v metrickom systéme, alebo v spôsobe zápisu dátumu a času, taktiež je možné, že bude potreba prekonvertovať meny, alebo ak sú dáta zozbierané v rámci širokej geografickej oblasti, možno bude potrebné upraviť časové zóny. Po upravení dát do požadovanej podoby a po iniciálnom zanalyzovaní vieme 17

s akými dátami pracujeme. Teraz musíme vyfiltrovať nepoužiteľné dáta, poškodené, outlinery a podobne, aby sme mali čisté a konzistentné dáta. Po tom ako to dosiahneme, zvolíme vhodnú vizualizáciu na reprezentáciu našich dát. Dáta zasadíme do vizualizácie a následne ich zakódujeme rôznymi parametrami pre efektivitu zobrazenia. Doplníme legendu, titulky a všetko dôležité pre sprehľadnenie. Na záver prezentujeme výsledok a ponúkneme možnosť interakcie z vizualizáciou. Zviditeľňovanie jednotlivých prvkov, zväčšovanie, zmena farby, zoom, výber premenných, to všetko umožní človekovi, ktorý pracuje z vizualizáciou vylepšiť jeho dojem. Ohodnotenie Z dôvodu prehľadnosti vizualizácie je potrebné v rámci výsledného grafu rozlíšiť rôzne dáta a ich vlastnosti preto sa využívajú rôzne grafické premenné, medzi ktoré patrí pozícia, forma, farba, textúra a optika. Pozícia (Kvantitatívna) spravidla zahŕňa x-ovú a y-ovú a niekedy aj z- ovú súradnicu ak sa jedná o trojrozmernú vizualizáciu. Formou rozlišujeme najmä veľkosti (kvantitatívna), tvary (Kvalitatívna) a pozície (kvalitatívna). Premenná farba zavádza atribúty hodnoty-svetlosť (kvantitatívna), odtieňa (kvalitatívna) a sýtosti (kvantitatívna). Atribúty textúry (kvantitatívna) sú napríklad vzor, rotácia, hrubosť, veľkosť. A optika (kvalitatívna) zahŕňa napríklad tienenie, priehľadnosť. Color Farba je pravdepodobne najvyužívanejšia premenná, ktorou sú vo vizualizáciách zakódované dáta. Zo všetkých možných je práve farebné rozlišovanie jednotlivých premenných najintuitívnejšie a najrýchlejšie. Tri základné rozlišovacie charakteristiky farby sú: Value v preklade znamená hodnota farby, poznáme ju ale skôr pod názvom brightness jas. Jas je v podstate svetlosť, alebo tmavosť danej farby. Rovná sa množstve svetla, ktoré vyžaruje dáky zdroj, alebo ktoré 18

sa odráža od iného objektu. Hodnota je definovaná na osy, ktorá ide od najsvetlejšieho bodu, po najtmavší. Pre jasné odlíšenie dvoch premenných vizualizácie je potreba určiť správny kontrast medzi dvomi použitými hodnotami farby na zakódovanie týchto dvoch premenných. Pri slabom kontraste môže byť ťažko rozlíšiteľné, že dve premenné sú skutočne rôzne. Užitočné je si vizualizáciu previesť na čiernobielo a potvrdiť si tak, že dve použité hodnoty sú skutočne odlišné. Hue alebo odtieň, je vlnová dĺžka svetla jednotlivej farby. Jedná sa o kvalitatívnu premennú. Odtieň odkazuje na spektrum farieb, ktoré môžeme familiárne označiť ako názvy farieb. Každý odtieň je možné vytvoriť kombináciou troch primárnych farieb napr. červená, zelená, modrá [13]. Typicky vie človek vymenovať približne 12 rôznych farieb, preto sa pri vizualizáciách neodporúča používať viac. V prípade, že by si to samotná vizualizácia vyžadovala, je potrebné veľmi dôsledne vybrať farby a rôzne premenné, ktoré sa vyskytujú v rámci vizualizácie pri sebe, treba ohodnotiť tak, aby ich farby nemali podobný odtieň. Opäť je užitočné vytvoriť čiernobielu verziu a na nej skontrolovať, či sú dve rôzne farby jednoducho rozlíšiteľné. Saturation je to sýtosť danej farby. Je to stupeň intenzity svetla vo farbe, siahajúci od úplne tlmeného po najsvetlejšie. Najsýtejšie farby budú pre diváka vynikať do popredia, zatiaľ čo farby bez sýtosti sa budú zdať fádne a menej viditeľné a môžu divákovi splývať s pozadím. Farebné schémy Vo vizualizáciách, ktoré sa opierajú o farebné kódovanie dát sa používajú štyri základné farebné schémy. Binárna využíva len dve farby. Najčastejšie čierna-biela, alebo červenázelená, žltá-modrá. 19

Bipolárna v angličtine nazvaná diverging je kvantitatívna schéma, pri ktorej je dôraz kladený na vysoké a nízke hodnoty. Hodnoty vyskytujúce sa v strede sa typicky označujú čiernou alebo bielu farbou. Používa sa napríklad pri zobrazení čísel, kde zelené sú kladné hodnoty a červené sú záporné. Sekvenčná je taktiež kvantitatívna. Využíva odtiene jednej farby a je najvhodnejšia na zoradené dáta od najmenších po najväčšie, pričom nízkym hodnotám sa priraďujú svetle odtiene a vysokým hodnotám tmavé. Kvalitatívna využíva sa pri nominálnych, alebo kategorických dátach a typicky je každá hodnota zakódovaná inou farbou. Nie je ňou možné znázorniť postupnosť, preto nie je vhodná na označovanie kvantitatívnych hodnôt. Pri vyberaní farieb pre vizualizáciu môže zohrávať veľkú úlohu aj fakt, či bude výsledok jednoducho čitateľný aj pre ľudí s farbosleposťou alebo zníženým farbocitom. Ak je dôležité vo výsledku zohľadniť aj tento fakt, treba dbať ohľad na rôzne poruchy vnímania farby a najať odborníka, alebo testovať výsledok na ľuďoch s takými druhmi porúch, ktoré sú kľúčové pre záujmovú skupinu vizualizácie. Existujú 4 druhy stupnice dát. Categorical kategorická, alebo nazývaná aj nominálna je kvantitatívneho typu. Kategórie sa neprekrývajú ako napríklad slová, alebo čísla tvoriace mená ľudí, alebo názvy miest, vecí, alebo udalostí. Ordinal kvalitatívna škála, kde sa dáta ukazujú v postupnosti, alebo sú ohodnotené. Napríklad dni v týždni, alebo výsledková listina. Taktiež sa sem môže zaradiť ohodnotenie od veľmi dobre po veľmi zle. Interval kvantitatívna škála pre ohodnotené dáta, kde vzdialenosť medzi každými dvomi hodnotami, alebo intervalmi je rovnaká a kde je zahrnutý nulový bod. Patrí sem napríklad Celziova stupnica teploty, alebo určenie času v hodinách. 20

Ratio alebo proporciová škála je kvantitatívneho typu, ktorá reprezentuje hodnoty zoradené do postupnosti, ako výška, alebo šírka. V ratio škále existuje dôležitý nulový bod. Pre správne sprehľadnenie vizualizácie je potrebné správne zakomponovať typy grafickej premennej a škálovací typ premennej. Napríklad kategorická premenná povolanie môže byť zakódovaná farebným odtieňom, ktorý patrí ku kategorickým a kvalitatívnym a naopak pohlavie by nemalo byť kódované kvantitatívnymi premennými ako sýtosť farby. Temporal Data Analýzou časových dát sa snažíme odpovedať na otázky typu KEDY? Tieto dáta boli zozbierané v určitom časovom rozmedzí a zachytávajú vývin udalostí v tomto období. Dôležitou časťou pri vizualizácii dát časového charakteru sú trendy. Jedná sa o štyri základné tendencie v časovom období, ktorých môžu dáta dosahovať. Dáta môžu byť rastúcej, alebo klesajúcej tendencie, môžu byť stabilné, teda nadobúdať rovnakej hodnoty po celé časové rozmedzie, alebo môže dosahovať sezónnych cyklov, poklesov a rastov ako napríklad pri ročných teplotných zmenách. Časové dáta je možné reprezentovať viacerými spôsobmi, medzi najefektívnejšie patria line graphs, ktoré ukazujú trendy v určitom časovom období, stacked graphs, temporal bar graphs, scatter plots a histogramy. Jedným z bežných aspektov časových dát a ich vizualizácie je sezónna štruktúra zozbieraných údajov. Príkladom môže byť nárast chrípkových ochorení v zimných mesiacoch. Ak by sme robili analýzu počtu ochorení v letných mesiacoch, výsledok by sa mohol javiť ako konštantná krivka, bez výrazných rozdielov, ale ak by sa rozšírilo časové obdobie našej analýzy na niekoľko rokov, výsledok a s ním aj vizualizácia by sa zmenila a boli by viditeľné jasné sezónne výkyvy, ktoré by ukazovali že konštantná funkcia vždy v zimných mesiacoch narastie a potom v letných mesiacoch sa ustáli. 21

Pri časových dátach hrá veľkú úlohu korelácia. Korelácia predstavuje vlastnosť, ako sa dve premenné navzájom ovplyvňujú. V prípade že sa jedna veličina mení v priebehu určitého časového obdobia, ako veľmi je pravdepodobné, že aj druhá premenná sa bude meniť v rámci toho istého časového obdobia. Geopriestorové vizualizácie Geovizualizácie pracujú z dátami, ktoré sú naviazané na určitú geografickú polohu a tvorbou danej vizualizácie sa snažíme odpovedať na otázku typu KDE? S týmto typom vizualizácie sa stretávame možno najčastejšie, keďže sa vyskytuje napríklad v počasí, alebo v prehľade výsledkov politických volieb. Identifikujeme si 6 druhov možných máp, s ktorými sa môžeme stretnúť: Proporčné symbol mapy (Proportional symbol map) jedna z najpoužívanejších tematických máp. Zobrazuje body na mape, a tieto body sú zakódované určitým symbolom a farbou na základe hodnoty, ktorú toto miesto na mape reprezentuje. Tento symbol môže byť kruh, štvorec, kocka atď [14]. Bod na mape teda prezentuje určitú geografickú lokáciu ako napríklad, mesto, alebo krajina a symbolom je rezprezentovaná určitá hodnota, napríklad nezamestnanosť v jednotlivých okresoch na Slovensku. Podľa hodnoty sa odvíja veľkosť a farba symbolu. Choropletové mapy (Choropleth map) sú to tematické mapy, ktoré sa používajú, keď chceme zobraziť dáta spojené s určitými oblasťami (kraje, okresy, štáty) a keď chceme zobraziť priemery a pomery na danú oblasť, nie konkrétnu hodnotu. Typickým použitím je hustota obyvateľstva na meter štvorcový [15]. Jednotlivé hodnoty sú reprezentované rôznymi odtieňmi farby rozdelenými podľa veľkosti. Teplotné mapy Isopleth (Heat map) reprezentujú jednotlivé hodnoty asociované na lokalitu v mape určitou farbou farebného 22

spektra [16]. Príkladom môže byť reprezentácia pravdepodobnosť seizmickej aktivity na mape sveta, kde oblasti s vysokou seizmickou aktivitou sú zobrazené červenou farbou a miesta s malou pravdepodobnosťou sú zobrazené modro. Kartogramy Kartogram je mapa rozdelená na jednotlivé územné celky, do ktorých sú plošným spôsobom znázornené štatistické dáta. Tieto územné celky sú následné deformované na základe hodnoty, ktorú reprezentujú, takže napríklad geografická oblasť, ktorá predstavuje väčšiu hodnotu je priestorovo zväčšená na úkor oblasti s menšou hodnotou [17]. Flow mapy - používajú sa na zobrazenie pohybu objektov v rámci geo máp z jednej lokácie do druhej pomocou spojov a hrán. Výhodou flow máp je, že môžu spojiť jednotlivé hrany a tým zlepšiť čitateľnosť [18]. Jednotlivé spoje v rámci geografickej mapy môžu predstavovať napríklad spoluprácu medzi krajinami, alebo výmenný tok surovín. Jednotlivé spoje môžu byť zakódované šírkou, podľa toho aký má konkrétny tok kapacitu, alebo akou rýchlosťou v ňom ide prúd. Space-time cube mapy ukazujú pohyb v priestore v určitý čas použitím vrstiev, ktoré sú typicky zoradené od najspodnejšej po najvrchnejšiu. Atribúty dát sú vizuálne zakódované v každej vrstve a tým ukazujú geografické aj časové elementy dát. 23

Tematické vizualizácie Príprava dát Analýza tematických dát (topical data) je často uskutočňovaná na všetkých vývojových stupňoch analýzy. Od mikroanalýzy, kde môže byť cieľom jeden krátky dokument, alebo študentská práca, až po celú históriu vývoja jednej vedeckej disciplíny s analýzou na makro úrovni. Hlavným cieľom tematickej analýzy je text. Jedná sa o sekvenciu písaných, alebo alternatívne aj hovorených slov, takže napríklad celý text knihy, email alebo správa. Často sa ale nejedná len o jeden kus textu, ale o celú sériu, ako napríklad všetky knihy vydané v mesiaci január 2014, alebo všetky emaily napísané od jedného zamestnanca firmy. Jedným z cieľov tematickej analýzy je aj identifikovať témy v neštruktúrovanom texte, či už identifikáciou podstatných mien a fráz, ktoré sa skutočne vyskytujú v texte, alebo identifikáciou latentných výrazov. Pri analýze textu je obzvlášť dôležitá fáza prípravy dát. Dáta sú spravidla vo forme textu, ale môžu byť aj ako zvuková nahrávka, alebo video, v tom prípade je ich potrebné najprv preformátovať do textového formátu. Následne úlohou môže byť analýza veľkého množstva neštruktúrovaného textu z rôznych zdrojov, čo by sa vo výsledku mohlo miešať a pôsobiť rušivo. Preto je podstatné upraviť kompletne celý text do jednotného tvaru, ktorý so bude vo výsledku správať rovnako. Prvým krokom je odstránenie stop slov. Stop slová sú také, ktoré sú bežné v danom jazyku a teda sa vyskytujú veľmi často texte. V anglickom jazyku sú to určite členy a, an, the a taktiež tam určite patrí slovo and. V slovenčine sa jedná o slová a, aj, ale, alebo atď. Tento krok má veľký zmysel, pretože ak by sme analyzovali akýkoľvek text, tieto slová budú vždy patriť medzi najčastejšie sa vyskytujúce, takže vo výsledok analýzy by nemal žiadnu informačnú hodnotu. Keby sme chceli analyzovať najpoužívanejšie slová vo vedeckých publikáciách určitej vednej disciplíny, určite by nás nezaujímalo, 24

že slovo že je na prvom mieste. Z toho dôvodu je potrebné ako prvé odstrániť stop slová z textu. Ďalším dôležitým krokom prípravy na analýzu je tzv. stemming. Jedná sa o zredukovanie slov na ich pôvodný, koreňový tvar stem. Ak máme v anglickom texte slová player, playing, plays, proces stemmingu ich všetky zredukuje na tvar play. Takže vo výsledku sa všetky variácie výskytu určitého slova play namapujú na jeden výraz, čím sa zmenší počet slov a teda množstvo textu na analýzu. V prípade, že by sme mali v texte rovnako často sa vyskytujúce slová hráčka a hráčky a vynechali by sme tento krok, vo výsledku by sa zanalyzovali ako dve rôzne slová, aj keď v kontexte by sme chceli aby to bralo ako slovo jedno a teda nedospeli by sme k správnemu výsledku. Dobrým zvykom je aj zmeniť veľké začiatočné písmená na malé lower case, alebo zadať parametre analýzy tak, aby slovo Hlava, ktoré je na začiatku vety, bolo brané rovnako ako hlava, ktoré je uprostred. A na druhú stranu je zase potrebné rozlíšiť vlastné podstatné mená, ako napríklad mená osôb, alebo miest, ktoré začínajú veľkým písmenom. V tom prípade priezvisko Hlava znamená niečo iné a malo by sa k nemu pristupovať oddelene. Toto sú všetko faktory, ktoré závisia od obsahu zdroja textu a od toho, či je to relevantné k výsledku analýzy a závisí od analytika, ako k tomu bude pristupovať. Pri tematickej analýze textu môže byť veľmi dôležité brať v úvahu synonymá a homonymá. V texte sa bude vyskytovať veľa slov, ktorá má rovnaký, alebo podobný význam, ale pritom sú to úplne iné slová. V tom prípade je na samotnom analytikovi aby si rozhodol, či si analýza vyžaduje dané synonymá nehať rozlíšené, alebo či v kontexte je možné ich mapovať do jedného rovnakého slova. Horšie je to v prípade, keď sa v texte vyskytuje jedno slovo viac krát a pritom má rôzny význam. V tom prípade si už vyžaduje analýza, aby sa tieto dva slová, ktoré sa rovnako píšu, ale majú iný význam, rozlíšili na základe kontextu v ktorom boli v texte použité. To už vyžaduje hlbšiu kontextovú analýzu. 25

Po absolvovaní týchto krokov prípravy dát máme normalizovaný text, ktorý je ďaleko prehľadnejší a konštruktívnejší ako pôvodný text a je pripravený na analýzu. Vizualizácia textových dát Ako pri iných, tak aj pri tematickej analýze je možné výsledok reprezentovať rôznymi formami vizualizácie. Vizualizáciu textu môžeme zasadiť do geografického priestoru. Napríklad ak je cieľom analýzy zistiť výskyt určitej tému, alebo výrazu v určitých geografických regiónoch. Z textu môžeme vytvoriť sieťový graf. Slová predstavujú vrcholy a hrany sú určité vzťahy, ktoré spájajú jednotlivé slová v kontexte. Word Clouds (Slovné obláčiky pravdepodobne najvyskytovanejšia reprezentácia textu vizualizáciou. Word Clouds Jedná sa o veľmi intuitívnu reprezentáciu textu. Po vykonaní prípravy a následne samotnej analýzy, dostaneme zoznam slov s tým, že každé slovo má priradenú váhu, ktorá je reprezentovaná počtom výskytov slova v texte. Pri vizualizácii sú jednotlivé slová zobrazené do tvaru, ktorý pripomína oblak. Slovám s najväčšou váhou je priradený najväčší font a začínajú sa vykresľovať ako prvé. Vykresľovanie začína teda najväčšími slovami a stratégia umiestňovania slov je určovaná randomizovaným hladným algoritmom, pri ktorom sú slová umiestňované jedno po druhom a keď už je slovo umiestnené, jeho pozícia sa nemení. Slová sa začínajú umiestňovať v okolí horizontálneho stredu zobrazovacej plochy. Menšie slová sa potom vykresľujú tak, aby vyplnili celý priestor, ktorý je k dispozícii. 26

Obr 4.1: Word Cloud vytvorený nástrojom Wordle Na obrázku 4.1 môžeme vidieť vizualizáciu textu pomocou reprezentácie word cloud. Jedná sa o analýzu textu knihy Hobit od autora J.R.R. Tolkiena. Na obrázku 4.2 vidíme vizualizáciu rovnakého textu, v tomto prípade ale neboli odstránené stop slová zo zdroju a to sa prejavilo tak, že slová a a the sú najviac vyskytujúce sa v texte a teda najväčšie vo vizualizácii. Táto analýza nemá voči prvému príkladu žiadnu výpovednú hodnotu. Na prvom obrázku je možné aj pre človeka, ktorý s knihou a jej témou neprišiel nikdy do styku vyčítať, kto sú hlavné postavy a aké sú tam hlavné témy. Z druhého obrázku sa čitateľ nedozvie nič. 27

Obr 4.2: Word Cloud vytvorený nástrojom worditout Wordle Populárnym nástrojom na tvorbu word cloudov je webový nástroj Wordle, ktorý je implementovaný ako Java applet. Stačí skopírovať text, ale zadať URL adresu, ktorá odkazuje na textový zdroj. Wordle poskytuje rôzne možné nastavenia výslednej vizualizácie. Od prednastavených farebných paliet pre zobrazenie slov, alebo možnosť vytvoriť si vlastnú. Taktiež obsahuje rôzne fonty a umožňuje rozličné rozmiestnenie slov vo vizualizácii. Obsahuje aj zoznam stop slov pre viacero jazykov, dokonca aj Český a Slovenský a umožňuje túto analýzu povoliť alebo vynechať. Nakoniec umožňuje exportovať výslednú vizualizáciu vo formáte.png. 28

Sieťové Vizualizácie Sieťové dáta sú vo vizualizáciách zobrazené grafmi. Predtým ako môžeme začať analyzovať dáta sieťového charakteru a pracovať s ich vizualizáciami, je potreba si definovať niektoré základné pojmy teórie grafov. Graf je to usporiadaná dvojica G = (V,E) taká, kde V je množina vrcholov grafu a E je množina hrán, teda množina vybraných dvojprvkových podmnožín množiny vrcholov. Hranu medzi vrcholmi u a v zapíšeme ako {u,v} alebo zjednodušene ako uv. Vrcholy, ktoré sú spojené hranou sa nazývajú susedné. Na množinu vrcholov grafu G odkazujeme ako na V(G) a na množinu hrán E(G)[]. Podľa definície môže byť medzi každou dvojicou vrcholov najviac jedna hrana, preto definujeme Multigraf graf, ktorý nahradzuje množinu hrán multimnožinou, ktorá smie obsahovať násobné prvky a umožňuje aj existenciu slučiek, čo sú hrany ktoré spájajú vrchol sám so sebou. [4] Kružnica kružnica dĺžky n je graf, ktorý má n 3 vrcholov spojených do jedného cyklu n hranami. Bipartitný graf graf, ktorého vrcholy sú rozdelené do dvoch množín tak, že z každého vrcholu jednej množiny môže viesť hrana len do vrcholov druhej množiny a naopak [21]. Cesta cesta dĺžky n má n+1 vrcholov spojených za sebou n hranami. V grafom nás určite často zaujíma, koľko má daný vrchol susedov. Počet hrán vychádzajúcich z vrcholu v nazývame stupňom vrcholu. Orientovaný graf je usporiadaná dvojica G = (V,E), kde E V V. Hrany orientovaného grafu sú teda usporiadané dvojice. Hrana (u,v) v orientovanom grafe G začína vo vrchole u a končí vo vrchole v. Keď v orientovanom grafe vedie cesta z u do v neznamená, že existuje aj opačná hrana, ktorá by viedla z v do u. Často sa zvykne priradiť hranám, alebo vrcholom číslo. Priradenie 29

prvkov množiny vrcholom, alebo hranám nazývame ohodnotením. V prípade neohodnoteného grafu je hodnota všetkých vrcholov a hrán rovnaká. Bežným príkladom grafu je sieť dopravných ciest. V takomto prípade sú vrcholy miesta a hrany cesty medzi týmito cestami. Ohodnotením hrán určujeme vzdialenosť medzi jednotlivými miestami a orientácia hrán určuje smer cesty, kde vo väčšine prípadoch sa jedná o obojsmernú, ale existujú aj jednosmerné cesty. Takáto sieť ciest je aj multigrafom, pretože medzi dvoma uzlami môžu viesť dve rôzne cesty, rôznej dĺžky. V rámci predprípravy na analýzu a s ňou spojenú vizualizáciu, je často potrebné spraviť úpravy dát, pre sprehľadnenie vizualizácie a odľahčenie výpočtov od redundantných informácii. V závislosti od toho čo je cieľom vizualizácie, môže byť potrebné odstrániť izolované vrcholy grafu, ale slučky nad jedným vrcholom. Niekedy môže byť efektívne spojiť dva grafy do jedného a vytvoriť multigraf. Napríklad v prípade, keď máme dva grafy s rovnakou množinou vrcholov, ale v každom je iná množina hrán, napríklad sociálne a pracovné vzťahy medzi osobami. Pri vizualizácii môžeme použiť rôzne alternatívy rozloženia grafu pre najväčšiu prehľadnosť a efektivitu samotnej vizualizácie. Závisí to aj od výsledku, ktorý sa snažíme dosiahnuť, motiváciou je ale aby boli vrcholy čo najlepšie rozložené a neprekrývali sa a taktiež je efektívne čo najviac sa vyhnúť pretínaniu hrán. Podľa toho čo chceme zistiť danou vizualizáciu, musíme vhodne zvoliť vhodné rozloženie: Náhodné toto rozloženie berie do úvahy celú plochu, ktorú má k dispozícii a priradí každému vrcholu náhodnú x-ovú a y-ovú súradnicu. Toto rozloženie je rýchle, avšak nie je možné odhadnúť štruktúru siete. Slúži ale dobre keď je potreba predstava o veľkosti, robustnosti a hustote siete. Kruhové do priestoru je vypočítaný kruh, do ktorého sú zasadené vrcholy grafu, zohľadňujúc aj veľkosť jednotlivých vrcholov, ktorou sú vykresľované. Všetky vrcholy sú umiestnené výhradne na kružnici. Poradie v ktorom sú 30

uložené jednotlivé vrcholy na kružnici si určujeme podľa našich preferencii. Môžeme zvoliť alternatívu podľa abecedného poradia vrcholov, alebo podľa vlastnosti vrcholov, ktoré môžu zohrávať úlohu (napr. stupeň vrcholu), podľa podobnosti vrcholov, alebo podľa hustoty spojenia, pri čom najviac prepojené vrcholy sa umiestňujú k sebe. Toto rozloženie je opäť pomerne rýchle na výpočet, ale oproti náhodnému zaberie viac času a priestoru, pretože sa musia ešte aj vypočítavať atribúty jednotlivých vrcholov, kvôli rozloženiu po kružnici. Kruhové rozloženie so špecifickým poradím vrcholov môže mať veľkú informatívnu hodnotu. Force directed (Silne orientované) rozloženie je postavené na základe spoločných vlastností a vzťahov medzi jednotlivými uzlami. Je vypočítaná pozícia pre vrcholy v rámci grafu tak, aby tie so spoločnými vlastnosťami boli zobrazené v priestore blízko pri sebe. Príkladom takejto vizualizácie bola aplikácia od Facebooku, ktorá existovala pred niekoľkými rokmi, ktorá utvorila graf priateľov užívateľa. Vrcholmi grafu boli všetci priatelia daného užívateľa a hrany medzi nimi znamenali, že užívatelia sú priatelia na Facebooku. Graf bol následne vizuálne rozdelený tak, aby užívatelia ktorý, majú väčší počet spoločných priateľov boli pri sebe. Bohužiaľ kvôli zmene súkromných pravidiel na Facebooku, už túto vizualizáciu nie je možné vyskúšať. Toto rozloženie je náročné na výpočet, pretože sa musia preskúmať všetky dvojice vrcholov a optimalizácia sa vypočítava iteratívne. Bipartitné zdrojom pre bipartitné grafy sú dve množiny uzlov dvoch rôznych typov. 31

Stromové vizualizácie Les je to jednoduchý graf bez kružníc. Strom je to jednoduchý súvislý graf bez kružníc. Znamená to teda, že les je akýkoľvek graf, v ktorom sa nenachádza žiaden cyklus. Pre strom platí to isté, ale s obmedzením, že ho tvorí len jeden komponent súvislosti. Koreňový strom je to strom T, spolu s vyznačeným vrcholom r, r V(T). Skrátene to zapisujeme T,r. Majme koreňový strom T,r a v ňom vrchol v. Ak má vrchol v suseda označeného ako vrchol u na ceste od koreňa, tak vrchol v sa nazýva rodičom vrcholu u a u sa nazýva potomkom v. Koreň nemá žiadneho rodiča. Vrchol stupňa 1, ináč povedané vrchol, ktorý nemá žiadnych potomkov, sa nazýva listom. Základom vizualizácie stromových dát je určiť a vypočítať layout stromu, teda jeho rozloženie a spôsob akým bude reprezentovaný. Strom totižto nemusíme vizualizovať len klasickým štýlom, pri ktorom je koreň na vrchu, respektíve na spodu a jeho potomkovia klesajú respektíve stúpajú smerom od koreňa. Okrem klasického zobrazenia môžu byť stromové dáta zobrazené aj kruhovým, radiálnym, balónovým, alebo treemapovým layoutom. Radial Layout Pri tomto rozložení je koreň umiestnený do stredu grafu a jeho potomkovia sú umiestnený do koncentrických kruhov okolo koreňového vrcholu. Potomkovia sú rovnomerne rozložení po týchto kruhoch a jednotlivé vetvy stromu sa na nich neprekrývajú. Z toho dôvodu algoritmus musí brať v úvahu počet potomkov, aby efektívne rozložil graf. V prvom rade sa zanalyzuje štruktúra stromu a vypočíta sa veľkosť najväčšieho kruhu, na ktorom budú umiestnené uzly z poslednej vrstvy stromu. Vzdialenosť medzi jednotlivými kruhmi sa rovná polomeru 32

najväčšieho kruhu vydelené hĺbkou stromu, teda počtom kruhov. Koreňový uzol sa umiestni do stredu a na prvý kruh sa umiestnia priami potomkovia koreňa, tak aby bola medzi nimi na kružnici rovnaká vzdialenosť. Na vypočítanie umiestnenia uzlov na ďalších vrstvách je najprv potrebné vypočítať dotyčnice vrcholov na 1. kružnici. Dotyčnica je vedená kolmo na uzol a jeho rodiča. Ďalej je nutné vypočítať Bisector line - rozdeľovaciu priamku, ktorá vymedzí priestor pre uzly na ďalšej kružnici tak, aby sa potomkovia neprekrývali. Rozdeľovacia priamka je vedená od koreňového uzly cez bod kde sa pretli dotyčnice. Rozmedzie pre umiestnenie potomkov na kružnici je vymedzené pre každý uzol rozdeľovacími priamkami. Potomkovia každého uzlu sú opäť rovnomerne rozdelené v rámci vymedzeného úseku kružnice. Tento proces sa potom rekurzívne vykonáva pre všetky uzly na každej vrstve, až po uzly s najväčšou hĺbkou, ktoré sú umiestnené na najväčšom kruhu. Treemap layout Aby sme mohli vizualizovať strom treemapovým rozložením, potrebujeme vedieť jeho štruktúru a veľkosť plochy, ktorú máme k dispozícii na vizualizáciu. Algoritmus vezme ako prvý koreň stromu a vytvorí preň obdĺžnik. Potom vezme počet jeho priamych potomkov a obdĺžnik rozdelí na toľko častí, kde každý pripadá jednému potomkovi. Jednotlivé časti sú veľkostne rozdelené, podľa hodnoty, ktorou je ohodnotený daný vrchol. Ak sa jedná o neohodnotený strom, jednotlivé časti sú rovnako veľké. Tento proces sa vykonáva rekurzívne pre všetky vrcholy, až pokiaľ sa neprejdú všetci potomkovia všetkých vrcholov. Treemap rozloženie stromových dát môže byť užitočné, lebo skutočne využije sto percent priestoru, ktorý máme k dispozícii k vizualizácii a je škálovateľný aj na množiny dát s miliónmi záznamov. Avšak nie sú až tak dobre intuitívne a vyžadujú si viac praxe na úspešné pochopenie zložitejšej vizualizácie. Taktiež je komplikované porovnávať veľkosť dvoch rôznych oblastí 33

a označenie vnútorných uzlov, alebo ich hodnôt. To by bolo možné, ale na úkor miesta pre vizualizáciu dát. A taktiež pri veľmi veľkom počte dát, sa čím ďalej tým viac jednotlivé oblasti zmenšujú, až na koniec pri listových uzloch môže byť komplikované pre užívateľa ich prečítať. Obr. 4.3: Vizualizácia časti stromu priečinku Program Files (x86) pomocou nástroja Sci 2 Tool 34

Obr. 4.4: Ten istý strom v Radial rozložení vytvorený pomocou Javascript knižnice d3.js Na obrázku 4.3 môžeme vidieť príklad vizualizácie stromových dát, klasickým stromovým zobrazením. Jedná sa o stromovú hierarchiu priečinku Program Files (x86), ktorá obsahuje obrovské množstvo vnútorných uzlov. Keď teda chceme zobraziť túto zložku klasickým stromom, šírka tohto stromu nám nedovolí prezerať si celý strom naraz a vizualizácia teda nie je efektívna. Vtedy môžeme použiť iné rozloženie stromu, ako na obrázku 4.4, ktorý predstavuje ten istý strom, ale iným rozložením. V rozumnom rozložení, už môžeme vidieť celý strom a máme tak lepší prehľad o veľkosti vstupných dát. Na obrázku 4.5 môžeme vidieť opäť reprezentáciu toho istého stromu, tento krát pomocou Tree Map rozloženia. Toto rozloženie využíva celý dostupný priestor na vizualizáciu a preto vidíme celý strom. Pomocou dynamickej vizualizácie, môžeme interagovať z jednotlivými uzlami a prezerať si tak celú hĺbku a šírku stromu v rámci toho istého vizuálneho okna. 35

Obr. 4.5:Strom zobrazený TreeMap rozložením, vytvorený pomocou nástroja TreeMap 36

Záver Cieľom tejto práce bolo zmapovať a otestovať metódy pre analýzu takzvaných veľkých dát, hlavne z pohľadu exploratívnej analýzy a interaktívnych vizualizácii. Na úvod som rozobral a popísal problematiku veľkých dát, aktuálnu situáciu tohoto problému a možnosť ako s veľkými dátami pracovať. V ďalšej kapitole sa zaoberám témou exploratívnej analýzy dát. Predstavujem tento typ analýzy ako alternatívu k zavedeným postupom, popisujem jej výhody a opisujem jej techniky aj s použitím príkladu. Následne sa obsiahlo venujem možnostiam vizualizácii dát, najmä z hľadiska rôznorodosti dát a predstavujem rôzne možnosti zobrazovania dát v rámci každej kategórie. Práca slúži ako úvod do problematiky veľkých dát a taktiež slúži ako odrazový mostík pre následné pokročilé vzdelávanie sa v téme exploratívnej analýzy. Zvyšok práce slúži ako návod k pristupovaniu k analýze a s ňou spojeným vizualizáciám a dodáva prehľad o rôznych technikách a nástrojoch. 37

Literatúra [1] HILLARD, R., MCCLOWRY, S., RINDLER, A. Defining Big Data [Online], aktualizácia 18.04.2013, [cit. 12.05.2015]. Dostupné na: < http://mike2.openmethodology.org/wiki/big_data_definition>. [2] HURWITZ, J. Big Data for Dummies, 1st ed. Indianapolis, Ind.: John Wiley & Sons, 2013. xxii, 311. ISBN 1118504224. [3] DOHNAL, V. Datová úložište. Študijné materiály predmetu PA152 [cit. 12.05.2015] [Online]. [4] SPOF [Online], Webopedia, [cit. 11.05.2015]. Dostupné na: <http://www.webopedia.com/term/s/spof.html>. [5] DEROOS, D., DEUTSCH, T., EATON, CH., LAPIS, G., ZIKOPOULOS, P. Understanding Big Data, Cenveo Publisher Services, 2012. ISBN 978-0-07-179053-6 [6] TUKEY, J.W. Exploratory Data Analysis, Addison-Wesley, 1977, ISBN 0-201-07616-0. OCLC 3058187. [7] FILLIBEN, J.J. HECKERT, A. Exploratory Data Analysis [online], [cit. 15.02.2015]. Dostupné z: <http://www.itl.nist.gov/div898/handbook/eda/eda.htm>. [8] SELTMAN, H.J. Experimental Design and Analysis [online], 2011 [cit. 15.02.2015]. Dostupné z: <http://www.stat.cmu.edu/~hseltman/309/book/book.pdf>. 38