Előfeldolgozás, exploratory analysis

Hasonló dokumentumok
Minden az adatról. Csima Judit február 11. BME, VIK, Csima Judit Minden az adatról 1 / 41

Csima Judit március 9. és 16.

Klaszterezés, 2. rész

Csima Judit április 9.

Adatbányászati technikák (VISZM185) 2015 tavasz

STATISZTIKA. A maradék független a kezelés és blokk hatástól. Maradékok leíró statisztikája. 4. A modell érvényességének ellenőrzése

Principal Component Analysis

Alkalmazott statisztika feladatok

3. fejezet. Tan, Steinbach, Kumar Bevezetés az adatbányászatba

Vizuális adatelemzés

Biomatematika 2 Orvosi biometria

3. fejezet. Tan, Steinbach, Kumar Bevezetés az adatbányászatba

Segítség az outputok értelmezéséhez

Faktoranalízis az SPSS-ben

Asszociációs szabályok

Faktoranalízis az SPSS-ben

Matematikai alapok és valószínőségszámítás. Középértékek és szóródási mutatók

Csima Judit május 10.

Feladatok: pontdiagram és dobozdiagram. Hogyan csináltuk?

Mintavételezés, szűrés, outlierek detektálása

Csima Judit november 15.

Vizuális adatelemzés

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Nagyméretű adathalmazok előfeldolgozása

Döntési fák. (Klasszifikációs és regressziós fák: (Classification And Regression Trees: CART ))

Mintavétel fogalmai STATISZTIKA, BIOMETRIA. Mintavételi hiba. Statisztikai adatgyűjtés. Nem véletlenen alapuló kiválasztás

Az R adatelemzési nyelv alapjai I.

Közösség detektálás gráfokban

Gyakorló feladatok adatbányászati technikák tantárgyhoz

Adatbányászat Weka-val. (Data Mining with Weka Ian H. Witten)

Gépi tanulás a gyakorlatban. Bevezetés

c adatpontok és az ismeretlen pont közötti kovariancia vektora

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet

Csima Judit október 24.

Grafikonok az R-ben március 7.

Adatbányászat: Adatok. 2. fejezet. Tan, Steinbach, Kumar Bevezetés az adatbányászatba

A statisztika alapjai - Bevezetés az SPSS-be -

Correlation & Linear Regression in SPSS

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Sajátértékek és sajátvektorok. mf1n1a06- mf1n2a06 Csabai István

Változók eloszlása, középértékek, szóródás

Bevezetés az SPSS program használatába

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet Nonparametric Tests

STATISZTIKA ELŐADÁS ÁTTEKINTÉSE. Mi a modell? Matematikai statisztika. 300 dobás. sűrűségfüggvénye. Egyenletes eloszlás

Adatbányászat: Adatok. 2. fejezet. Tan, Steinbach, Kumar Bevezetés az adatbányászatba

The nontrivial extraction of implicit, previously unknown, and potentially useful information from data.

Microsoft Excel Gyakoriság

A leíró statisztikák

Statisztika - bevezetés Méréselmélet PE MIK MI_BSc VI_BSc 1

KÖZELÍTŐ INFERENCIA II.

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet. Correlation & Linear. Petra Petrovics.

Kutatásmódszertan és prezentációkészítés

Példák jellemzőkre: - minden pixelérték egy jellemző pl. neurális hálózat esetében csak kis képekre, nem invariáns sem a megvilágításra, sem a geom.

KÖZELÍTŐ INFERENCIA II.

A magyar teljesítménytúra-naptár fejlődése,

(Independence, dependence, random variables)

[Biomatematika 2] Orvosi biometria

Grafikonok automatikus elemzése

Statisztikai programcsomagok gyakorlat Pót zárthelyi dolgozat megoldás

IBM SPSS Modeler 18.2 Újdonságok

Utolsó módosítás: Dr. Pataricza András (Rendszermodellezés) és Kocsis Imre (Big Data elemzési módszerek) idevágó fóliáit felhasználva.

Leíró statisztika. Adatok beolvasása az R-be és ezek mentése

Statisztika I. 4. előadás Mintavétel. Kóczy Á. László KGK-VMI. Minta Mintavétel Feladatok.

Osztályozás, regresszió. Nagyméretű adathalmazok kezelése Tatai Márton

ELTE TáTK Közgazdaságtudományi Tanszék GAZDASÁGSTATISZTIKA. Készítette: Bíró Anikó. Szakmai felelős: Bíró Anikó június

