Každú úlohu strojového učenia začíname zoznámením sa so súborom údajov. Ak použijeme tabuľkové údaje, zaujíma nás, aké atribúty sa zobrazujú, aké majú hodnoty a či niektoré z nich môžu súvisieť. Keď pracujeme s inými typmi údajov, napríklad s textom, zvyčajne nás zaujíma, či sú všetky texty napísané v rovnakom jazyku a aké sú dlhé. Keďže žiadny súbor údajov nie je dokonalý, v analýze sa snažíme nájsť potenciálne duplikáty a niektoré atypické záznamy. Všetky tieto úlohy sa nazývajú prieskumná analýza súboru údajov . Prieskumná analýza údajov (EDA). Jeho cieľom je pomôcť nám prostredníctvom rôznorodého súboru úloh lepšie spoznať súbor údajov a informovanejšie prijímať ďalšie rozhodnutia týkajúce sa prípravy údajov. Vzhľadom na dôležitosť údajov v ďalších krokoch (spomeňte si na príslovie "odpadky pri vchode, odpadky pri výstupe") sa snažíme venovať dostatok času prieskumnej analýze datasetu a prejsť k ďalšiemu kroku až vtedy, keď sme si istí, že dátam rozumieme.

EDA

Prieskumné úlohy analýzy údajov

Analýza atribútov

Keďže atribúty sa používajú na opis širokej škály vlastností, ich typy a rozsahy hodnôt sa líšia. Dve veľké skupiny atribútov, s ktorými sa stretávame, sú numerické (kvantitatívne) a kategorické (kvalitatívne) atribúty. Číselné atribúty majú, ako už názov napovedá, číselné hodnoty. Takými sú napríklad výška hráča, vzdialenosť od letiska, počet domácich miláčikov, vonkajšia teplota, počet predaných zmrzlín, koncentrácia glukózy v krvi a mnoho ďalších. Pri týchto atribútoch sa zvyčajne pozeráme na rozsahy hodnôt, najvyššie a najnižšie hodnoty, priemernú hodnotu, medián, ako aj samotné rozdelenie. Všetky tieto analýzy nazývame  - deskriptívne analýzy,  pretože nám pomáhajú opísať veličinu, ku ktorej sa atribút spája.

Príklady niektorých popisných analýz atribútov súboru údajov Iris

Kategorické atribúty sú typom atribútu, ktorý môže mať konečnú množinu hodnôt. Takýmito atribútmi sú napríklad farba auta, typ oblečenia, pohlavie pacienta, aktuálne ročné obdobie a iné. Tieto atribúty sú zvyčajne reprezentované reťazcami alebo ekvivalentnými číselnými kódmi. Napríklad mesiac v roku môže byť uvedený ako názov "február" alebo ako číslo "dva" (pretože február je druhý mesiac v roku). Je dôležité poznamenať, že aj keď na vyjadrenie týchto atribútov používame číselné kódy, nemá zmysel počítať hodnoty ako priemer alebo maximum, pretože tieto hodnoty nie sú vo svojej podstate číselné. U nich zvyčajne analyzujeme, aké hodnoty môžu mať a ako často sa objavujú, a tieto závery ukazujeme pomocou grafov.

2.7

Príklad analýzy atribútu "rok" v súbore Titanic

Zjednotenie hodnôt

V priebehu analýzy údajov môžeme zistiť, že hodnoty atribútov nie sú jednotne nastavené. Napríklad názvy farieb môžu byť napísané nekonzistentne, niekedy malými a niekedy veľkými písmenami, alebo môžu byť dátumy uvedené v rôznych formátoch, ako napríklad deň-mesiac-rok a rok/mesiac/deň. Aby bolo možné správne vykonať úlohu analýzy, je žiaduce tieto hodnoty zjednotiť, t.j. Zredukujme ich na rovnaký spôsob reprezentácie. Zvyčajne existuje spôsob, ktorý je žiadanejší alebo užitočnejší, ale stáva sa aj to, že voľby sú úplne vyrovnané.

Chýbajúce hodnoty

Pri analýze súboru údajov si môžeme všimnúť, že chýbajú hodnoty niektorých atribútov. Môže to byť spôsobené nedbanlivosťou pri zadávaní údajov alebo jednoducho nedostupnosťou informácií. Takéto hodnoty v množine údajov sa nazývajú chýbajúce hodnoty.

Príklad množiny s chýbajúcimi hodnotami

