Kapitola 2 Princíp analýzy údajov

Analýza údajov je pravdepodobne príliš všeobecný pojem. Existuje veľa druhov a foriem údajov, a potom i veľa účelov, prístupov a nástrojov na ich analýzu. Pri upresnení významu v kontexte našej publikácie sa nevyhneme ustálenému (no stále málo-hovoriaciemu) slovnému spojeniu dátová veda (angl. data science).

2.1 Pojem data science

Tento moderný termín (angl. buzzword) označuje interdisciplinárny odbor, ktorého cieľom je pochopiť skutočné javy na základe pozorovaných údajov. Zjednocuje dátové inžinierstvo a informatiku, matematiku so štatistikou, hĺbkovú analýzu údajov (data mining, DM), strojové učenie (machine learning, ML) a ďalšie súvisiace metódy.

Definícií je na svete samozrejme oveľa viac, často sa líšia podľa aplikačnej domény, na vytvorenie obrazu výborne poslúži napr. motivačné video ku študijnému programu Dátova veda na FMFI UK v Bratislave. Spoločnou črtou je všestrannosť: dátový analytik/vedec by mal mať schopnosti a znalosti z informatiky (programovanie, databázy, počítačová grafika, zložitosť algoritmov…), pokročilej matematiky (pre správne použitie existujúcich metód, pochopenie ich výstupov, vytvorenie vlastných metód v špecifických úlohách, rýchlu orientáciu v nových trendoch), základný prehľad z oblasti aplikácie a nakoniec aj tzv. soft skills (prezentácia výsledkov, tímová práca, kreativita a flexibilita).

Dáta, ktoré sú objektom dátovej vedy, zvyčajne tvorí súbor hodnôt množstevných (kvantitatívnych) aj akostných (kvalitatívnych) znakov nejakého objektu (alebo skupiny objektov). Získavajú sa pozorovaním, meraním, interakciou alebo simulovaním, môžu byť štrukturované (v tabuľkovej podobe) ale aj neštrukturované. S tým súvisí zásadný význam správneho predspracovania (angl. preprocessing) údajov, konkrétne

  • identifikácia znakov – je obzvlášť náročná pri neštrukturovaných dátach, veľmi závisí od konkrétnej aplikácie, napr. pri detekcii zneužitia kreditnej karty sú významnými znakmi výška sumy, frekvencia a miesto výberu,
  • čistenie od chybných, extrémalnych alebo chýbajúcich záznamov (niekedy je ich vhodnejšie odhadnúť než vymazať celý riadok aj s dobrými hodnotami),
  • výber relevantných znakov (v prípade veľkého množstva, ktoré by znemožnilo použitie preferovaných metód) či ich transformácia (napr. z numerických hodnôt na kategoriálne, prevod merných jednotiek).

Dobre štrukturované dáta sú už vhodné na vlastnú analýzu a modelovanie skrytých vzorov. Aggarwal (2015) spomína fundamentálne úlohy (tzv. super problems) hĺbkovej analýzy údajov, ktoré sú často a opakovane využívané ako stavebné bloky rôznych druhov metód. Sú to tieto štyri úlohy:

  • zhluková analýza (angl. cluster analysis) – na základe miery podobnosti hodnôt viacerých znakov zatrieďuje objekty do zhlukov, napr. k-means, hierarchical clustering,
  • klasifikácia – podobne ako zhluková anlýza, ale objekty trénovacieho súboru údajov majú príslušnosť ku jednej z tried vopred známu (tzv. supervised learning), napr. logistická regresia, rozhodovacie stromy, Naive Bayes, SVM,
  • asociačné pravidlá – hľadanie súvislostí v binárnej matici, napr. ak zákazník preferuje tovar A, B, C, na základe správania podobných zákazníkov má zmysel ponúknuť mu aj tovar D,
  • detekcia anomálií – identifikácia objektu/riadku datasetu s podozrivými pozorovaniami.

2.2 Pracovný postup

Základný postup pri práci (work flow) s dátami je stručne zhrnutý v nasledujúcich bodoch (pozri Obr. 2.1, podľa Wickham a Grolemund (2016) v kapitole Introduction):

  • import (zo súboru, databázy alebo web API) do tabuľky typu data frame,
  • čistenie, teda napr. úprava do tzv. long formátu (každá premenná má svoj stĺpec, každý riadok predstavuje pozorovanie),
  • transformácia, napr. zúženie výberu na dáta, ktoré nás zaujímajú; vytvorenie nových premenných (z existujúcich); výpočet súhrnov,
  • vizualizácia (najskôr „exploratory” – objavná, neskôr „explanatory” – vysvetľujúca) je základná ľudská aktivita; dobrá vizualizácia ukáže súvislosti, ktoré sme vôbec nečakali, prípadne podnieti ďalšie otázky,
  • modelovanie ako doplnok ku vizualizácii odpovedá na otázky o dátach (na rozdiel od vizualizácie však nemôže prekvapiť), napr. či je nejaká ich vlastnosť významná, alebo aké javy/hodnoty sú za určitých podmienok očakávateľné,
  • komunikácia, zdielanie poznatkov vhodnou formou.

Všetko je to popretkávané programovaním, bez znalosti ktorého by sme boli obmedzení dostupnosťou nástrojov – neschopní napr. automatizácie často opakovaných úkonov či riešenia špecifických úloh, a to najmä vo fáze prípravy dát (tzv. data wrangling, ktorá v praxi tvorí 80 – 90% práce DS/ML6 inžiniera, resp. analytického tímu).

Pracovný postup

Obrázok2.1: Pracovný postup

Nasledujúce kapitoly sa venujú všetkým aspektom data science okrem modelovania, sú však zoradené s ohľadom na didaktiku tak, aby udržali pozornosť a záujem študentov. Preto sa striedajú témy tvorby vizuálneho obsahu (ktoré sú viac obľúbené) s témami technickejšieho charakteru, priestor dostávajú najprv nástroje základného jazyka R a až potom nástroje súboru balíkov tidyverse (Wickham et al. 2019), a na koniec sú zaradené pokročilejšie témy - také, ktoré rozvíjajú programovacie zručnosti.

Literatúra

Aggarwal, Charu C. 2015. Data mining: the textbook. Springer.
Wickham, Hadley, Mara Averick, Jennifer Bryan, Winston Chang, Lucy D’Agostino McGowan, Romain François, Garrett Grolemund, et al. 2019. “Welcome to the Tidyverse”. Journal of Open Source Software 4 (43): 1686. https://doi.org/10.21105/joss.01686.
Wickham, Hadley, a Garrett Grolemund. 2016. R for Data Science: Import, Tidy, Transform, Visualize, and Model Data. 1st vyd. O’Reilly Media, Inc. https://r4ds.had.co.nz/.

  1. Data science / machine learning.↩︎