JAVASLAT A TOP-K ELEMCSERÉK KERESÉSÉRE NAGY ONLINE KÖZÖSSÉGEKBEN

Correlation & Linear Regression in SPSS

MATEMATIKA ÉRETTSÉGI május 8. EMELT SZINT

Statisztika I. 4. előadás Mintavétel. Kóczy Á. László KGK-VMI. Minta Mintavétel Feladatok.

STATISZTIKA ELŐADÁS ÁTTEKINTÉSE. Matematikai statisztika. Mi a modell? Binomiális eloszlás sűrűségfüggvény. Binomiális eloszlás

Csima Judit BME, VIK, november 9. és 16.

Adatok statisztikai értékelésének főbb lehetőségei

Önálló labor beszámoló Képek szegmentálása textúra analízis segítségével. MAJF21 Eisenberger András május 22. Konzulens: Dr.

Osztott jáva programok automatikus tesztelése. Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január

R ++ -tree: an efficient spatial access method for highly redundant point data - Martin Šumák, Peter Gurský

Data Mining. Slides for Chapter 2 of Data Mining by I. H. Witten, E. Frank and M. A. Hall

Korrel aci os egy utthat ok febru ar 29.

Geokémia gyakorlat. 1. Geokémiai adatok értelmezése: egyszerű statisztikai módszerek. Geológus szakirány (BSc) Dr. Lukács Réka

Statisztikai eljárások a mintafelismerésben és a gépi tanulásban

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet. Nonparametric Tests. Petra Petrovics.

Csima Judit február 19.

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Egész számok. pozitív egész számok: 1; 2; 3; 4;... negatív egész számok: 1; 2; 3; 4;...

Adatelemzés az R-ben április 25.

y ij = µ + α i + e ij STATISZTIKA Sir Ronald Aylmer Fisher Példa Elmélet A variancia-analízis alkalmazásának feltételei Lineáris modell

Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén

Behatolás detektálás. Behatolás megel!zés. IDS rendszerek. Detektálás Eltérítés Elhárítás. (ellenlépések) Megel!z! csapás Küls! megel!

Az SPC (statisztikai folyamatszabályozás) ingadozásai

Rendszámfelismerő rendszerek

7. fejezet: Mutatók és tömbök

Előfeldolgozás. Nagyméretű adathalmazok kezelése Molnár András

MISKOLCI EGYETEM GÉPÉSZMÉRNÖKI ÉS INFORMATIKAI KAR

Minták automatikus osztályba sorolása a mintát leíró jellemzők alapján. Típusok: felügyelt és felügyelet nélküli tanuló eljárások

Nagyméretű adathalmazok kezelése (BMEVISZM144) Reinhardt Gábor április 5.

Adattípusok, ábrák és grafikonok az excelben

Cluster Analysis. Potyó László

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban?

Mintavételezés, szűrés, kilógó esetek detektálása

Nagy méretű adathalmazok vizualizációja

Átírás:

Előfeldolgozás, exploratory analysis Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2014. február 19. Csima Judit Előfeldolgozás, exploratory analysis 1 / 55

Az adatbányászat részei Mivel kezdődik az adatbányászat? majd tanulunk konkrét eljárásokat, amikkel az adatokból mindenféle érdekes infó nyerhető ki de ahhoz, hogy ezek menjenek szép adatok kellenek eredendőan az adat sose szép, valamit biztos csinálni kell vele ez sok munka, nem egzakt feladat de azért a fő részeire van egy protokoll Csima Judit Előfeldolgozás, exploratory analysis 2 / 55

Az adatbányászat részei Honnan szerzünk adatokat? néha úgy találjuk készen, valaki összegyűjtötte (ingyen elérhető, meg kell venni) szinte sose pont olyan, mint ami nekünk kell sokszor elosztottan van esetleg több táblából kell valahogy egyet csinálni (adatbázis kezelés) fontos, hogy dokumentáljuk, hogy honnan szereztük, honnan töltöttük le ha valaki már előfeldolgozta valahogy, akkor is értelmes látni a nyers adatot vagy legalább megérteni, hogy mi történt a feldolgozás során Csima Judit Előfeldolgozás, exploratory analysis 3 / 55

