680 likes | 856 Views
Ritka események kezelése intelligens adatfeldolgozás segítségével. Autonóm és hibatűrő információs rendszerek Előadó: Kocsis Imre, fóliák: Salánki Ágnes ikocsis@ mit.bme.hu , salanki.agnes @ inf.mit.bme.hu 2013.12.02. Fontosak a szabályok…. Fontosak a szabályok…. Kivételek?. Kivételek?.
E N D
Ritka események kezelése intelligens adatfeldolgozás segítségével Autonóm és hibatűrő információs rendszerek Előadó: Kocsis Imre, fóliák: Salánki Ágnes ikocsis@mit.bme.hu, salanki.agnes@inf.mit.bme.hu 2013.12.02.
Alapfogalmak • Ritka esemény • Arányaiban ritkán fordul elő • Hasonló ok/következmény/jellemzők • Ritka? Mennyire ritka? • Outlier/anomália • Egyetlen, a többitől független adatpont • Semmilyen közös vonása nincs másokkal
Alapfogalmak • Ritka esemény • Arányaiban ritkán fordul elő • Hasonló ok/következmény/jellemzők • Ritka? Mennyire ritka? • Outlier/anomália • Egyetlen, a többitől független adatpont • Semmilyen közös vonása nincs másokkal
Ritka események a gyakorlatban – dDOS Kép forrása: http://www.csoonline.com/article/592776/the-ddos-attack-survival-guide-
R. események a gyakorlatban – SPAM detektálás A SPAM valószínűsége nagyobb A SPAM-ek száma arányaiban sokkal kisebb A SPAM valószínűsége kisebb Kép forrása: D. Conway, J.M. Whyle: Machine Learning for Hackers
R. események a gyakorlatban – csalásfelderítés Y tengely: tranzakciók száma / nap színezés: mennyire biztos a csalás? X tengely: számlavezetők Kép forrása: http://visualizeit.wordpress.com/
Felügyelt és nem felügyelt tanulás • Felügyelt tanulás • Adott néhány pontra az elvárt kimenet is • a tanuló példákból való általánosítás • Output: függvény • a meglévő mintapontokra jól képez le • megfelelően általánosítható • Nem felügyelt tanulás • Nincs meg az elvárt kimenet • Visszajelzés nélkül építi a modellt • szabályok, összefüggések keresése (ismeretfeltárás) Tanulóhalmaz – amin építjük a modellt Teszthalmaz – amin ellenőrizzük
Felügyelt és nem fel. tanulás – folyamatábra Kép forrása: http://practiceovertheory.com/blog/2010/02/15/machine-learning-who-s-the-boss/
Osztályozás alapfeladat Képosztályozás: a képen látható objektum madár vagy repülő?
Osztályozás alapfeladat Levelek osztályozása: SPAM vagy nem SPAM?
Osztályozás alapfeladat Szabályok alapján Severity osztályozása Kép forrása: http://192.9.172.90/bigadmin/features/articles/3pmi_mgmt.full.jsp
Osztályozás Feladó – ismert vagy ismeretlen? Tárgy – tartalmazza-e a luxury szót? Üzenet tartalma – term-doc. matrix • Input: (, ), ahol • változó vektor • az ún. osztálycímke • Osztályozás (klasszifikálás): • az ismert () párok alapján kitalálni az ismeretlen osztálycímkék értékét (előre megadott lehetőségek közül) SPAM?
Osztályozás – alapfeladat Osztálycímke? Attribútumok? Input? Tanuló algoritmus?
Példák osztályozási módszerekre – döntési fa • Döntési fák • Minden szinten tesztelünk egy attribútumot, az értékek alapján kettévágjuk az értékkészletet • Levelek: többségre döntünk • Milyen attribútum szerint vágunk? • Legjobb: legtöbb információt hordozza • Meddig menjünk?
Döntési fa vs diagram • Döntési diagrammal összekötni Ha bináris teljes döntési fa, lehet, hogy jobb reprezentációja is van: BDD, ROBDD. Általános eset: mivel többségi osztályra döntünk, inkább nem tanácsos
Példák osztályozási módszerekre – naiv Bayes • Bayes tétel • Naiv Bayes modell • Számoljuk ki minden . osztályra a posteriori valószínűségeket • , • stb. • Döntsünk a legnagyobbra
Példák osztályozási módszerekre – naiv Bayes • Valószínűségi képlet kifejtése: • Naiv Bayes modell: feltételezzük, hogy az egyes attribútumok egymástól függetlenek Valami konstans
Példák osztályozási módszerekre – naiv Bayes • Osztályozás menete • Az ismert osztályváltozók alapján meghatározzuk az egyszeres feltételes valószínűségeket • Kiszámítjuk a szorzat értékét • „A statisztikák szerint a SPAM levelek 45%-a tartalmazza a <HTML> taget és 20%-uk a <TABLE> taget. Ez a levél tartalmazza a <HTML> taget, de a <TABLE>-t nem. SPAM?”
Csoportosítás • Csoportosítás (clustering) – megtalálni az egymáshoz hasonló elemeket • Output: klaszterek Egymáshoz hasonló?
Csoportosítási módszerek • Középpont alapú • a pont a hozzá legközelebb lévő középpont klaszterébe tartozik • Pl. k-Means • Kapcsolat alapú • legalább egy ponthoz közelebb van a saját klaszterében, mint a többiekében • Pl. single-link • Sűrűség alapú • a klaszterek sűrűség alapján felismerhetőek • Pl. DBScan • Egyéb
Csoportosítási módszerek • Középpont alapú • Kapcsolat alapú • Sűrűség alapú • Egyéb
Csoportosítási módszerek • Középpont alapú • Kapcsolat alapú • Sűrűség alapú • Egyéb
Csoportosítási módszerek • Középpont alapú • Kapcsolat alapú • Sűrűség alapú • Egyéb
A különbség Kép forrása: Ramaswamy S , Golub T R JCO 2002;20:1932-1941
Kis kitérő: attribútumszelekció • Emlékeztető: szondakiválasztás • Függőségi mátrix: sorokban szondák, oszlopokban komponensek • Keressük azt a minimális szondahalmazt, amiben minden hibára legalább 1 szonda jelez • Általánosítás: attribútumszelekció • Bemeneti adatmátrix függőségi mátrix • Keressük azt a minimális attribútumhalmazt (vagy annak egy transzformációját), ami elegendő információt szolgáltat az adathalmaz egészéről • Mi az, amit először dobunk el?
Alapproblémák • Detektálás • Minden ritka osztályból legalább 1 reprezentáns megtalálása • Pl.: tudjuk, hogy múlt héten az egyik szolgáltatásunk kis időre leállt. Mikor? • Jellemzés • A reprezentánsok alapján a teljes ritka osztály megtalálása • Pl.: Tudjuk, hogy az adott pillanatban már nem élt a szolgáltatás, mettől meddig tartott a kiesés? • Analízis • Fontos attribútumok, amik alapján a ritkák a jövőben felfedezhetők? • Pl.: Mi okozta a leállást? Miért nem jó erre egy klasszikus osztályozás/featureselection?
Majdnem jó módszerek • Kiegyensúlyozatlan klasszifikáció • Alulmintavételezzük amit már láttunk • Anomália detektálás • Olyan különálló pontokat keresünk, amik mindegyik mástól különböznek • Klasszikus attribútumkiválasztás • Olyat keres, ami a többségire jó • Klasszikus klaszterezés • Sűrűség, kapcsolat alapú algoritmusok még akár jók is lehetnek
Kiindulási feltételek • Simaság • A többségi osztály eloszlásfüggvénye megfelelően sima • Kompaktság • A ritka osztályba tartozó elemek egymástól vett távolsága kisebb, mint a többségtől vett távolság • Ami nem kell feltételül: szeparáltság • Ha nincs: véletlen mintavételezés
Kiindulási feltételek • Simaság • A többségi osztály eloszlásfüggvénye megfelelően sima • Matematikája kell? • Kompaktság • A ritka osztályba tartozó elemek egymástól vett távolsága kisebb, mint a többségtől vett távolság • Ami nem kell feltételül: szeparáltság • Ha nincs: véletlen mintavételezés
Felügyelt Detektálás Cél: minden ritka osztályból legalább egy reprezentánst megtalálni
Feladat • Felügyelt: feltételezzük, hogy létezik orákulum • Milyen sorrendben kérdezzük meg tőle a pontokat, hogy a lehető leggyorsabban megtaláljuk a ritkákat? • Pl.: domainexpert leellenőrzi, amit mondunk neki, de minél kevesebbet kelljen manuálisan dolgozni • Variációk egy témára • Mennyi információnk van? • Milyen adatunk van? (csak attribútumok? Kapcsolatok is?)
Apriori információval,1 ritka osztály – NNDB • Adottak: • Amit keresünk: nagy lokális sűrűségváltások Módszer? Ellenőrizzük a szomszédokat! Analógia: sűrűség alapú klaszterezés vagy edge-detection a képfeldolgozásban
Algoritmus • -re , az adott ciklusban megengedhető maximális sugár • -re • Sejtett ritka elem: , amire maximális. • Ha ritka, vége. • Ha nem,,ugrás 1-re.
Apriori információval – NNDB • , na de mekkora legyen ? • Ötlet: ha a ritkák aránya , akkor legyen számítsuk ki -re a . legközelebbi elem távolságát: . • Legyen . Ha a ritkák tényleg nagyon közel vannak egymáshoz, akkor beleférnek egy körbe
Változatok • Több minor osztály? • Mint a bináris eset, csak addig kérdezünk, amíg minden osztályt meg nem találunk • Kevesebb apriori információ? • Adottak: 𝑆 és semmi más • Módszer: eloszlásbecslés, majd azon mesterséges sűrűségszámítás • Relációs kapcsolatok is adottak? • Módosítani kell a hasonlóságszámítást