Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 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
Fontosak a szabályok…
Kivételek?
Alapfogalmak Ritka esemény o Arányaiban ritkán fordul elő o Hasonló ok/következmény/jellemzők o Ritka? Mennyire ritka? Outlier/anomália o Egyetlen, a többitől független adatpont o Semmilyen közös vonása nincs másokkal
Sűrűségfüggvény emlékeztető
Kétdimenziós sűrűségfüggvény
Alapfogalmak Ritka esemény o Arányaiban ritkán fordul elő o Hasonló ok/következmény/jellemzők o Ritka? Mennyire ritka? Outlier/anomália o Egyetlen, a többitől független adatpont o Semmilyen közös vonása nincs másokkal
Egy dimenzióban
Két dimenzióban?
Alapfogalmak
Ritka események a gyakorlatban – dDOS Kép forrása:
R. események a gyakorlatban – SPAM detektálás Kép forrása: D. Conway, J.M. Whyle: Machine Learning for Hackers A SPAM valószínűsége kisebb A SPAM valószínűsége nagyobb A SPAM-ek száma arányaiban sokkal kisebb
R. események a gyakorlatban – csalásfelderítés Kép forrása: X tengely: számlavezetők Y tengely: tranzakciók száma / nap színezés: mennyire biztos a csalás?
Felügyelt és nem felügyelt tanulás Tanulóhalmaz – amin építjük a modellt Teszthalmaz – amin ellenőrizzük 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:
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:
Osztályozás Feladó – ismert vagy ismeretlen? Tárgy – tartalmazza-e a luxury szót? Üzenet tartalma – term-doc. matrix SPAM?
Osztályozás – alapfeladat Osztálycímke? Attribútumok? Input? Tanuló algoritmus? 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 o Minden szinten tesztelünk egy attribútumot, az értékek alapján kettévágjuk az értékkészletet o Levelek: többségre döntünk Milyen attribútum szerint vágunk? o 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 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
Valami konstans
Példák osztályozási módszerekre – naiv Bayes Osztályozás menete o Az ismert osztályváltozók alapján meghatározzuk az egyszeres feltételes valószínűségeket o Kiszámítjuk a szorzat értékét „A statisztikák szerint a SPAM levelek 45%-a tartalmazza a taget és 20%-uk a taget. Ez a levél tartalmazza a taget, de a -t nem. SPAM?”
Csoportosítás Csoportosítás (clustering) – megtalálni az egymáshoz hasonló elemeket o Output: klaszterek Egymáshoz hasonló?
Csoportosítási módszerek Középpont alapú o a pont a hozzá legközelebb lévő középpont klaszterébe tartozik o Pl. k-Means Kapcsolat alapú o legalább egy ponthoz közelebb van a saját klaszterében, mint a többiekében o Pl. single-link Sűrűség alapú o a klaszterek sűrűség alapján felismerhetőek o 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:
Kis kitérő: attribútumszelekció
Alapproblémák Detektálás o Minden ritka osztályból legalább 1 reprezentáns megtalálása o Pl.: tudjuk, hogy múlt héten az egyik szolgáltatásunk kis időre leállt. Mikor? Jellemzés o A reprezentánsok alapján a teljes ritka osztály megtalálása o Pl.: Tudjuk, hogy az adott pillanatban már nem élt a szolgáltatás, mettől meddig tartott a kiesés? Analízis o Fontos attribútumok, amik alapján a ritkák a jövőben felfedezhetők? o Pl.: Mi okozta a leállást? Miért nem jó erre egy klasszikus osztályozás/feature selection?
Majdnem jó módszerek Kiegyensúlyozatlan klasszifikáció o Alulmintavételezzük amit már láttunk Anomália detektálás o Olyan különálló pontokat keresünk, amik mindegyik mástól különböznek Klasszikus attribútumkiválasztás o Olyat keres, ami a többségire jó Klasszikus klaszterezés o Sűrűség, kapcsolat alapú algoritmusok még akár jók is lehetnek
Kiindulási feltételek Simaság o A többségi osztály eloszlásfüggvénye megfelelően sima Kompaktság o 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 o A többségi osztály eloszlásfüggvénye megfelelően sima o Matematikája kell? Kompaktság o 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.: domain expert leellenőrzi, amit mondunk neki, de minél kevesebbet kelljen manuálisan dolgozni Variációk egy témára o Mennyi információnk van? o Milyen adatunk van? (csak attribútumok? Kapcsolatok is?)
Apriori információval,1 ritka osztály – NNDB 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
Apriori információval – NNDB 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? o Mint a bináris eset, csak addig kérdezünk, amíg minden osztályt meg nem találunk Kevesebb apriori információ? o Adottak: és semmi más o Módszer: eloszlásbecslés, majd azon mesterséges sűrűségszámítás Relációs kapcsolatok is adottak? o Módosítani kell a hasonlóságszámítást
Szintetikus adat
Éles adat?
FELÜGYELET NÉLKÜLI ANALÍZIS Cél: megtalálni orákulum nélkül a ritka eseményeket és a jellemző attribútumokat
Feladat Mi van akkor, ha nincs orákulum? Input: bemeneti adathalmaz Output o Ritka események o Jellemző attribútumok Ötlet: egyébként is projektálnánk valamilyen attribútumtérbe az adathalmazt – próbáljuk ki az összes megfelelő teret is
Analízis, mint optimalizációs feladat Kompaktság: a ritka elemek közelebb vannak egymáshoz, mint a többiekhez
Partial Augmented Lagrangian Method
PALM szintetikus adatok
Palm éles adatok? Nagyon érzékeny az attribútumok skálájára o MB vs kB? o Ballooning adatok: csak 0 vagy 1, miközben néhány CPU-adat fel van szorozva 1000-rel Futásidő
KARAKTERIZÁLÁS Cél: megkeresni a ritka osztályok minden példányát
Feladat
Karakterizálás, mint optimalizációs feladat
RACH – Rare Category Characterization
Hátrányok
Alapproblémák Detektálás o Minden ritka osztályból legalább 1 reprezentáns megtalálása o Pl.: tudjuk, hogy múlt héten az egyik szolgáltatásunk kis időre leállt. Mikor? Jellemzés o A reprezentánsok alapján a teljes ritka osztály megtalálása o Pl.: Tudjuk, hogy az adott pillanatban már nem élt a szolgáltatás, mettől meddig tartott a kiesés? Analízis o Fontos attribútumok, amik alapján a ritkák a jövőben felfedezhetők? o Pl.: Mi okozta a leállást?