Az adatbányászat részei Fő részek, ha már megvan az adat ismerkedés: milyen típusú attribútumok vannak, mit kódolnak, hogyan (ezt érintettük már a múltkor) exploratory elemzés: grafikonok, ábrák, mert így könnyebb látni mintázatokat preprocessing: attribútumok illetve sorok számának csökkentése Csima Judit Előfeldolgozás, exploratory analysis 4 / 55

Az adatbányászat részei Ismerkedés az adattal honnan van az adat? hogyan gyűjtötték? elévült-e már az adat? attribútumok típusa, tipikus értékei, volt-e default érték a bevitelkor Csima Judit Előfeldolgozás, exploratory analysis 5 / 55

Az adatbányászat részei Ismerkedés az iris data frame-mel ezt fogjuk használni demonstrációs célra letölthető innen: http://www.ics.uci.edu/ mlearn/mlrepository.html benne van az R base package-ben is:?iris háromféle írisz faj adatai négy attribútum: szirom hossza és szélessége, csészelevél hossza és szélessége Csima Judit Előfeldolgozás, exploratory analysis 6 / 55

Az adatbányászat részei Ismerkedés az adattal R-ben legjobb, ha van dokumentáció, pl. R-ben?iris elég sok infót megad: Format iris is a data frame with 150 cases (rows) and 5 variables (columns) named Sepal.Length, Sepal.Width, Petal.Length, Petal.Width, and Species. ebből most kiderül, hogy : Hány oszlop van? Mit kódolnak? Hány sor van? ha nincs ilyen dokumentáció vagy plusz infót akarunk: head(), summary() vagy str() függvények R-ben persze bármivel csinálhatjuk, csak derüljön ki, hogy kábé milyen számok vannak, milyen kategóriák, stb. Csima Judit Előfeldolgozás, exploratory analysis 7 / 55

Az adatbányászat részei str() > str(iris) $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9... $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1... $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5... $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1... $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1... Csima Judit Előfeldolgozás, exploratory analysis 8 / 55

Az adatbányászat részei summary() > summary(iris) Sepal.Length Sepal.Width Petal.Length Petal.Width Min. :4.300 Min. :2.000 Min. :1.000 Min. :0.100 1st Qu.:5.100 1st Qu.:2.800 1st Qu.:1.600 1st Qu.:0.300 Median :5.800 Median :3.000 Median :4.350 Median :1.300 Mean :5.843 Mean :3.057 Mean :3.758 Mean :1.199 3rd Qu.:6.400 3rd Qu.:3.300 3rd Qu.:5.100 3rd Qu.:1.800 Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500 Species setosa :50 versicolor:50 virginica :50 Csima Judit Előfeldolgozás, exploratory analysis 9 / 55

Exploratory elemzés Exploratory elemzés: mi ez? mielőtt az elemzést elkezdenénk meg kell ismerkedni az adatokkal ez alapján lehet eldönteni, hogy milyen algoritmust használjunk egy adott algoritmusban milyen attribútumok a fontosak (hol lehet érdekes, megvizsgálandó kapcsolat vagy hol van redundancia) látszik-e valami nyilvánvaló hiba vagy tennivaló az adatokkal (átskálázás, hiányzó értékek, kilógó értékek) vannak olyan mintázatok, amiket egy jól sikerült ábrán az ember gyorsan felismer Csima Judit Előfeldolgozás, exploratory analysis 10 / 55

Exploratory elemzés Exploratory elemzés: fő részei összegző statisztikák készítése ábrázolás Csima Judit Előfeldolgozás, exploratory analysis 11 / 55

Exploratory elemzés Exploratory elemzés a statisztikában John Tukey nevéhez fűződik főleg ábrázolás klaszterezés és anomália detektálás is a része (ez is főleg grafikus) adatbányászatban a klaszterezés és az anomális detektálás lehet része az exploratory elemzésnek, de sokkal több ennél ezért majd ezekről részletesen beszélünk később Csima Judit Előfeldolgozás, exploratory analysis 12 / 55

Exploratory elemzés Összegző statisztikák ezt már érintettük, amikor az adattal való ismerkedésről volt szó célja, hogy valami számszerű adattal összegezzük a változók értékeit gyorsan számolható legyen informatív legyen kábé hol vannak az értékek, mennyire szóródnak, mik a gyakoriságok általában vannak mindenféle hasznos parancsok erre Csima Judit Előfeldolgozás, exploratory analysis 13 / 55

