510 likes | 755 Views
Predspracovanie a transformácia dát. by Gabriela Kosková preprocessed by Michal Kompan. Inštancie a ich atribúty. inštancie pozorovania, príklady vstupné dáta záznamy v databáze atribúty každá inštancia je charakterizovaná hodnotami fixnej predefinovanej množiny atribútov. inštancia.
E N D
Predspracovanie a transformácia dát by Gabriela Kosková preprocessed by Michal Kompan
Inštancie a ich atribúty • inštancie • pozorovania, príklady • vstupné dáta • záznamy v databáze • atribúty • každá inštancia je charakterizovaná hodnotami fixnej predefinovanej množiny atribútov
inštancia atribút Príklad vstupných dát Sepal.LSepal.WPetal.LPetal.WSpecies 15.13.51.40.2setosa 24.93.01.40.2setosa 34.73.21.3 0.2 setosa 44.63.11.50.2setosa 55.03.61.40.2setosa 517.03.24.71.4versicolor 526.43.24.51.5versicolor 536.93.14.91.5versicolor 545.52.34.01.3versicolor 556.52.84.61.5versicolor 1016.33.36.02.5virginica 1025.82.7 5.11.9virginica 1037.13.05.92.1virginica 1046.32.95.61.8virginica 1056.53.05.82.2virginica
Q1 • Aké typy atribútov poznáte
Typy atribútov • numerické • spojité (napr. vzdialenosti) • diskrétne (napr. vek v rokoch) • ordinálne - je možné ich usporiadať • napr. horúci > teplý > vlažný > chladný > studený • napr. starý > v stredných rokoch > mladý • nominálne = kategorické • napr. setosa, versicolor, virginica • nominálne vs. ordinálne (slnečno, zamračené, daždivo) • špeciálny prípad: dichotomické (boolovské, binárne)
Pozor na vzdialenosti Typy atribútov • numerické • spojité (napr. vzdialenosti) • diskrétne (napr. vek v rokoch) • ordinálne - je možné ich usporiadať • napr. horúci > teplý > vlažný > chladný > studený • napr. starý > v stredných rokoch > mladý • nominálne = kategorické • napr. setosa, versicolor, virginica • nominálne vs. ordinálne (slnečno, zamračené, daždivo) • špeciálny prípad: dichotomické (boolovské, binárne)
Základné charakteristiky dát • Poznajte svoje dáta! • objem dát je veľký na to, aby sa stačilo pozrieť do databázy • charakteristiky • jednotlivých atribútov • závislosť medzi atribútmi
Charakteristiky atribútu • Početnosť výskytu hodnôt atribútu • f(a) - koľkokrát sa hodnota a vyskytla v rámci jenoho atribútu • klasifikácia: pre rôzne triedy zvlášť • pre nominálne hodnoty: jedniný spôsob ako zistiť charakter dát • histogram
1 ai a = n i=1 + a a n+1 n 2 2 2 amed = a n+1 2 Charakteristiky atribútu • modus • najčastejšie sa vyskytujúca hodnota • aritmetický priemer (stredná hodnota) • medián • ak máme zoradené hodnoty atribútu a1, ..., an • pre nepárne n: • pre párne n: n pre hodnoty atribútu a1, ..., an amed =
n 1 (ai - a)2 sa = 2 n-1 i=1 n 1 (ai - a)2 sa = n-1 i=1 Charakteristiky atribútu • Rozptyl • Štandardná odchýlka • Percentily • analógia štandardnej odchýlky pre medián • K-ty percentil - K% hodnôt je pred danou hodnotou • Q1: K=25, Q2 – medián: K = 50, Q3: K=75 pre hodnoty atribútu a1, ..., an
Boxplot • cieľ • sumarizovať dáta a rýchlo zobraziť, či sú dáta symetrické, či majú outliery • 5-číselná sumarizácia • rámček: dolný kvantil, medián, horný kvantil • medián: v zoradnených hodnotách - prostredná • dolný kvantil: medián ľavej polovice čísel po medián (vrt.) • horný kvantil: medián pravej polovice čísel od mediánu (vrt.) • zarážky ("fúzy"): vyjadrujúce minimum a maximum (max 1,5x šírka rámčeka) • kolieska: outliery
Boxplot: príklad R: boxplot (John Versani: simpleR Using R for Introductory Statistics)
m k hij hij h•j = hi• = j=1 i=1 y1 y2 ... ym x1 h11 h12 ... h1m h1• x2 h11 h12 ... h1m h2• ... ... ... ... ... ... xk hk1 hk2 ... hkm hk• h•1 h•2 ... h•m Závislosť medzi atribútmi so symbolickými hodnotami • kontingenčná tabuľka • hodnoty: • diskrétne, ordinálne alebo nominálne • atribúty x, y s hodnotami xi, i <1,k>, yj, i <1,m> • hij = počet výskytov
n (xi - x) (yi - y) i=1 rxy = n n (yi - y)2 (xi - x)2 i=1 i=1 Závislosť medzi atribútmi s numerickými hodnotami • korelačný koeficient • rxy <-1,1> • záporné hodnoty: negatívna korelácia • kladné hodnoty: pozitívna korelácia • rxy = 0: hodnoty sú nekorelované
Q2 • Ktoré dáta viac korelujú?
Scatter plot • zisťujú sa vzťahy medzi dvojicou premenných • 2D graf • scatter matrix: grafy všetkých kombinácií dvojíc premenných
Scattermatrix dáta: iris R:pairs
Načo je príprava dát • dáta, ktoré chceme analyzovať: • nekonzistentné • z rôznych zdrojov zaznamenávané iné atribúty, ... • nekompletné • neboli informácie, nebol čas ich zaznamenať, považovali sa za nepodstatné, ... • zašumené • obsahujú chyby • mnohorozmerné • kliatba dimenzionality
Kiatba dimenzionality • angl. curse of dimensionality (Richard Bellman) • problém spôsobený rapídnym zväčšením objemu asociovaného s pridávaním dimenzií do priestoru • príklad • 1D interval [0,1] • 100 inštancií pokryje množinu reálnych čísel dobre (má zmysel zisťovať charakteristiky, hľadať vzory) • 10D kocka [0,1]10 • 100 pozorovaní tu predstavuje izolované body vo väčšine prázdneho priestoru • na dosiahnutie podobného pokrytia, potrebujeme 1020 inštancií
Príprava vstupu • predspracovanie • integrácia dát z rôznych zdrojov • čistenie dát • vysporiadanie sa s chýbajúcimi dátami • transformácia • veľká časť z celého objavovania znalostí
Integrácia dát • vytvorenie jednej množiny inštancií • dáta z rôznych zdrojov (napr. z rôznych oddelení) • rôzne štýly ukladania záznamov • rôzne konvencie • rôzne časové obdobia • rôzne agregácie, rôzne primárne kľúče • rôzne typy chýb • dátový sklad (data warehouse) • integrácia databáz v jednej spoločnosti • nemusí však obsahovať všetky potrebné dáta
Integrácia dát • identifikovanie rovnakých entít • rôzne identifikátory (napr. ID_custormer, cust_num) • metadáta • redundancia • atribút môže byť nadbytočný - dá sa vypočítať z iných atribútov • rozdiel v dátach spôsobený meraním v iných veličinách • rôzne formáty
Riedke dáta • väčšina dát v matici je 0 • napr. market basket data • matica - riadky: zákazníci, stĺpce: produkty • zákazník kúpi len veľmi malú časť z množiny všetkých produktov • reprezentácia: {1 26, 6 63, 10 A} {3 42, 10 B} 0 26 0 0 0 0 63 0 0 0 A 0 0 42 0 0 0 0 0 0 0 B
Spôsoby zaobchádzania s atribútmi • numerické ako nominálne • používajú len porovnania • numerické ako rozdielové normalizácia • práca len s rozdielovými atribútmi • vzdialenosť pre ordinálne atribúty musí byť definovaná vzdialenosť • napr. pre poštové smerovacie čísla: vzdialenosť regiónov • ak nie je prirodzená vzdialenosť: 0 - pre rovnaké, 1 pre rôzne hodnoty
Q3 • Čo s chýbajúcimi hodnotami?
Chýbajúce hodnoty • dôvody: • nefunkčné meracie zariadenie • zmena kolekcie atribútov v databáze • spojenie podobných, neidentických databáz • odmietnutie respondenta odpovedať • nebolo potrebné zisťovať hodnotu (napr. vyšetrenie) • nevieme rozlíšiť, či sa nepodarilo zistiť hodnotu, alebo bolo irelevantné hodnotu zisťovať
Chýbajúce hodnoty: príklad • niektoré hodnoty chýbajú lebo • sú nerelevantné (Jane) • neaplikovateľné (Joe, 2-ročná Anna) MenoVekPohlavieTehotná? Mary 25 Ž N Jane 27 Ž? Joe 30 M ? Anna 2 Ž?
Vysporiadanie sa s chýbajúcimi hodnotami • ignorovať záznam • problém ak je veľa takých záznamov • vyplniť manuálne • dá sa ak je málo takých záznamov • použiť konštantnú hodnotu • napr. hodnotu "neznáme" • použiť aritmetický priemer hodnôt • použiť aritmetický priemer hodnôt patriacich do tej istej triedy • klasifikácia (poznáme priradenie do tried)
Chybné dáta • obyčajne dáta neboli zbierané pre KDD • typy chýb • typografické chyby - iný význam (napr. v PSČ) • rôzne zápisy pre jeden význam (napr. 2, II) • chyby merania - často sa stávajú outliermi • duplikácia dát - ovplyvňuje výsledok DM metód • úmyselné chyby (napr. osobné údaje) • hodnoty sú zastaralé
Výrazne odchýlené hodnoty • angl. outliers • odhalenie výrazne odchýlených hodnôt • pomocou charakteristík atribútov (boxplot-u) • zhlukovaním - hodnota nie je podobná hodnotám v žiadnom zhluku
Výber atribútov • výber atribútov na redukciu dimenzionality • vybratie minimálnej podmnožiny atribútov tak aby sa zachovalo rozdelenie dát • spôsoby • manuálne (ak dátam rozumieme) • automatické metódy • niektoré algoritmy sa učia, ktoré atribúty sú najrelevantnejšie (napr. rozhodovacie stromy) • všeobecné algoritmy
Výber atribútov • výhody • zvyšuje presnosť • urýchľuje algoritmus (vyvážené výberom) • vedie ku kompaktnejšej a zrozumiteľnejšej reprezentácii
Transformácia • na získanie dát vhodných pre DM • vyhladzovanie • odstránenie zašumených dát (napr. zhlukovanie, regresia) • agregácia • napr. denné dáta agregované do mesačných • zovšeobecnenie • nízkoúrovňové dáta nahradiť vyššieúrovňovými konceptami (napr. ulica mesto) • normalizácia • škálovanie hodnôt - do intervalu <-1,1>
Transformácia • skonštruovanie atribútu • z iných atribútov (napr. dátum narodenia + aktuálny dátum vek) • transformácie na redukciu dimenzionality • PCA • náhodná projekcia • zhlukovanie • diskretizácia numerických atribútov • niektoré algoritmy potrebujú nominálne dáta • text na atribútové vektory • vzorkovanie
Vyhladzovanie • na vyhladenie šumu v dátach • angl. binning - rozdeľovanie do nádob • usporiadaná postupnosť sa rozdelí na intervaly • rovnaká hĺbka intervalu (rovnaký počet hodnôt) • rovnaká šírka intervalu • všetky pôvodné hodnoty sa nahradia novými • nahradenie aritmetickým stredom intervalu • nahradenie mediánom hodnôt z intervalu • nahradenie jednou z hraníc intervalu (bližšou)
Normalizácia • dáta: merané v rôznych jednotkách • roky, počty, peniaze v rôznych menách • transformácie: • Min-max normalizácia • Z-score normalizácia
Min-max normalizácia • pre každý atribút • minA - najnižšia hodnota • maxA - najvyššia hodnota =>do intervalu <0,1> • keď príkde v budúcnosti inštancia, ktorej hodnota atribútu je mimo <minA, maxA> chyba • R: balík dprep - mmnorm v - minA v´= maxA - minA
Z-score normalizácia • = zero-mean normalization • dáta sú normalizované na základe • aritmetického priemeru atribútu A: A a • štandardnej odchýlky s hodnôt atribútu • keď príkde v budúcnosti inštancia, ktorej hodnota atribútu je mimo <minA, maxA>, nie je to problém • R: balík dprep - signorm v - A v´= sA
PCA • často dáta vo veľarozmernom priestore prirodzene približne ležia na menej-dimenzionálnom variete • varieta (angl. manifold) - matematický priestor, ktorý v malých škálach pripomína Euklidovský priestor (napr. priamka, kružnica, rovina, guľa) • "približne" - odchýlky od variety sú považované za šum • PCA transofrmuje dáta do menejdimenzionálneho priestoru
Vzorkovanie • angl. sampling • nahradenie pôvodných dát menšou reprezentáciou (menším počtom inštancií) • neparametrické • pomocou histogramu • parametrické • napr. zhlukovanie
Vzorkovanie pre rôzne veľké triedy • ak početnosti inštancií v rámci jednotlivých tried sú veľmi rozdielne • napr. množina splatených úverov je oveľa väčšia ako množina nesplatených úverov • možnosti • undersampling - zmenšiť početnejšiu množinu • náhodný výber • odstránenie inštancií, ktoré sú "blízke" k inštanciám druhej triedy • oversampling - zväčšovanie triedy • opakovanie inštancií
Diskretizácia premenných • transformácia na malé množstvo rozdielnych usporiadaných hodnôt • diskretizácia bez učiteľa • binning - rozdelenie na rovnako veľké alebo rovnako početné intervaly • diskretizácia s učiteľom • triedy sú známe • diskretizácia založená na entropii
Rozdelenie na rovnako veľké alebo početné intervaly • rovnako veľké intervaly • angl. equal-interval binning • unerovnomerne rozložených dát • nejaký interval môže obsahovať veľa, iný málo inštancií • rovnako početné intervaly • angl. equal-frequency binning • intervaly obsahujú rovnaké množstvo inštancií • nerovnako veľké intervaly • hranice medzi intervalmi môžu byť nesprávne
Rozdelenie na rovnako veľké alebo početné intervaly • rovnako veľké intervaly • 2. interval obsahuje veľa dát (nie vždy dobré hranice) • rovnako početné intervaly • nevhodne vytvorené hranice 64 65 68 69 70 71 72 72 75 75 80 81 83 85 a n a a a n n a a a n a a n 64 65 68 69 70 71 72 72 75 75 80 81 83 85 a n a a a n n a a a n a a n
Diskretizácia podľa tried • usporiadaj inštancie podľa hodnôt atribútu • priraď hodnoty intervalom, ktoré delia tie hodnoty atribútov, kde sa mení trieda • problémy: • viac inštancií s rovnakou hodnotou atribútu ale rôznou triedou (72) • často: príliš veľa intervalov 64 65 68 69 70 71 72 72 75 75 80 81 83 85 a n a a a n n a a a n a a n a | n | a a a | n n | a a a | n | a a | n
Konverzia nominálnych atribútov na numerické • napr. numerická predikcia - regresia • diskrétne môžu byť považované za numerické, ak sa im definuje vzdialenosť • 0 pre rovnaké hodnoty • 1 pre rôzne hodnoty • pre k-hodnotový nominálny atribút • vytvorenie k dichotomických premenných (1, ak má danú vlastnosť, 0 inak) • aj váhovanie (ak niektoré hodnoty majú väčšiu váhu)
Konverzia diskrétnych atribútov na numerické • diskrétne: ordinálne, kde môže byť nejaké usporiadanie • transformovanie k-hodnotového atribútu do k-1 binárnych atribútov a1, ..., ak-1 • i premenná vyjadruje, či je hodnota pôvodného atribútu i+1 • zoradenie: susedné atribúty sa líšia v 1 atribúte • pre {1, ..., 5}: 1: 0 0 0 0 3: 1 1 0 0 5: 1 1 1 1 2: 1 0 0 0 4: 1 1 1 0 a1 a2 a3 a4 a1 a2 a3 a4 a1 a2 a3 a4
počet výskytov slova j v dokumente i Konverzia textu na atribúty • slová z dokumentov slovník • riešenie koncov slov, interpunkčné znamienka • korene slov • odstránenie stop slov • hodnoty wij • 0/1 • počet výskytov • reálne číslo: TF IDF = fij log D = {d1, d2, ... , dn} Wi = {wi1, wi2, ... , win} počet dokumentov počet dokumentov obsahujúcich slovo j