Adatb´any´aszati technik´ak (VISZM185) 2015 tavasz Csima Judit BME, VIK, Sz´ am´ıt´ astudom´ anyi ´ es Inform´ aci´ oelm´ eleti Tansz´ ek
2015. febru´ar 11.
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
1 / 27
Bevezet˝ o
Motiv´ aci´ o
Mi´ert ´erdekes az adatb´any´aszat?
Egyre t¨obb ´es t¨obb adat keletkezik: kereskedelem: v´as´arl´ oi kosarak, bankk´artya tranzakci´ok adatai, online v´as´arl´asok adatai webes log file-ok genome szekven´al´as (˝ ur)t´avcs¨ ovek, f´enyk´epek adatai m˝ uholdak id˝ oj´ar´asi adatai orvosi adatok
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
2 / 27
Bevezet˝ o
Motiv´ aci´ o
Mi´ert kellenek, mi´ert j´ok az algoritmusok?
o´ri´asi mennyis´eg˝ u adat: pl. genome szekven´al´as, GenBank (NCBI) n¨oveked´ese 1982: 6, 8 · 105 b´azisp´ar 2007: 8 · 108 b´azisp´ar (m´asf´el ´evente dupl´az´ odott a m´eret) 2014. augusztus: 1, 65 · 1011 (¨ ot ´ev alatt 200-szorosa lett ´es ez egyre durv´abb lesz)
teljesen rem´enytelen ebben k´ezzel megtal´alni b´armit hagyom´anyos adatfeldolgoz´asi technik´ak nem j´ ok de gyors, nagy mem´ori´aj´ u sz´am´ıt´ og´epek vannak
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
3 / 27
Bevezet˝ o
Motiv´ aci´ o
Milyen haszon sz´armazhat az adatb´any´aszatb´ol?
rejtett ¨osszef¨ ugg´esek kinyer´ese (emiatt p´enz, tudom´anyos eredm´eny, stb.) gyors, automatikus oszt´alyoz´as: emberi, szak´ert˝ oi munka kiv´alt´asa
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
4 / 27
Bevezet˝ o
Motiv´ aci´ o
N´eh´any divatos alkalmaz´as
aj´anl´o rendszerek: online v´as´arl´asok, webes b¨ ong´esz´es alapj´an oszt´alyoz´as automatikusan ember helyett, el˝ ott (csillag´aszat, diagnosztika) h´ırfigyel˝o port´alok
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
5 / 27
Bevezet˝ o
Eredete, h´ att´ er
Mi is ez?
Mi az adatb´any´aszat? nem-trivi´alis, rejtett, de hasznos(nak t˝ un˝ o) inform´aci´o kinyer´ese sokszor m´as c´elra, vagy direkt c´el n´elk¨ ul gy˝ ujt¨ ott adatokb´ol nagy adathalmazb´ol automatikusan ´ Ovatosan! Sok adatb´ol sok olyan dolog is kinyerhet˝ o, ami csak a v´eletlennek k¨ osz¨ onhet˝oen van ott. (Data mining eredetileg pejorat´ıv kifejez´es volt).
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
6 / 27
Bevezet˝ o
Eredete, h´ att´ er
´ Ovatosan!
adatok feldolgoz´asa nem mindig adatb´any´aszat le´ır´o adatelemz´es (pl. n´epsz´aml´al´asi adatok ) ¨ osszegz´ese m´eg nem adatb´any´aszat az ¨osszef¨ ugg´esek megtal´al´asa adatb´any´aszat, de: ¨osszef¨ ugg´es (korrel´aci´o) nem jelent ok-okozati ¨ osszef¨ ugg´est ok-okozati ¨osszef¨ ugg´esek felt´ar´asa ´altal´aban m´ar nem adatb´any´aszat: ahhoz randomiz´alt vizsg´alatok kellenek kontrollcsoportok felhaszn´al´as´aval, ellen˝ orz¨ ott k¨ or¨ ulm´enyek k¨ oz¨ ott
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
7 / 27
Bevezet˝ o
Eredete, h´ att´ er
Eredete, hasonl´o tudom´anyter¨uletek
machine learning (g´epi tanul´as), pattern recognition (alakfelismer´es), statisztika, adatb´aziskezel´es ezekb˝ol mind ´atvett elemeket, de ezek egyike sem j´o ¨onmag´aban a nagy adathalmazok kezel´es´ere (big data): rengeteg adat (sok sor), nagy dimenzi´osz´am (sok oszlop), heterog´en, gyakran elosztott adathalmazok, nem tiszta adatok
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
8 / 27
Alapfeladatok
Alapfeladatok El˝orejelz´es, predikci´o (prediction): n´eh´any v´altoz´ o ´ert´ekei alapj´an egy m´asik (c´el)v´altoz´o ´ert´ek´enek el˝ orejelz´ese Regresszi´ o (regression): folytonos ´ert´ek˝ u c´elv´altoz´o, supervised learning Oszt´alyoz´as (classification): diszkr´et ´ert´ek˝ u c´elv´altoz´o, supervised learning Anom´alia detekt´al´as, supervised learning
Le´ır´o m´odszerek: ember sz´am´ara ´ertelmezhet˝ o mint´azatok keres´ese az adathalmazban V´altoz´ ok k¨ oz¨ otti kapcsolat le´ır´asa, adott modell param´etereinek be´all´ıt´asa, modellv´alaszt´as Klaszterez´es (clustering): ¨ onmag´aban is ´erdekes, illetve az exploratory elemz´es r´eszek´ent is Asszoci´aci´ os szab´alyok keres´ese
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
9 / 27
Alapfeladatok
Regresszi´o
folytonos v´altoz´o ´ert´ek´et meghat´arozni a t¨ obbi v´altoz´o ´ert´ek´eb˝ol pl.: lak´asok adatai: szobasz´am, n´egyzetm´eter, van-e ablak a f¨ urd˝on, stb. alapj´an lak´as ´ara blogbejegyz´es jellemz˝ oi (kulcsszavak, hossz, stb.) alapj´an kommentsz´am el˝orejelz´es u ´j term´ek rekl´amj´ara ford´ıtott ¨ osszeg, term´ek bizonyos jellemz˝oi alapj´an v´arhat´o elad´asi adatok film adatai (romantikus, kardoz´ os, gyilkol´asz´ os, gy´art´asi k¨olts´eg, szerepl˝ok) alapj´an v´arhat´ o bev´etel vagy v´arhat´ o tetsz´esi index
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
10 / 27
Alapfeladatok
Regresszi´o
lehet line´aris ´es nem-line´aris modellt alkotni erre: line´aris regresszi´o p´eld´aul egy ilyen modell k´erd´es, hogy mik a fontos v´altoz´ ok, kellenek-e sz´armaztatott v´altoz´ok, line´aris modell kell-e, adott modellben mik a param´eterek (ez egy eg´esz nagy ter¨ ulet ¨ onmag´aban) machine learning-ben j´ ol kidolgozott elm´elet mi nem (nagyon) tanulunk err˝ ol
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
11 / 27
Alapfeladatok
Oszt´ alyoz´ as
Oszt´alyoz´as: defin´ıci´o
angolul classification supervised learning rekordok adottak, t¨obb attrib´ utummal (v´altoz´ oval) egyik v´altoz´o a c´elv´altoz´ o (target vagy class): bin´aris vagy legal´abbis diszkr´et ´ert´ek˝ u ennek ´ert´ek´et kell megj´ osolni a t¨ obbi v´altoz´ o ´ert´ek´eb˝ol: modellt kell v´alasztani ´es bel˝oni a param´etereit lehets´eges modellek: d¨ ont´esi f´ak, szab´aly alap´ u oszt´alyoz´ok, Bayes-oszt´alyoz´ok, neur´alis h´al´ ozatok c´el: olyan modellt fel´ep´ıteni, ami j´ ol jelzi el˝ ore a c´elv´altoz´o ´ert´ek´et
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
12 / 27
Alapfeladatok
Oszt´ alyoz´ as
Oszt´alyoz´as: m´odszertana
adathalmaz k´et (esetleg h´arom) r´eszre oszt´asa: training set: ezekb˝ ol az adatokb´ ol tan´ıtjuk be a modellt (param´eterek be´all´ıt´asa u ´gy, hogy a training set-en min´el kisebb legyen a hiba) test set: itt n´ezz¨ uk meg, hogy egy (a modell fel´ep´ıt´esekor nem l´atott) adathalmazon mennyire j´ ol jelez el˝ ore n´eha validation set: ha t¨ obb modellt is kipr´ ob´alunk, akkor mindegyikhez bel˝ oj¨ uk a legjobb param´etert, a bel˝ ott modelleket versenyeztetj¨ uk a validation set-en ´es a legjobbat ki´ert´ekelj¨ uk a test set-en
modell ´ert´ekel´es´ehez: kell valami sz´amszer˝ u, m´erhet˝o j´os´ag”, ez sok ” minden lehet (err˝ol k´es˝ obb, eg´esz nagy elm´elet ez is)
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
13 / 27
Alapfeladatok
Oszt´ alyoz´ as
P´elda oszt´alyoz´asra: direkt marketing online ´aruh´azban
adott v´as´arl´ot ´erdemes-e megkeresni egy u ´j term´ek direkt rekl´amj´aval (v´arhat´oan megveszi-e?) c´elv´altoz´o itt bin´aris: igen/nem az alapj´an, hogy: miket vett eddig, csal´adi ´allapot, ´eletkor, stb.
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
14 / 27
Alapfeladatok
Oszt´ alyoz´ as
P´elda oszt´alyoz´asra m´eg: csillag´aszat
rengeteg k´ep k´esz¨ ul, szak´ert˝ o ember ehhez k´epest minim´alis oszt´alyozzuk, hogy ami a k´epen van az csillag, galaxis vagy valami m´as esetleg k¨ ul¨on¨osen ´erdekes a k¨ ul¨on¨osen ´erdekeset majd megn´ezi az a kev´es szak´ert˝o m´odszer: k´epszegment´al´as, k´epekhez attrib´ utumok rendel´ese, ezek alapj´an modell´ep´ıt´es
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
15 / 27
Alapfeladatok
Oszt´ alyoz´ as
P´elda oszt´alyoz´asra m´eg: karakterfelismer´es
k´ezzel ´ırott sz´amjegy micsoda? ez nem bin´aris, hanem 10 lehets´eges ´ert´ek van tipikus megk¨ozel´ıt´es: 10 k¨ ul¨ on oszt´alyoz´ o a 10 k¨ ul¨on ´ert´ekre, mindegyikre egy val´osz´ın˝ us´eg j¨ on ki: pi val´ osz´ın˝ us´eggel az i-es sz´amjeggyel van dolgunk, v´alasszuk azt, amire pi a legnagyobb
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
16 / 27
Alapfeladatok
Oszt´ alyoz´ as
P´elda oszt´alyoz´asra m´eg: hezit´al´o u¨gyfelek felismer´ese
adott u ¨gyf´el k´esz¨ ul-e lel´epni, szolg´altat´ ot v´altani? c´elv´altoz´o itt is bin´aris: igen/nem az alapj´an, hogy milyenek az ´altala ig´enybe vett szolg´altat´asok jellemz˝oi: h´ıv´asid˝ok, h´ıv´asok darabsz´ama, mikor telefon´al, stb. training set: a szerz˝od´est felmond´ ou ¨gyfelek felmond´as el˝otti viselked´es´et le´ır´o adatok el˝ofeldolgoz´as kell
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
17 / 27
Alapfeladatok
Oszt´ alyoz´ as
P´elda oszt´alyoz´asra m´eg: spamsz˝ur˝o
adott email spam-e? c´elv´altoz´o itt is bin´aris: igen/nem az alapj´an, hogy milyen szavak fordulnak el˝ o a lev´elben (esetleg hogy honnan j¨on), van-e valami jellegzetess´ege a lev´elnek training set: egy csom´ o lev´el, amikr˝ ol tudjuk ezeket a jellemz˝oket ´es azt, hogy spamek-e a felhaszn´al´ ok szerint
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
18 / 27
Alapfeladatok
Anom´ alia detekt´ al´ as
Anom´alia detekt´al´as speci´alis oszt´alyoz´as: bin´aris c´elv´altoz´ o: fura/nem fura a fura az ritka, emiatt m´as m´ odszerek kellenek, mint egy sima oszt´alyoz´asn´al
p´elda: bankk´artya tranzakci´ ok adatai (¨ osszeg, v´as´arl´as helye, kor´abbi v´as´arl´asok adatai stb.) alapj´an eld¨ onteni, hogy ez most egy lopott k´arty´as tranzakci´o-e p´elda m´eg: data centerben sz´am´ıt´ og´ep adatai m˝ uk¨od´es k¨ozben (mem´oriahaszn´alat, processzorid˝ o tel´ıtetts´ege, disc el´er´esek sz´ama, stb.) alapj´an eld¨onteni, hogy el van-e romolva rep¨ ul˝og´ep motorok tesztel´ese: vibr´aci´ o, meleged´es, stb. alapj´an eld¨onteni, hogy ok´e-e vagy esetleg alaposabban meg kell n´ezni
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
19 / 27
Alapfeladatok
Klaszterez´ es
Klaszterez´es: defin´ıci´o
unsupervised learning: nincs c´ımk´ez´es a pontokon hasonl´os´agi m´ert´ek alapj´an (err˝ ol k´es˝ obb) csoportokba sorolja a hasonl´o pontokat c´el, hogy az egy csoportba ker¨ ul˝ ok hasonl´ obbak legyenek egym´ashoz, mint azok, akik k¨ ul¨on ker¨ ulnek klaszterek sz´am´at gyakran el˝ ore kell tudni gyakran az adathalmazzal val´ o ismerked´es r´esze k¨ ul¨on k´erd´es, hogy milyen v´altoz´ ok alapj´an klaszterez¨ unk ´es hogyan jelen´ıtj¨ uk meg a klasztereket
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
20 / 27
Alapfeladatok
Klaszterez´ es
Iris data set R-ben
> head(iris) Sep.Length 1 5.1 2 4.9 3 4.7 4 4.6 5 5.0 6 5.4
Csima Judit
Sep.Width 3.5 3.0 3.2 3.1 3.6 3.9
Pet.Length 1.4 1.4 1.3 1.5 1.4 1.7
Pet.Width 0.2 0.2 0.2 0.2 0.2 0.4
Species setosa setosa setosa setosa setosa setosa
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
21 / 27
Alapfeladatok
Klaszterez´ es
Iris klaszterez´es
6 5 4 1
2
3
Pet.Length
5 4 3 2 1
Pet.Length
6
7
Species
7
Clusters
4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 Sep.Length
Csima Judit
4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 Sep.Length
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
22 / 27
Alapfeladatok
Klaszterez´ es
Klaszterez´es p´elda: market segmentation
c´el: a v´as´arl´ok feloszt´asa csoportokra v´as´arl´asi szok´asok szerint (bark´acs´aruh´azn´al: bark´acsol´ os, kert´eszked˝ os, stb.; k¨onyv´aruh´azn´al: gyerekk¨onyvek, anime, romantikus reg´enyek, stb.) attrib´ utumok: kor´abbi v´as´arl´asok adatai, v´as´arl´ o adati (´eletkor, nem, lak´ohely, stb.) t´avols´ag, klaszterz´es j´ os´ag´anak m´er´ese: mennyire hasonl´oak az egy klaszterbe es˝o emberek v´as´arl´asai
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
23 / 27
Alapfeladatok
Klaszterez´ es
Klaszterez´es p´elda m´eg: dokumentum oszt´alyoz´as
Dokumentumok oszt´alyoz´asa u ´gy, hogy a hasonl´ o t´em´aj´ uak egy csoportba jussanak attrib´ utumok, amik alapj´an csoportos´ıtok: kulcsszavak el˝ofeldolgoz´as munk´as: mi a kulcssz´ o, minek a gyakoris´aga sz´am´ıt speci´alis alak´ u (ritka) adatm´atrix j¨ on l´etre, speci´alis technik´ak kellenek p´eld´aul a Google news szolg´altat´as
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
24 / 27
Alapfeladatok
Asszoci´ aci´ os szab´ alyok keres´ ese
Asszoci´aci´os szab´alyok: v´as´arl´oi kosarak adatai
egy rekord azt tartalmazza, hogy mit vett egyszerre egy ember (v´as´arl´oi kos´ar) pl. egy v´as´arl´as az, hogy {keny´er, tej, k´ ola, pelenka, s¨or} c´el: olyan szab´alyok fel´all´ıt´as, amik azt ´ırj´ak le, hogy ha valaki vesz A term´eket (vagy A1 , A2 , . . . Ak term´ekeket egy¨ utt) , akkor (val´osz´ın˝ uleg) vesz B-t is val´osz´ın˝ uleg: be´all´ıthat´ o param´eter, hogy mikor mondjuk ezt ´ovatosan: van sok trivi´alis szab´aly, olyanok kellenek, amik meglep˝oek, ´erdekesek
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
25 / 27
Alapfeladatok
Asszoci´ aci´ os szab´ alyok keres´ ese
Asszoci´aci´os szab´alyok mire j´ok?
Ha van egy {A, ....} → B szab´alyunk, akkor es´elyes, hogy A ´ar´at cs¨okkentve n˝o B elad´asa boltban ´aruk elhely´ese a polcokon: amiket gyakran vesznek egy¨ utt az legyen hasonl´o helyen ezzel kezd˝od¨ott az adatb´any´aszat, sokat vizsg´alt ter¨ ulet, de azt´an kiss´e elfelejt˝od¨ott mostan´aban u ´jra, mert gyakori elemhalmazok keres´ese ´erdekes sok helyen
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
26 / 27
Neh´ ezs´ egek
Mik a kih´ıv´asok?
scalability: sk´al´azhat´os´ag nagy halmazokra, azaz sok sorral is el kell tudni b´anni sok dimenzi´o: rengeteg attrib´ utum lehet heterog´en adatok, sok adatt´ıpus, speci´alis adatok adatmin˝os´eg (hib´ak, nem konzisztens adatb´azisok) elosztott sz´am´ıt´as j´o lenne privacy: ne legyenek beazonos´ıthat´ o egyedek, emberek, csak ´altal´anos szab´alyok data streams: folyamatosan j¨ ov˝ o adatok, mindenre csak egyszer n´ezhet¨ unk r´a
Csima Judit
Adatb´ any´ aszati technik´ ak (VISZM185) 2015 tavasz
27 / 27