Exploratory elemzés Összegző statisztikák, kategória típusú attribútum kategória típusú változónál a gyakoriságok informatívak erre láttuk már R-ben az str() és summary() függvényeket (ezekről mindjárt újra beszélünk) van egy table() függvény is: > table(iris$species) setosa versicolor virginica 50 50 50 Csima Judit Előfeldolgozás, exploratory analysis 14 / 55

Exploratory elemzés str() > str(iris) $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9... $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1... $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5... $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1... $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1... Csima Judit Előfeldolgozás, exploratory analysis 15 / 55

Exploratory elemzés Percentilisek folytonos adatokhoz jó 0 és 100 közötti percentilisekről beszélünk egy halmaz (attribútumhalmaz, adott oszlop értékei) p-percentilise az az x p érték, aminél a halmaz értékeinek p%-a kisebb egyenlő például x 50% azt az értéket adja meg, aminél az összes előforduló érték fele nem nagyobb szokásos nézni a 25, 50, 75 percentiliseket és a min és a max értéket pont erre szolgál a summary() R-ben de persze van quantile() függvény is, ahol beálĺıtható, hogy milyen percentiliseket akarok, default a 0, 25, 50, 75, 100 (ahol 0 a min érték és 100 a max érték) Csima Judit Előfeldolgozás, exploratory analysis 16 / 55

Exploratory elemzés summary() > summary(iris) Sepal.Length Sepal.Width Petal.Length Petal.Width Min. :4.300 Min. :2.000 Min. :1.000 Min. :0.100 1st Qu.:5.100 1st Qu.:2.800 1st Qu.:1.600 1st Qu.:0.300 Median :5.800 Median :3.000 Median :4.350 Median :1.300 Mean :5.843 Mean :3.057 Mean :3.758 Mean :1.199 3rd Qu.:6.400 3rd Qu.:3.300 3rd Qu.:5.100 3rd Qu.:1.800 Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500 Species setosa :50 versicolor:50 virginica :50 Csima Judit Előfeldolgozás, exploratory analysis 17 / 55

Exploratory elemzés Átlag (mean) az átlag (az adatok számtani közepe) az egyik leggyakoribb összegző függvény mean(x) = x = 1 m x i m i=1 az átlag nagyon érzékeny a kilógó adatokra ezért sokszor a mediánt használjuk helyette Csima Judit Előfeldolgozás, exploratory analysis 18 / 55