Najjednoduchším krokom, ktorý môžeme urobiť, keď si všimneme chýbajúce hodnoty, je vymazať buď atribúty (stĺpce množiny údajov), alebo inštancie (typy množiny údajov), v ktorých sa vyskytujú. Ak napríklad nepoznáme hodnotu atribútu pre viac ako 50 % inštancií množiny údajov, má zmysel ho odstrániť. Ak naopak máme len niekoľko prípadov, v ktorých chýba hodnota atribútu, je najlepšie inštancie zmazať a atribút ponechať. Tieto rozhodnutia však nie sú vždy jednoduché. Môže sa napríklad stať, že v rôznych prípadoch chýbajú rôzne hodnoty atribútov, preto týmto spôsobom vymažeme a ignorujeme značný počet inštancií, čo môže byť problematické, ak nemáme veľkú množinu údajov. Preto má zmysel zvážiť ďalšie možnosti pri práci s chýbajúcimi hodnotami.

 

Ak je chýbajúci atribút číselný, napríklad vzdialenosť k letisku alebo výška hráča, chýbajúce hodnoty môžeme nahradiť priemernou hodnotou známych hodnôt. Argument, ktorý máme pre túto voľbu, je, že použijeme informácie, ktoré už v množine údajov existujú, a že o niektorých iných vlastnostiach atribútov veľa nezmeníme. Na druhej strane, ak hovoríme o kategorických atribútoch, ako je farba auta alebo krajina výroby, ktoré môžu mať konečnú množinu hodnôt, môžeme chýbajúcu hodnotu nahradiť najbežnejšou hodnotou. Ďalšou možnosťou, ktorá platí pre číselné aj kategorické atribúty, je použitie náhodných hodnôt - chýbajúcu farbu teda môžeme nahradiť náhodnou farbou z možnej sady farieb a chýbajúcu výšku hráča hodnotou z rozsahu najmenšej a najvyššej výšky v množine. Vo všetkých prípadoch musíme byť opatrní, pretože zmeny v údajoch môžu ovplyvniť úspešnosť modelu a výsledky, ktoré získame. Je tiež veľmi dôležité, v akom bode tieto opravy vykonáme. O tom si povieme neskôr.

Duplikáty

Prítomnosť duplikátov v množine údajov môže ovplyvniť zovšeobecnenie modelu. Preto je vždy vhodné skontrolovať, či existujú nejaké údaje, ktoré sa opakujú alebo sú veľmi podobné. Pokiaľ ide o tabuľkové údaje, duplikáty možno nájsť priamym porovnaním hodnôt atribútov. Pri práci s rôznymi typmi údajov zvyčajne potrebujeme pokročilejšie techniky. Napríklad duplicitné obrázky môžu byť symetrické, napríklad v zrkadle, buď horizontálne, alebo vertikálne. Rovnako je to aj s textovými údajmi. Dva spravodajské články môžu obsahovať rovnaké oznámenie (o ktorom informujú niektoré tlačové agentúry) s mierne odlišnými titulkami, takže z hľadiska priameho porovnania charakteru sú odlišné, ale rovnaké.

Odhaľovanie výnimiek

Všimnutie si údajov, ktoré sa nejakým spôsobom líšia od ostatných, nám umožňuje odhaliť chyby v údajoch alebo objaviť nové, atypické správanie. Takéto údaje sa nazývajú výnimky alebo odľahlé hodnoty. Vzdialenosť od letiska, ktorá je -1,2 km, by bola nesúladom, pretože očakávame, že vzdialenosť bude kladná. Takto by sme mohli odhaliť chybu a napraviť ju. Na druhej strane, teplota 45 °C je tiež nezvyčajná hodnota, ale skutočná vzhľadom na zmenu klímy a možno veľmi užitočná ako informácia pre podniknutie určitých krokov a krokov.

Grafické znázornenie nezrovnalosti

Nezrovnalosti môžu ovplyvniť aj výsledok algoritmov strojového učenia. Preto je po ich odhalení a spracovaní dôležité rozhodnúť, či by sa mali ponechať alebo vymazať.

Korelácia atribútov

