Adatelemzés és adatbányászat MSc. téma Adatelemzés, statsztka elemek áttekntése Adatelemzés módszertana probléma felvetés módszer, adatok meghatározása nyers adatok adatforrás meghatározása adat tsztítás nyers adatok eredmény számítások végzése eredmények megjelenítése értékelés
Adatelemzés módszerek Elemzés célja: Az adatsor tartalmának olyan formában történő reprezentálása, amely megkönnyít a vzsgált problémakör szempontjából releváns részek felsmerését Módszerek: - lényeg kemelés (összesítő adatok) - formátum átalakítás (grafkus reprezentálás) Adatelemzés módszerek Adatelemzés nehézsége: Forrásadatok meghatározása és kemelése Adatok konzsztenca ellenőrzése Zajok kküszöbölése Módszerek használata Paraméterek meghatározása Nagy adatmennység kezelése, tömörítés Megfelelő reprezentácó kválasztása Eredmények valdálása A megfelelő elemzés megfelelően releváns és kellően nagy adatmennységen nyugszk
Adatelemzés módszerek Az elemzések rendszernt statsztka alapokon nyugszanak Módszeresség előnye: - döntéshez jogalapot ad - csökkent a bzonytalanságot Módszerek: - várható érték, szórás - eloszlások, sűrűség függvények - nterpolácók, extrapolácók - regresszó analízs A gyakorlatban több modellt s k kell próbáln a probléma megoldásához A cél: jó döntés meghozatala bzonytalan nformácók mellett Adatelemzés módszerek Statsztka alapfogalmak smétlése Adott {a } mntahalmazra értelmezhető: - emprkus átlag : = Σ a /n, - medán : - módusz : - várható érték : a - szórásnégyzet : σ = (Σ (a a ) )/ (n - ) Sokszor több populácó együttesével (mxture) kell dolgozn 3
Adatelemzés módszerek A statsztka modellek alkalmazásának előfeltétele: - zajok kszűrése (outlers) - homogén populácók vzsgálata - véletlenszerűség ellenőrzése - normál eloszlásra alakítás várható érték szórásnégyzet Normál eloszlás Adatelemzés módszerek Valószínűség változókat vezethetünk be Centráls határeloszlás tétele: Nagy n-re a mért emprkus átlagok normáls eloszlást mutatnak A x = (a a )/ σ változó N(0,) normál eloszlású lesz A N(0,) eloszlás esetén az x >.8 pontok lehetetlen eseményeknek tekntetők 4
Adatelemzés módszerek Zajok szűrése Zajok kszűrésének módszere: az elosztást N(0,)-re hozva a.5-nél nagyobb abszolút értékek zajoknak teknthetők Példa: 46, 48, 38, 45, 47, 58, 44, 45, 43, 44 46 48 38 45 47 58 44 45 43 44 0,, -7,8-0,8,, -,8-0,8 -,8 -,8 458 45,8 0,04 4,84 60,84 0,64,44 48,84 3,4 0,64 7,84 3,4 5,73333 5,07803 0,03946 0,433685 -,5376-0,577 0,36556,40498-0,35483-0,577-0,5596-0,35483 a a-a a (a-a ) σ x Adatelemzés módszerek Véletlenszerűség ellenőrzése Wald-Wolfowtz teszt: fgyel a sorozatok (runs) eloszlását (ne legyen se túl kevés, se túl sok sorozat) Induló adatsor: mérés értékek Lépések: - a átlag kszámítása - sg(a-a ) val helyettesítjük a-kat - n +, n - (elemek db), R (sorozatok száma) meghatározása - a = + n + n - /(n + + n - ) - σ = (a -)(a -)/(n + +n - -). - z = (R-a ) / σ - ha z > z 0 akkor nem véletlen a sorozat (~.5) 5
Adatelemzés módszerek Véletlenszerűség ellenőrzése Példa: 3, 5,, 7, 9, 8,, 7, 87,, 8, 4 Adatelemzés módszerek Regresszó Feladat: adott mérés pontra legjobban lleszkedő görbe megkeresése Adottak: mérés pontok, függvényosztály (paraméteresen) Feladat: a mérés pontokra legjobban lleszkedő paraméterek meghatározása Optmalzálás feladat: Célfüggvény: lleszkedés hba: eltérések négyzetösszege Optmalzálás módszerek: Dervált zérushelye Gradens módszer Sztohasztkus keresés {( x, y )} { f ( p, x)} E( p ) = ( f ( p, x ) y ) 6
Adatelemzés módszerek Lneárs regresszó többváltozós lneárs regresszó: a mérés pontokat legjobban közelítő függvény meghatározása egy függő változó feltételes várható érték becslésére szolgál E(y x x..) = F(x,x,.., α, α,..) y = F(x,x,.., α, α,..) + ε lneárs regresszó : a paraméterekben lneárs az F függvény y = α x + α x + α 3 + ε y = α x + α x + α 3 + α 4 x + α 5 x + ε a feltétel szernt ε egy 0 várható értékű, azonos paraméterű normál eloszlású Adatelemzés módszerek Lneárs regresszó a paraméterek várható értékének meghatározása a legksebb négyzetek elvével történk elem esetre: y = α + α + α 3 + ε ε = y - (a + a + a 3 ) E(ε ) = 0 Σ ε mnmáls a szélsőérték szükséges feltétele a derváltak zérus értéke a (y - (a + a + a 3 )) = 0 a (y - (a + a + a 3 )) = 0 a3 (y - (a + a + a 3 )) = 0 7
Adatelemzés módszerek egy változós esetre: Lneárs regresszó a (y - (a + a )) = 0 a (y - (a + a )) = 0 a (y + a + a + a a y a - y a ) = 0 a (a + a a y a + a - y a + y ) = 0 a (a + a a y a + a - y a + y ) = 0 a + a y = 0 a n + a y = 0 a = ( n y - y ) / (n - ) a = ( y a ) / n Adatelemzés módszerek Lneárs regresszó Mnta {(.,4.),(4.,6.), (6.,4.5)} és f(a,b,x) = ax+b 8
Statsztka próbák A statsztkusok s deáls vlágból ndulnak k. Null-hpotézs elve: a mérés eltérés csak a véletlen műve A vzsgálat tárgya: - mlyen paraméterű az deáls eloszlás? - mennyre teljesül a null-hpotézs? A mérés adatokon próbákat lehet végrehajtan a hpotézs ellenőrzésére, a hpotézs konfdenca szntjének megállapítására Az elemzés megadja, hogy mlyen konfdenca értékkel fog a paraméter egy megadott konfdenca ntervallumba esn. Adatelemzések statsztka háttere Hpotézs vzsgálat, T-eloszlás Feltétel: legyenek X független normál eloszlású változók, (µ,σ) paraméterekkel. Ekkor a mnta átlaga (n: mntaszám): X X = n mnta szórásnégyzete: ( X ) X S = n X µ Ekkor normál(0,) eloszlású: σ n ( n ) S Illetve Ch-négyzet eloszlású: Ematt T Student eloszlású lesz: σ X µ S n 9
Adatelemzések statsztka háttere Hpotézs vzsgálat, T-teszt Egyváltozós eset. - null hpotézs: az eloszlás várható értéke: µ - feladat: a tapasztalat eloszlás lleszkedk-e? - vzsgált eloszlás: t = X µ S - függetlenség tényező: n n Kétváltozós eset. Adatelemzések statsztka háttere Hpotézs vzsgálat, T-teszt A feladat adott kontroll és mérés eloszlás mellett eldönten, hogy a mérés eloszlás mennyre lleszkedk a kontrollra t = ( n ) S + ( n ) S n + n X X n + n n n Függetlenség tényező: n + n 0
Adatelemzések statsztka háttere Hpotézs vzsgálat, T-teszt T-tábla használata: - az oszlop jelöl a konfdencát - a sor jelöl a függetlenség értéket - a cella adja meg az előírt maxmum t értékek (ha a tábla érték nagyobb mnt a számított, akkor megtartjuk a hpotézst) FD 0. 0.05 0.0 -------------------------------------------- 5.0.57 4.03 6.94.45 3.7 7.89.37 3.50 9.83.6.68 0.7.09.85 30.70.04.75 5% a kockázat, hogy úgy vetjük el a hpotézst, hogy mégs gaz Adatelemzések statsztka háttere Hpotézs vzsgálat, T-teszt Adott az alább adatsor: 483, 50, 498, 496, 50, 483, 494, 49, 505, 486. Kérdés: tekntető-e 5%-os kockázat mellett a eloszlás m=500 várható értékűnek? t = X µ S n X=494, S = 8.05, µ=500, n=0, df=9 t=.36, tablazat:.6 megoldás: nem fogadható el a hpotézs
Adatelemzések statsztka háttere Hpotézs vzsgálat, T-teszt Adott az alább adatsor, két eltérő helyen élő egyedhalmaz súlyértéke: X: 5; 57; 6; 55; 64; 57; 56; 55 X: 4; 34; 33; 36; 40; 5; 3; 37; 34; 30; 38. Kérdés: tekntető-e azonosnak a két eloszlás 5%-os kockázat mellett? t = ( n ) S + ( n ) S n + n X X n + n n n X=57.5, X=34.45 n=8, n= S =5.36, S =.87 t=., táblázat=. megoldás: nem fogadható el a hpotézs Adatelemzések SQL háttere ROLLUP tag: A részletező adatok mellett a magasabb szntű összegek megadásra kerülnek SELECT deptno, job, count(*), sum(sal) FROM emp GROUP BY ROLLUP(deptno,job); DEPTNO JOB COUNT(*) SUM(SAL) --------- --------- --------- --------- 0 CLERK 300 0 MANAGER 450 0 PRESIDENT 5000 0 3 8750 0 ANALYST 6000 0 CLERK 900 0 MANAGER 975 0 5 0875
Adatelemzések SQL háttere CUBE tag: A részletező adatok mellett az összes tetszőleges szntű összegek s megadásra kerülnek ELECT deptno, job, count(*), sum(sal) FROM emp GROUP BY CUBE(deptno,job); DEPTNO JOB COUNT(*) SUM(SAL) --------- --------- --------- --------- 0 CLERK 300 0 MANAGER 450 0 PRESIDENT 5000 0 3 8750 0 CLERK 900 0 MANAGER 975 0 5 0875 CLERK 4 450 MANAGER 3 875 PRESIDENT 5000 4 905 Adatelemzések SQL háttere A számtásokat több segédopcó támogatja (CASE, al-select,..) SELECT COUNT(*) as numvalues, MAX(freqnull) as freqnull, MIN(mnval) as mnval, SUM(CASE WHEN state = mnval THEN freq ELSE 0 END) as nummnvals, MAX(maxval) as maxval, SUM(CASE WHEN state = maxval THEN freq ELSE 0 END) as nummaxvals, SUM(CASE WHEN freq = maxfreq THEN ELSE 0 END) as nummodes, FROM (SELECT state, COUNT(*) as freq FROM orders GROUP BY state) osum CROSS JOIN (SELECT MIN(freq) as mnfreq, MAX(freq) as maxfreq, MIN(state) as mnval, MAX(state) as maxval, SUM(CASE WHEN state IS NULL THEN freq ELSE 0 END) as freqnull FROM (SELECT state, COUNT(*) as freq FROM orders GROUP BY state) osum) summary 3
Adatok mportálása Excelbe Adatforrás megadása (ODBC) Adatok Külső adatok mportálása Adatbázs lekérdezés RDBMS grafkon ODBC DM ODBC drver Excel adatsor Bejelentkezes Adatok mportálása Excelbe QBE felulet vagy SQL 4
Adatok mportálása Excelbe Grafkon feleptese Dagram Excelben Parameterek Forrasadat - adattartomany - adatsor Dagram bealltasa cm tengely racsvonal jelmagyarazat felratok Mntak oszlop vonal korckk Dagram terulet formazas mntazat terulet szegely betutpus Tengely formazasa Racsok formazasa Adatsor formazasa Felratok formazasa Trendvonal felvetele 5
Dagram Excelben cc,5 ccy,5 Adatsor Lneárs (Adatsor) 0,5 0 fat opel skoda ccx Auto tpusok adata 700 600 500 400 300 fat opel skoda 00 00 0 darab atlag ar Statsztka próbák A hpotézs vzsgálat az smert normál eloszláshoz kapcsolódk Excel-ben a normsdst() függvény adja vssza az eloszlás értékét Konddenca = ABS(normsdst(z)-normsdst(-z)) 6