Exploratory elemzés Medián (median) medián: hasonló az 50%-os percentilis értékéhez, de nem egészen az { xr+1 if m = 2r + 1 median(x) = 1 2 (x r + x r+1 ) if m = 2r ez persze enm ugyanaz, mint az átlag az emberek több, mint 99%-ának az átlagnál több lába van Csima Judit Előfeldolgozás, exploratory analysis 19 / 55

Exploratory elemzés Szórás-szerűségek range: milyen tartományba esnek az adatok (max - min) 1 m szórásnégyzet illetve szórás: (x i x) 2 m 1 i=1 de ez is érzékeny a kilógó értékekre, ezért néha inkább 1 m x i x m i=1 ábrázolásnál lesznek majd olyan technikák, amikkel ezeket a mennyiségeket jól lehet látni Csima Judit Előfeldolgozás, exploratory analysis 20 / 55

Exploratory elemzés Ábrázolás célja az ismerkedés során az adatok közti kapcsolatot vagy adat tulajdonságait mutató jellemzőket ember számára feldolgozható módon megjeleníteni ember számára könnyebb egy grafikont értelmezni, mint egy táblázatot minták jobban látszanak (ember számára) kilógó adatok, furcsaságok is jobban kiugranak majd lesz szó arról, hogy az ábrázolás milyen szerepet kap az eredmények ismertetésekor általában sok ábra készül, gyorsan Csima Judit Előfeldolgozás, exploratory analysis 21 / 55

Exploratory elemzés Example: Sea Surface Temperature The following shows the Sea Surface Temperature (SST) for July 1982 Tens of thousands of data points are summarized in a single figure Tan,Steinbach, Kumar Introduction to Data Mining 8/05/2005 11 Csima Judit Előfeldolgozás, exploratory analysis 22 / 55

Exploratory elemzés Milyen a (jó) ábrázolás? fontos a jó elrendezés cél egy jól értelmezhető ábra általában nem lehet mindent egy ábrában áttekinteni ügyesen választunk néhány attribútumot, amiket vagy amiknek a kapcsolatát megvizsgáljuk vannak R-ben ezt támogató klassz parancsok, erről majd laboron az exploratory elemzésnél elég, ha mi értjük, hogy mi van az ábrán sok fajtája lehet, pl. hisztogram, boxplot, scatterplot, stb. Csima Judit Előfeldolgozás, exploratory analysis 23 / 55

Exploratory elemzés > x = rnorm(10000, 0, 1) > y = x + rnorm(10000, 0, 0.1) > plot(x,y) > smoothscatter(x,y) y 4 2 0 2 4 2 0 2 y 4 2 0 2 4 2 0 2 Csima Judit x Előfeldolgozás, exploratory analysis x 24 / 55

Exploratory elemzés Hisztogram egy változó értékeinek eloszlását mutatja csoportokba osztja az értékeket és az egy csoportba esők darabszámát mutatja az oszlopok magassága a darabszámot jelzi működik kategorikus és folytonos attribútumokra is Csima Judit Előfeldolgozás, exploratory analysis 25 / 55

Exploratory elemzés Iris Iris Frequency 0 5 10 15 20 25 30 35 Frequency 0 5 10 15 20 25 30 35 0.0 0.5 1.0 1.5 2.0 2.5 Petal width 0.5 1.0 1.5 2.0 2.5 Petal width Csima Judit Előfeldolgozás, exploratory analysis 26 / 55

Exploratory elemzés Two-Dimensional Histograms Show the joint distribution of the values of two attributes Example: petal width and petal length What does this tell us? Tan,Steinbach, Kumar Introduction to Data Mining 8/05/2005 16 Csima Judit Előfeldolgozás, exploratory analysis 27 / 55

Exploratory elemzés Visualization Techniques: Box Plots Box Plots Invented by J. Tukey Another way of displaying the distribution of data Following figure shows the basic part of a box plot outlier 10 th percentile 75 th percentile 50 th percentile 25 th percentile 10 th percentile Tan,Steinbach, Kumar Introduction to Data Mining 8/05/2005 17 Csima Judit Előfeldolgozás, exploratory analysis 28 / 55

Exploratory elemzés Example of Box Plots Box plots can be used to compare attributes Tan,Steinbach, Kumar Introduction to Data Mining 8/05/2005 18 Csima Judit Előfeldolgozás, exploratory analysis 29 / 55

Exploratory elemzés Scatterplot (pontdiagramm) soroknak, objektumoknak pontok felelnek meg a síkon vagy esetleg térben a pontok helye megfelel a két vagy három kiválasztott attribútum értékeinek a max. három kiválasztott dimenzión felül a pontoknak lehet színe és/vagy alakja, és/vagy mérete, ezekkel együtt max. 5-6 dimenzió ábrázolható de azért igazából 4 dimenzió felett már nehéz értelmezni, amit látunk Csima Judit Előfeldolgozás, exploratory analysis 30 / 55

Exploratory elemzés Scatter Plot Array of Iris Attributes Tan,Steinbach, Kumar Introduction to Data Mining 8/05/2005 20 Csima Judit Előfeldolgozás, exploratory analysis 31 / 55

Eredmények prezentálása Az eredmények prezentálása az ábrázolás fontos az eredmények prezentálásakor is részben hasonló elvek vonatkoznak rá, mint az exploratory ábrázolásra fontos a jó elrendezés, cél a jól értelmezhető ábra a legfontosabb eredményeket kell megmutatni, mindent nem lehet sok fajtája lehet, pl. hisztogram, boxplot, scatterplot, stb. ami nagyon más: nem elég, ha mi értjük, hogy mi van az ábrán értelmes ábracím, tengelyek rendes elnevezése, skála mérete, informatív képaláírás laboron majd nézzük ezt R-ben Csima Judit Előfeldolgozás, exploratory analysis 32 / 55

Eredmények prezentálása Az eredmények prezentálása az ábrázolás fontos az eredmények prezentálásakor is részben hasonló elvek vonatkoznak rá, mint az exploratory ábrázolásra fontos a jó elrendezés, cél a jól értelmezhető ábra a legfontosabb eredményeket kell megmutatni, mindent nem lehet sok fajtája lehet, pl. hisztogram, boxplot, scatterplot, stb. ami nagyon más: nem elég, ha mi értjük, hogy mi van az ábrán értelmes ábracím, tengelyek rendes elnevezése, skála mérete, informatív képaláírás laboron majd nézzük ezt R-ben Csima Judit Előfeldolgozás, exploratory analysis 32 / 55

Előfeldolgozás, preprocessing Cél kevesebb oszlop legyen: oszlopok elhagyása, összevonása, új (jobb) feature-ök vezetetés régiek elhagyása mellet sorok számának csökkentése, sorok felosztása training és test (és esetleg validation) halmazra mindezt azért, hogy gyorsabban fusson le az algoritmus jobb legyen az eredmény (kifejezőbb attribútumok) Csima Judit Előfeldolgozás, exploratory analysis 33 / 55

Előfeldolgozás, preprocessing Az előfeldolgozás részei feature subset selection: oszlopszámot csökkent viszonylag triviális módon aggregáció: összevonás, célja az oszlopszám csökkentése mintavételezés (sampling): célja a sorok számának csökkentése dimenziócsökkentés: kisebb mátrix legyen, oszlopok számának csökkentése, de nem összevonással új attribútumok bevezetése: feature creation (de közben csökken az oszlopszám, ennek spec. esete a dimenziócsökkentés) diszkretizálás, binárisra átírás: az oszlop típusát változtatja meg attribútumok transzformálása máshogy: skálázás, standardizálás Nem feltétlenül ez a sorrend és nem is kell mindig minden. Csima Judit Előfeldolgozás, exploratory analysis 34 / 55

Előfeldolgozás, preprocessing Dimenziócsökkentés: miért? ha nagy a dimenzió, akkor lassúak lehetnek az algoritmusok vagy nem is működnek jól meg sok hely is kell az adatok tárolására ha kisebb diemnzióban dolgozunk, akkor könnyebb (lehetséges egyáltalán) ábrázolni az adatokat tranzakciós és dokumentum mátrixoknál óriási dimenziószám van ez azért is baj, mert nagy dimenzióban a pontok közötti eltérések nem különülnek el nagyon Ez a curse of dimensionality. Csima Judit Előfeldolgozás, exploratory analysis 35 / 55

Előfeldolgozás, preprocessing Curse of Dimensionality When dimensionality increases, data becomes increasingly sparse in the space that it occupies Definitions of density and distance between points, which is critical for clustering and outlier detection, become less meaningful Randomly generate 500 points Compute difference between max and min distance between any pair of points Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 34 Csima Judit Előfeldolgozás, exploratory analysis 36 / 55

Előfeldolgozás, preprocessing Dimenziócsökkentés, módszerek lineáris algebrai módszerek, automatikus, R-ben is van a régi attribútumok valami lineáris kompozíciójaként állnak elő az új attribútumok főkomponens anaĺızis: PCA (Principal Component Analysis) szinguláris érték felbontás: SVD (Singular Value Decomposition) más módszerek: nem automatizáltak supervised: emberi beavatkozással hozunk létre új változókat, háttértudás birtokában nem-lineáris technikák: az új attribútumok a régiekből állnak elő, de nem lineáris kombinációval Cél mindig az, hogy kevesebb attribútum legyen a végén. Csima Judit Előfeldolgozás, exploratory analysis 37 / 55

Előfeldolgozás, preprocessing Feature subset selection: triviális(?) rész redundáns oszlopok felismerése például eladott termék ára, befizetett ÁFA (amennyiben uaz az áfakulcs minden terméknél, akkor az egyik nem kell) irreleváns oszlopok felismerése pl. neptun kód irreleváns, ha következő féléves átlagot akarunk előre jelezni ha jó dokumnetáció van és ismerjük a környezetet, ahonnan az adat jön, akkor ez nem nehéz emberi feladat, nem (nagyon) lehet automatizálni Csima Judit Előfeldolgozás, exploratory analysis 38 / 55

Előfeldolgozás, preprocessing Feature subset selection: alaptechnika cél: a triviális szűrés utáni attribútumoknak csak egy részét tartsuk meg gyorsabb/jobb legyen az elemzés az új attribútum halmazzal futtassuk a használni kívánt adatbányászati algoritmust egy mintán az eredeti és a potenciális szűkebb oszlophalmazzal nézzük meg, hogy elromlott-e az eredmény illetve mi történt a sebességgel döntsük el, hogy megéri-e a csökkentett attribútumhalmaz Csima Judit Előfeldolgozás, exploratory analysis 39 / 55

Előfeldolgozás, preprocessing Feature subset selection: módszerek brute-force: nézzük meg minden részhalmazát az attribútumhalmaznak: ez nem nagyon járható, már n, az attribútumok száma is nagy, 2 n óriási beágyazott módszer: a használt adatbányászati algoritmus majd kiválogatja a fontosakat (döntési fák pl.) automatikus szűrés: az algoritmus futása előtt valahogy szűrünk, pl. ha két oszlop korrelációja valami adott értéknél nagyobb, akkor egyiket eldobjuk valahogyan (ember?/automatizmus) generálok esélyes részhalmazokat és ezeket tesztelem kis mintán csökkentem egyesével az attibútumok számát, amíg valami STOP-feltétel miatt le nem állok ezzel egy legfontosabb(nak tűnő) attribútummal kezdve egyre többwet veszek be, amíg elég jó nem lesz az elemzés Csima Judit Előfeldolgozás, exploratory analysis 40 / 55

Előfeldolgozás, preprocessing Aggregáció valami csoportosítás alapján összegzem a számokat ha az adatsorok azt tartalmazzák, hogy melyik város, melyik üzlete, mennyi bevételt produkált egy napon aggregálhatok városra: adott városbeli bevétel egy napon, városok közti összefüggések aggregálhatok időtartamra: boltok havi bevételei, jobban látszanak a boltok közötti sorrendek kérdések: mi alapján vonok össze, mit összegzek Csima Judit Előfeldolgozás, exploratory analysis 41 / 55

Előfeldolgozás, preprocessing Aggregáció haszna kevesebb sor lesz átláthatóbb, esetleg ábrázolhatóbb adatok (kevesebb dimenzió lesz, hatékonyabban lehet ábrázolni) stabilabb adatok, tendenciák jobban látszódnak Csima Judit Előfeldolgozás, exploratory analysis 42 / 55

Előfeldolgozás, preprocessing Mintavételezés lehet az adatgyűjtés része is (mikrocenzus) az ismerkedéskor is jól jöhet: könnyebben áttekinthető, hogy mivel van dolgunk a különböző módszerek tesztelésére elengedhetetlen: nem akarunk minden módszert az egész halmazon lefuttatni magában is érdekes lehet, ha túl sok az adat és drága vagy lassú feldolgozni Csima Judit Előfeldolgozás, exploratory analysis 43 / 55

Előfeldolgozás, preprocessing Mintavételezés alapfeltevései olyan minta kell, ami jól reprezentálja a teljes halmazt: reprezentatív honnan tudjuk, hogy ilyen-e? amikor kábé ugyanaz az eredmény, következtetés, bármi, amiért az egész eljárást csináljuk hasonló a mintán és az egészen ez nem valami egzakt vannak ennek tesztelésére is technikák (nagy terület) Csima Judit Előfeldolgozás, exploratory analysis 44 / 55

Előfeldolgozás, preprocessing Mintavételezés típusai egy lehetséges felosztás: egyenletes eloszlás szerinti random mintavételezés: minden elem ugyanakkora valószínűséggel kerül be, akkor jó, ha homogén az adatbázis, de ilyenkor sem árt egy permutálás a választás előtt több részre osztani a mintát, minden részből választani véletlenszerűen visszatevéses-e? Csima Judit Előfeldolgozás, exploratory analysis 45 / 55

Előfeldolgozás, preprocessing Minta mérete nyilván ne legyen nagyon nagy (összemérhető az eredetivel), mert akkor minek csináljuk de azért elég nagynak kell lennie ahhoz, hogy jól reprezentáljon ha van valami mintázat az adatokon, akkor az látszódjon a mintán is egy módszer a progresszív sampling: növelni a minta méretét, amíg az elég jó lesz, pl. predikció minősége szerint Csima Judit Előfeldolgozás, exploratory analysis 46 / 55

Előfeldolgozás, preprocessing Sample Size 8000 points 2000 Points 500 Points Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 32 Csima Judit Előfeldolgozás, exploratory analysis 47 / 55

Előfeldolgozás, preprocessing PCA és SVD mindkettő lineáris algebrai módszer vektorok a sorok, eredetileg egy n dimenziós térben az egyes oszlopok a dimenzióknak felelnek meg cél olyan koordinátarendszert találni valami alacsonyabb dimenzióban, amire levetítve a vektorokat (azaz sorokat) kevés az információvesztés ennek az alacsonyabb koordinátarendszernek a vektorai lesznek az új attribútumok így kisebb helyen elférnek az adatok (bár információvesztés van) felgyorsíthatja az algoritmusokat, ha kevesebb a paraméter Csima Judit Előfeldolgozás, exploratory analysis 48 / 55

Előfeldolgozás, preprocessing PCA a kovariancia mátrix sajátvektorait keressük meg (ennek mindig van oszlopszámnyi sajátvektora), ezek lesznek az új attribútumok az új dimenzió az lesz, hogy ezeket sajátérték alapján csökkenő sorrendbe téve hányat választok belőlük általában ez lassú, ha nagy a mátrix, de utána jól használható kisebb mátrix jön létre SVD hasonló céllal, kicsit más módszerrel talál hasonló tulajdonságú vektorokat R-ben svd() függvény jól használható Csima Judit Előfeldolgozás, exploratory analysis 49 / 55

Előfeldolgozás, preprocessing Új attribútumok bevezetése nem feltétlenül kevesebb attribútum létrehozása a cél általános cél: olyan új attribútumhalmazt találni, ami jobban használható sokszor (mindig?) emberi feladat, háttértudás kell hozzá fajtái: feature extraction: pl. képfeldolgozásnál a pixelek adatait tartalmazó nyers adatból: van-e rajta ember, van-e ilyen vagy olyan kontúr, stb. ehhez ember, vagy ember alkotta spéci algoritmus kell attribútumok kombinálása háttértudással: tömeg és térfogat helyett sűrűséggel dolgozni Csima Judit Előfeldolgozás, exploratory analysis 50 / 55

Előfeldolgozás, preprocessing Diszkretizálás Célja: folytonos változót diszkrétté alakítani ez kellhet, ha olyan algoritmust akarunk futtatni, amihez diszkrét értékű változók kellenek, pl. asszociációs szabályok kutatása, bizonyos típusú döntési fák készítése nem akarunk sok értéket nyilvántartani csak a nagyobb kategóriák a fontosak: magas, közepes, alacsony értékek minden értéket valami kategóriába akarunk sorolni lehetnek diszjunkt vagy átfedő kategoriák (felhasználástól függően) kérdés, hogy hogyan alakítjuk ki a csoportokat Csima Judit Előfeldolgozás, exploratory analysis 51 / 55

Előfeldolgozás, preprocessing Diszkretizálás, hogyan? Kérdés, hogy mire kell a diszkretizálás: ha az exploratory elemzés része (más-e a tendencia alacsony és magas értékek körében), akkor nem érdemes nagyon szofisztikált módszert használni ha a diszkretizálásra alapozunk valami algoritmust, akkor fontos lenne jól csinálni Általában jól jön az adatok hátterének ismerete, valami szakértő véleménye. Csima Judit Előfeldolgozás, exploratory analysis 52 / 55

Előfeldolgozás, preprocessing Diszkretizálás, hogyan? egyenlő darabszámú csoportokat létrehozva (általában nem jó) a folytonos változó értékészletét egyenletesen felosztva csoportosítani az elemeket (ez se biztos, hogy jó) lehet klaszterezni és a klaszterek azonosítói lesznek a diszkrét változó lehetséges értékei (jobb, de macerás: sok idő, klaszterszámot nem ismerjük mindig) Csima Judit Előfeldolgozás, exploratory analysis 53 / 55

Előfeldolgozás, preprocessing Binárissá átírás a diszkretizálás után jön, előbb diszkrét értékű változót kell létrehozni asszociációs szabályokhoz elengedhetetlen módszere: minden lehetséges diszkrét értékre egy változó, ami vagy igaz vagy hamis lehet így egy k lehetséges értékű diszkrét változóhoz k új bináris változót kell legyártani az i. változó értéke pontosan akkor 1, ha az adott sorban az eredeti változó értéke i volt Csima Judit Előfeldolgozás, exploratory analysis 54 / 55

Előfeldolgozás, preprocessing Attribútumok transzformálása Amikor már minden szép, az adatok rendben vannak, csak az a baj, hogy nem tudjuk jól ábrázolni, mert pl. vannak outlierek, amik miatt az ábra nagyon deformált lesz nem azonos skálán vannak az oszlopok: gyerekek száma vs. fizetés forintban Valami bijektív függvényt alkalmazunk: log, kivonás, osztás (normalizálás speciális eset). Csima Judit Előfeldolgozás, exploratory analysis 55 / 55