Atribúty môžu navzájom súvisieť. Súvislosť môžeme vidieť, ak nakreslíme graf, ktorý má hodnotu jedného atribútu pozdĺž osi x a hodnotu iného atribútu pozdĺž osi y. Môžeme napríklad sledovať dvojice atribútov, vonkajšiu teplotu a počet predaných zmrzlín, vonkajšiu teplotu a spotrebu elektrickej energie a vonkajšiu teplotu a počet kníh v knižnici. Nech každý z týchto párov zodpovedá grafu ako na obrázku nižšie. Môžeme si všimnúť, že zvýšenie teploty je sprevádzané nárastom počtu predaných zmrzlin. Ak nárast hodnoty jedného atribútu nasleduje po zvýšení hodnoty iného atribútu, hovoríme, že sú pozitívne korelované. Na grafe si tiež môžeme všimnúť, že táto závislosť je lineárna, t. j. že sleduje imaginárnu čiaru, ktorá prechádza množinou bodov. Na druhej strane sa zdá, že situácia s vonkajšou teplotou a spotrebou prúdu je trochu iná, t.j. že pokles teploty je sprevádzaný vyššou spotrebou elektrickej energie, Pravdepodobne kvôli použitiu ohrievačov. Atribúty, v ktorých po zvýšení hodnoty jedného atribútu nasleduje pokles hodnoty iného atribútu, sa hovorí, že sú negatívne korelované . Z grafiky môžeme opäť vyvodiť záver, že tento druh korelácie je lineárny. Tretí graf, ktorý zobrazuje vonkajšiu teplotu a počet kníh v knižnici, nenaznačuje žiadnu, aspoň nie zjavnú, pravidelnosť medzi atribútmi. Určite môžeme dospieť k záveru, že tieto atribúty nie sú lineárne korelované.

Grafika asociácie atribútov

Na meranie lineárneho vzťahu atribútov môžeme použiť aj rôzne typy koeficientov, ktoré sú stanovené v oblasti matematickej štatistiky. Jedným z takýchto koeficientov je Pearsonov korelačný koeficient. Jeho hodnoty sa pohybujú od -1 do 1 a označujú smer aj pevnosť spojenia. Hodnoty koeficientov bližšie k -1 označujú negatívnu koreláciu, hodnoty koeficientov bližšie k 1 označujú pozitívnu koreláciu a hodnoty okolo nuly označujú absenciu lineárnej korelácie.

Je bežné, že hodnoty korelačných koeficientov medzi atribútmi sa zobrazujú graficky vo forme tzv. tepelnej mapy. Každý štvorec na tejto mape zodpovedá jednej dvojici atribútov a jeho farba je upravená na hodnotu korelačného koeficientu. Stĺpec umiestnený na bočnej strane tejto mapy spája hodnoty a odtiene farieb. Pozorovaním tejto mapy môžeme ľahko vidieť korelácie v údajoch. Na obrázku nižšie sú znázornené dvojice atribútov jednej množiny údajov, ktorá kombinuje informácie o zamestnancoch. Aj keď o tomto súbore vieme málo, môžeme konštatovať, že skúsenosti a počet rokov (atribút veku) najlepšie sledujú platové hodnoty. Môžeme tiež vidieť, že existuje korelácia medzi počtom rokov (atribút vek ) a atribútom skúsenosti .

Tepelná mapa s hodnotami korelačného koeficientu

Zistenie súvisiacich atribútov nám v prvom rade umožňuje lepšie pochopiť doménu, na ktorú sa údaje vzťahujú. Niektoré spojenia sa dajú očakávať, zatiaľ čo iné nám môžu priniesť nové poznatky. Odstránením atribútov, ktoré sú prepojené, môžeme znížiť dimenzionalitu súboru údajov. Týmto spôsobom môžeme urýchliť prácu niektorých algoritmov a ľahšie pochopiť výsledky. Existujú aj algoritmy strojového učenia, ktoré sa nesprávajú dobre, ak sú v množine údajov asociácie - odstránenie atribútov, na ktoré sa to vzťahuje, môže zlepšiť úspešnosť algoritmu.

Táto lekcia je spárovaná s poznámkovým blokom Jupyter 03-exploratory-data-analysis.ipynb . Ak si chcete precvičiť úlohy, ktoré sme popísali, kliknite na odkaz a následne na tlačidlo colab otvorte obsah v prostredí Google Colab. Ak si poznámkové bloky prezeráte v lokálnom počítači, vyhľadajte poznámkový blok s rovnakým názvom v obsahu a spustite ho. Podrobnejšie pokyny nájdete v sekcii Hands-on zóna a v lekcii Cvičebné zošity Jupyter .

V zápisníku Jupyter sa pomocou funkcií knižnice Pandas analyzovali údaje zo stavebnice Titanic. Táto sada obsahuje informácie o pasažieroch, ktorí boli na slávnej lodi Titanic, keď v roku 1912 pri plavbe v Atlantickom oceáne narazila do ľadovca a stroskotala.

Last modified: Sunday, 13 April 2025, 9:51 AM