Adatbnyszat Osztlyozs Tovbbi mdszerek 5 fejezet Tan Steinbach
Adatbányászat: Osztályozás További módszerek 5. fejezet Tan, Steinbach, Kumar Bevezetés az adatbányászatba előadás-fóliák fordította Ispány Márton © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Logók és támogatás A tananyag a TÁMOP-4. 1. 2 -08/1/A-2009 -0046 számú Kelet-magyarországi Informatika Tananyag Tárház projekt keretében készült. A tananyagfejlesztés az Európai Unió támogatásával és az Európai Szociális Alap társfinanszírozásával valósult meg. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Osztályozási szabályok , , Ha…akkor…” szabályok összességével osztályozzuk a rekordokat l Szabály: (Feltétel) y l – ahol u Feltétel attributumok konjunkciója u y osztály címke – Baloldal: a szabály feltétele, előzménye – Jobboldal: a szabály következménye – Példák oszályozási szabályokra: u (Vértípus=Meleg) (Tojásrakás=Igen) Madarak (Adózott jövedelem < 50 K) (Visszatérítés=Igen) Adóelkerülés=Nem u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa osztályozási szabályra R 1: (Élveszülő = nem) (Tud repülni = igen) Madár R 2: (Élveszülő = nem) (Vízben él = igen) Hal R 3: (Élveszülő = igen) (Vér = meleg) Emlős R 4: (Élveszülő = nem) (Tud repülni = nem) Hüllő R 5: (Vízben él = néha) Kétéltű © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Osztályozási szabályok alkalmazása l Az r szabály lefedi az x esetet ha az eset attributumai kielégítik a szabály feltételeit. R 1: (Élveszülő = nem) (Tud repülni = igen) Madár R 2: (Élveszülő = nem) (Vízben él = igen) Hal R 3: (Élveszülő = igen) (Vér = meleg) Emlős R 4: (Élveszülő = nem) (Tud repülni = nem) Hüllő R 5: (Vízben él = néha) Kétéltű Az R 1 szabály lefedi a sólyom => madár szabályt Az R 3 szabály lefedi a grizzly => emlős szabályt © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Lefedettség és pontosság Egy szabály lefedettsége: – Azon rekordok aránya, amelyek kielégítik a szabály feltételét. l Egy szabály pontossága: – Azon rekordok aránya, amelyek egyaránt kielégítik a szabály feltételét és következ(Állapot=Nőtlen) Nem ményét. l Lefedettség = 40%, Pontosság = 50% © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Hogy működnek az osztályozási szabályok? R 1: (Élveszülő = nem) (Tud repülni = igen) Madár R 2: (Élveszülő = nem) (Vízben él = igen) Hal R 3: (Élveszülő = igen) (Vér = meleg) Emlős R 4: (Élveszülő = nem) (Tud repülni = nem) Hüllő R 5: (Vízben él = néha) Kétéltű A lemur kiváltja az R 3 szabályt, így emlősnek osztályozzuk. A teknős egyaránt kiváltja az R 4 és R 5 szabályokat. A kutyahal cápa egyik szabályt sem váltja ki. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Osztályozási szabályok jellemzése Teljesen kizáró szabályok – Egy osztályozó teljesen kizáró szabályokból áll, ha a szabályok függetlenek egymástól (a feltételek metszete üres). – Minden rekordot legfeljebb egy szabály fed le. l Kimerítő szabályok – Egy osztályozó kimerítő lefedés, ha az attributum értékek minden lehetséges kombinációját tartalmazza a feltételekben. – Minden rekordot lefed legalább egy szabály. l © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Döntési fáktól a szabályokig A szabályok teljesen kizáróak és kimerítőek. A szabály halmaz pontosan annyi információt tartalmaz mint a a fa. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Szabályok egyszerűsítése Kezdeti szabály: (Visszatérítés=Nem) (Állapot=Házas) Nem Egyszerűsített szabály: Bevezetés (Állapot=Házas) Nem az adatbányászatba © Tan, Steinbach, Kumar Fordító: Ispány Márton
Az egyszerűsítés hatása l A szabályok már nem lesznek teljesen kizáróak. – Egy rekord egynél több szabályt is kiválthat. – Megoldás? Szabályok rendezése u Rendezetlen szabályok – használjunk szavazási sémákat u l A szabályok már nem lesznek kimerítőek. – Egy rekord egyetlen szabályt sem vált ki. – Megoldás? u Használjunk egy alapértelmezett osztályt. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Rendezett szabály halmazok l A szabályokat prioritásuk szerint sorba rendezzük. – Egy rendezett szabályhalmazt döntési listának nevezünk. l Egy teszt rekordot inputként kap az osztályozó. – A legelső osztályhoz rendeljük, amelyet kivált. – Ha egyetlen szabályt sem vált ki, akkor az alapértelmezett osztályba kerül. R 1: (Élveszülő = nem) (Tud repülni = igen) Madár R 2: (Élveszülő = nem) (Vízben él = igen) Hal R 3: (Élveszülő = igen) (Vér = meleg) Emlős R 4: (Élveszülő = nem) (Tud repülni = nem) Hüllő R 5: (Vízben él = sometimes) Kétéltű © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Szabály rendező sémák l Szabály alapú rendezés – Az egyedi szabályokat minőségük alapján rendezzük. l Osztály alapú rendezés – Az egy osztályhoz tartozó szabályok együtt fordulnak elő. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Osztályozási szabályok építése l Közvetlen módszerek: Szabály kinyerés közvetlenül az adatokból. u Példák: RIPPER, CN 2, Holte 1 R módszere. u l Közvetett módszerek: Szabály kinyerés más osztályozási módszerekből (pl. döntési fák, neurális hálók stb. ). u Példa: C 4. 5 szabályok. u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Közvetlen módszer: Szekvenciális lefedés 1. 2. 3. 4. Induljunk ki az üres szabályból. Hozzunk létre egy szabályt a Learn-One-Rule függvény segítségével. Távolítsuk el azokat a tanító rekordokat, amelyeket lefed a szabály. Ismételjük a (2) és (3) lépést ameddig a megállási kritérium nem teljesül. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa szekvenciális lefedésre © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa szekvenciális lefedésre © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
A szekvenciális lefedés szempontjai l Szabály építés l Eset kizárás l Szabály kiértékelés l Leállási kritérium l Szabály tisztítás © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Szabály építés l Két általános stratégia © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példák szabály építésre l CN 2 algoritmus: – Induljunk ki az üres szabályból: {}. – Bővítsük úgy, hogy közben az entrópiát minimalizáljuk: {A}, {A, B}, … – Határozzuk meg a szabály következményét a szabály által lefedett esetek többségi osztályát véve. l RIPPER algoritmus: – Induljunk ki az üres szabályból : {} => osztály. – Bővítsük úgy, hogy a FOIL-féle információ nyereséget maximalizáljuk: R 0: {} => osztály (kezdeti szabály) u R 1: {A} => osztály (szabály a bővítés után) u Nyereség(R 0, R 1) = t [ log (p 1/(p 1+n 1)) – log (p 0/(p 0 + n 0)) ], u ahol t: R 0 és R 1 által lefedett pozitív esetek száma, p 0: R 0 által lefedett pozitív esetek száma, n 0: R 0 által lefedett negatív esetek száma, p 1: R 1 által lefedett pozitív esetek száma, n 1: R 1 által lefedett negatív esetek száma. u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Eset kizárás l Miért van szükség eset kizárásra? – Különben a következő szabály megegyezik az előzővel. l Miért töröljünk pozitív eseteket? – Biztosítsuk a következő szabály különbözőségét. l Miért töröljünk negatív eseteket? – Megelőzzük a szabály pontosságának alulbecslését. – Hasonlítsuk össze az R 2 és R 3 szabályokat az ábrán. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Szabály kiértékelés l Mérőszámok: – Pontosság n : a szabály által lefedett esetek száma – Laplace nc : a szabály által lefedett pozitív esetek száma k : osztályok száma – M-becslés © Tan, Steinbach, Kumar p : a pozitív eset apriori valószínűsége Bevezetés az adatbányászatba Fordító: Ispány Márton
Leállási feltétel és szabály tisztítás Leállási feltétel – Számoljuk ki a nyereséget. – Ha a nyereség nem szignifikáns, akkor dobjuk el az új szabályt. l Szabály tisztítás – Hasonló döntési fák utó-tisztításához. – Hiba csökkentés tisztítással: l Hagyjunk el a szabályból egy kifejezést. u Hasonlítsuk össze a tisztítás előtti és utáni hibát az ellenőrző adatállományon. u Ha a hiba javul, akkor tisztítsunk a kifejezés elhagyásával. u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
A közvetlen módszer vázlata l Építsünk egyszerű szabályt. l Távolítsunk el eseteket a szabály alapján. l Egyszerűsítsük a szabályt (ha szükséges). l Adjuk hozzá a szabályt az aktuális szabály halmazhoz. l Ismételjük a fenti lépéseket. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Közvetlen módszer: RIPPER l l Bináris feladat esetén válasszuk pozitív osztálynak az egyik és negatív osztálynak a másik osztályt. – Tanítsunk szabályokat a pozitív osztályra. – Legyen a negatív osztály az alapértelmezett osztály. Több osztályos feladat esetén: – Rendezzük az osztályokat növekvő osztály–gyakoriság szerint (azoknak az eseteknek az aránya, melyek egy osztályhoz tartoznak). – Először tanítsunk egy szabály halmazt a legkisebb osztályra, kezeljük a maradékot negatív osztályként. – Ismételjük meg a következő legkisebb osztállyal mint pozitív osztály. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Közvetlen módszer: RIPPER l Szabály építés: – Induljunk ki az üres szabályból. – Bővítsük addig míg a FOIL információ nyereség javul. – Álljunk meg amikor a szabály tovább már nem fedi le a negatív eseteket. – Közvetlenül tisztítsuk a szabályt járulékos hiba tisztítással. – A tisztítás mérőszáma: v = (p-n)/(p+n) p: a szabály által lefedett pozitív esetek száma az ellenőrző adatállományban, u n: a szabály által lefedett negatív esetek száma az ellenőrző adatállományban. u – Tisztítási módszer: töröljük a feltételek olyan véges © Tan, Steinbach, Kumar Bevezetés az adatbányászatba v-t. Fordító: Ispány Márton sorozatát, amely maximalizálja
Közvetlen módszer: RIPPER l Szabály halmaz építése: – Használjunk szekvenciálisan lefedő algoritmust. Keressük meg azt a legjobb szabályt, amely lefedi a pozitív esetek aktuális halmazát. u Elimináljuk a szabály által lefedett pozitív és negatív eseteket. u – Mindig mikor egy szabállyal bővítjük a szabály halmazt számoljuk ki az új leíró hosszt. Álljunk le az új szabály hozzáadásával, ha annak leíró hossza d bittel nagyobb mint az eddig kapott legkisebb leíróBevezetés hossz. © Tan, Steinbach, Kumar az adatbányászatba Fordító: Ispány Márton u
Közvetlen módszer: RIPPER l Optimalizáljuk a szabályhalmazt: – Az R szabályhalmaz minden r szabályára u Tekintsünk 2 alternatív szabályt: – Helyettesítő szabály (r*): építsünk új szabályt elölről. – Módosított szabály (r’): bővítsünk az r kiterjesztésével. Hasonlítsuk össze az r szabályhalmazt az r* és r’ szabályhalmazokkal. u Válasszuk azt a a szabályhalmazt, amely minimális lesz az MDL elv alapján. u – Ismételjük a szabály generálást és optimalizálást a fennmaradó pozitív esetekre. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Közvetett módszerek © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Közvetett módszerek: C 4. 5 szabályok Nyerjünk ki szabályokat egy tisztítatlan (teljes) döntési fából. l Minden r: A y szabályra – Tekintsünk egy r’: A’ y alternatív szabályt, ahol A’-t úgy kapjuk, hogy A-ból törlünk egy kifejezést. – Hasonlítsuk össze az r és az összes r’ pesszimista hiba rátáját. – Tisztítsunk amennyiben egy r’-nek kisebb a pesszimista hiba rátája. – Ismételjük amíg már nem tudjuk javítani az általánosítási hibát. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton l
Közvetett módszer: C 4. 5 szabályok l A szabályok rendezése helyett rendezzük szabályok részhalmazait (osztály rendezés). – Minden részhalmaz szabályoknak egy olyan összessége, melynek következménye ugyanaz (osztály). – Számoljuk ki minden részhalmaz leíró hosszát. Leíró hossz = L(error) + g L(model), u g egy olyan paraméter, amely figyelembe veszi a szabályhalmazban lévő redundáns attributumokat (alapérték = 0. 5). u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Összevetés: C 4. 5, C 4. 5 szabályok, RIPPER C 4. 5 rules: (Élveszülő=Nem, Tud úszni=Igen) Madár (Élveszülő=Nem, Vízben él=Igen) Hal (Élveszülő=Igen) Emlős (Élveszülő=Nem, Tud repülni=Nem, Vízben él=Nem) Hüllő ( ) Kétéltű RIPPER: (Vízben él=Igen) Hal (Van lába=Nem) Hüllő (Élveszülő=Nem, Tud repülni=Nem, Vízben él=Nem) Hüllő (Tud repülni=Igen, Élveszülő=Nem) Madár () Emlős © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Összevetés: C 4. 5, C 4. 5 szabályok, RIPPER C 4. 5 és C 4. 5 szabályok: RIPPER: © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Osztályozási szabályok előnyei Legalább annyira kifejezőek mint a döntési fák. l Könnyen interpretálhatóak. l Könnyen generálhatóak. l Gyorsan osztályozhatóak általuk az új esetek. l Hatékonyságuk összevethető a döntési fákéval. l © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Eset alapú osztályozók • Letároljuk a tanító rekordokat • A tanító rekordokat használjuk az új esetek osztályainak előrejelzésére © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Eset alapú osztályozók l Példák: – Rote tanuló algoritmusa A teljes tanító adatállományt memorizálja, és csak akkor hajtja végre az osztályozást, ha az új rekord attributum értékei pontosan illeszkednek egy tanító esetre. u – Legközelebbi szomszéd Használjuk a k , , legközelebbi” pontot (legközelebbi szomszédok) az osztályozás végrehajtására. u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l Alapgondolat: – Ha valami úgy totyog mint egy kacsa, úgy hápog mint egy kacsa, akkor az valószínűleg egy kacsa. Számoljuk ki a távolságot Tanító rekordok © Tan, Steinbach, Kumar Teszt rekord Válasszuk ki a k , , legközelebbi” rekordot Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l Három dolog szükséges – Rekordok egy halmaza – A rekordok közötti távolság számolására szolgáló metrika – A k szám, a meghatározandó legközelebbi szomszédok száma l Egy új rekord osztályozása: – Számoljuk ki a távolságot a többi tanító rekordtól. – Határozzuk meg a k legközelebbi szomszédot. – Hsználjuk a legközelebbi szomszédok osztálycimkéit az új rekord besorolására (pl. többségi szavazást véve). © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
A legközelebbi szomszéd definíciója Az x rekord k legközelebbi szomszédja azok a rekordok, melyek távolsága x-től a k legkisebb távolság. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
1 legközelebbi szomszéd Voronoi diagram © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l Számoljuk ki két pont távolságát: – Euklideszi távolság l A legközelebbi szomszédok alapján határozzuk meg az osztályt: – Vegyük a többségi osztályt a k szomszéd közül. – Súlyozzuk a szavazatokat a távolságnak megfelelően. u súly: w = 1/d 2 © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l A k érték megválasztása: – Ha k túl kicsi, akkor a módszer érzékeny a hibás rekordokra. – Ha k túl nagy, akkor a szomszédság más osztálybeli pontokat is tartalmazhat. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l Skálázási szempontok – Az attributumokat átskálázhatjuk így előzve meg azt, hogy egy attributum dominálja a távolságot. – Példa: Egy személy magassága 1. 5 m és 1. 8 m között van. u Egy személy súlya 90 lb és 300 lb között van. u Egy személy bevétele $10 K és $1 M között van. u © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l Problémák az euklideszi távolsággal: – Sok dimenziós adatok u dimenzió probléma – A természetes szemlélettel ellenkező eredményt is adhat. 1111110 vagy 1000000 0111111 0000001 d = 1. 4142 u Megoldás: Normalizáljuk a vektorokat! © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Legközelebbi szomszéd osztályozók l A legközelebbi szomszéd osztályozók lusta tanuló algoritmusok. – Nem építenek explicit modelleket. – Mások mint a mohó tanító algoritmusok, ld. döntési fák és osztályozási szabályok. – Az új rekordok osztályozása viszonylag költséges. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa: PEBLS l PEBLS: Párhuzamos példa alapú tanuló rendszer (Parallel Examplar-Based Learning System, Cost & Salzberg) – Egyaránt működik folytonos és kategórikus változókkal. Kategórikus változóknál két érték távolságát a módosított értékek differenciája metrikával (MVDM) számoljuk. u – Minden rekordhoz egy súlyt rendel. – A legközelebbi szomszédok száma: k = 1. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa: PEBLS Két kategórikus érték távolsága: d(Nőtlen, Házas) = | 2/4 – 0/4 | + | 2/4 – 4/4 | = 1 d(Nőtlen, Elvált) = | 2/4 – 1/2 | + | 2/4 – 1/2 | = 0 d(Házas, Elvált) = | 0/4 – 1/2 | + | 4/4 – 1/2 | = 1 d(Visszatérítés=Igen, Visszatérítés=Nem) = | 0/3 – 3/7 | + | 3/3 – 4/7 | = 6/7 Családi állapot Visszatérítés Elvált Osztály Igen Nem 0 1 Igen 0 3 4 1 Nem 3 4 Osztály Nőtlen Házas Igen 2 Nem 2 © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa: PEBLS Az X és Y rekordok közötti távolság: ahol: w. X 1 ha X az esetek többségében pontos előrejelzést ad w. X > 1 ha © Tan, Steinbach, Kumar X nem ad megbízható előrejelzést Bevezetés az adatbányászatba Fordító: Ispány Márton
Bayes osztályozó Egy valószínűségszámítási módszer osztályozási problémák megoldására. l Feltételes valószínűség: l l Bayes tétel: © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa a Bayes tételre l Adottak: – Az orvosok tudják, hogy az agyhártyagyulladás az esetek 50% -ban nyakfájást okoz. – Annak valószínűsége, hogy egy páciensnek agyhártyagyulladása van 1/50000. – Annak valószínűsége, hogy egy páciensnek nyakfájása van 1/20. l Ha egy páciensnek nyakfájása van, akkor mi annak a valószínűsége, hogy agyhártyagyulladásban szenved? © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Bayes osztályozók l Tekintsük valószínűségi változónak az összes attributumot és a cél (osztály) változót. l Legyen adott egy rekord az (A 1, A 2, …, An) attributumértékekkel – A cél a C osztályozó változó előrejelzése. – Azt az értékét keressük C-nek, amely maximalizálja P(C| A 1, A 2, …, An )-t. Tudjuk-e közvetlenül becsülni P(C| A 1, A 2, …, An )-t adatokból? © az Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton l
Bayes osztályozók l Megközelítés: – Számoljuk ki a P(C | A 1, A 2, …, An) poszteriori valószínűséget minden C értékre a Bayes tétellel. – Válasszuk azt a C értéket, amely maximalizálja P(C | A 1, A 2, …, An)-t. – Ekvivalens annak a C értéknek megtalálásával, mely maximalizálja P(A 1, A 2, …, An|C) P(C)-t. l Hogyan becsüljük P(A 1, A 2, …, An | C )-t? © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Bayes osztályozók l Tételezzünk fel függetlenséget az Ai attributumok között ha az osztály adott: – P(A 1, A 2, …, An |C) = P(A 1| Cj) P(A 2| Cj)… P(An| Cj) – Az P(Ai| Cj) valószínűséget becsülhetjük minden Ai és Cj esetén. – Egy új rekord a Cj osztályba kerül ha a P(Cj) P(Ai| Cj) maximális. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Hogyan becsüljünk valószínűséget? l Osztály: P(C) = Nc/N – Pl. P(Nem) = 7/10 P(Igen) = 3/10 l Diszkrét attributumokra: P(Ai | Ck) = |Aik|/ Nc k – ahol |Aik| azon esetek száma, ahol az Ai attributumérték fordult elő és a Ck osztályba tartoznak. – Példák: P(Állapot=Házas|Nem) = 4/7 P(Visszatérítés=Igen|Igen)=0 © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Hogyan becsüljünk valószínűséget? l Folytonos attributumokra: – Diszkretizáljunk résztartományokra osztva: egy sorrendi attributum értéket rendelünk részenként, u megsérti a függetlenségi feltételezést. u – Bináris vágás: (A < v) vagy (A > v) u válasszuk a két ág egyikét mint új attributumot. – Valószínűségi sűrűségbecslés: Tegyük fel, hogy az attributum normális eloszlású. u Használjuk az adatokat az eloszlás paramétereinek becslésére (pl. átlag és szórás). u Ha ismert a valószínűségi eloszlás, akkor használ© Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton hatjuk a P(Ai|c) feltételes valószínűség becslésére. u
Hogyan becsüljünk valószínűséget? l Normális eloszlás: – minden (Ai, ci) párra l © Tan, Steinbach, Kumar (Jövedelem, Osztály=Nem): – Ha Osztály=Nem Bevezetés az adatbányászatba u minta átlag = 110 u minta variancia = 2975 Fordító: Ispány Márton
Példa naív Bayes osztályozóra Adott az alábbi teszt rekord: l P(X|Osztály=Nem) = P(Vtér=Nem| Osztály=Nem) P(Házas| Osztály=Nem) P(Jöv=120 K| Osztály=Nem) = 4/7 0. 0072 = 0. 0024 l P(X|Osztály=Igen) = P(Vtér=Nem| Osztály=Igen) P(Házas| Osztály=Igen) P(Jöv=120 K| Osztály=Igen) = 1 0 1. 2 10 -9 = 0 Mivel P(X|Nem)P(Nem) > P(X|Igen)P(Igen) ezért P(Nem|X) > P(Igen|X) => Osztály = Nem © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Bayes osztályozó Ha a feltételes valószínűségek egyike 0, akkor az egész kifejezés 0. l Valószínűségi becslés: l c: osztályok száma p: prior valószínűség m: paraméter © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa naív Bayes osztályozóra A: attributumok M: emlősök N: nem emlősök P(A|M)P(M) > P(A|N)P(N) => emlős © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Összegzés: Naív Bayes l Robusztus izolált hibás pontokra. l Kezeli a hiányzó értékeket a valószínűségek becslésénél ezen esetek figyelmen kívül hagyásával. l Robusztus az irreleváns attributumokra. l A függetlenségi feltétel nem teljesül egyes attributumokra. – Használjunk más módszereket, Bayes hálók (Bayesian Belief Networks, BBN). © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Mesterséges neurális hálók (ANN) Az Y output 1 ha a három input közül legalább kettő 1. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Mesterséges neurális hálók (ANN) © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Mesterséges neurális hálók (MNH) l A modell egymással összekötött csúcsok és súlyozott élek együttese. l Az output csúcs összegzi az hozzátartozó input értékeket az éleken lévő súlyok szerint. l Perceptron modell Vessük össze az output csúcsban kapott értéket egy t küszöb számmal. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba vagy Fordító: Ispány Márton
A MNH általános szerkezete Egy MNH tanítása a neronjai súlyának meghatározását jelenti. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Algoritmus MNH tanítására l Inicializáljuk a (w 0, w 1, …, wk) súlyokat. l Módosítsuk úgy a súlyokat, hogy az MNH outputja minél jobban egyezzen meg a tanító esetek osztály címkéivel. – Célfüggvény: – Határozzuk meg azon wi súlyokat, amelyek minimalizálják a fenti célfüggvényt. u Pl. hiba visszacsatolás algoritmusa. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l Keressünk olyan hipersíkot (döntési határ), amely elválasztja az adatokat. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l Egy lehetséges megoldás. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l Egy másik lehetséges megoldás. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l További lehetséges megoldások. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) Melyik a jobb? B 1 vagy B 2? l Hogyan definiálhatjuk a. Bevezetés jobb fogalmát? © Tan, Steinbach, Kumar az adatbányászatba l Fordító: Ispány Márton
Támasz vektorgépek (SVM) Keressük azt a hipersíkot, mely maximalizálja a margót => B 1 jobb. Kumar mint B 2. © Tan, Steinbach, Bevezetés az adatbányászatba Fordító: Ispány Márton l
Támasz vektorgépek (SVM) © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l Maximalizálni akarjuk: – Ez ekvivalens minimalizálni: – De eleget kell tenni a következő kényszereknek: u Ez kényszerfeltétel melletti optimalizációs feladat. – Numerikus módszerek (pl. kvadratikus programozás). © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l Mi van ha a feladat nem lineárisan szeparálható? © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Támasz vektorgépek (SVM) l Mi van ha a feladat nem lineárisan szeparálható? – Vezessünk be lötyögő változókat u Minimalizálni kell: u Kényszerfeltételek: © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Nemlineáris támasz vektorgépek l Mi van ha a döntési határ nem lineáris? © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Nemlineáris támasz vektorgépek l Transzformáljuk az adatokat egy magasabb dimenziójú térbe (kernel trükk). © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Együttes módszerek l Osztályozók egy halmazát hozzuk létre a tanító állományon. l Egy új rekord osztályát úgy jelezzük előre, hogy a sok osztályozó által kapott előrejelzéseket összesítjük. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Általános ötlet © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Miért működhet? l Tegyük fel, hogy adott 25 egyszerű osztályozónk. – Minden osztályozó hibája = 0. 35. – Tegyük fel, hogy az osztályozók függetlenek. – Annak valószínűsége, hogy az együttes osztályozó hibás döntést hoz: © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példák együttes módszerekre l Hogyan hozhatjuk létre osztályozók együttesét? – Bagging (bootstrap aggregating) – Boosting (gyorsítás) © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Bagging l Visszatevéses mintavétel l Minden bootstrap mintán építsünk fel egy osztályozót. l Minden egyes rekordot (1 – 1/n)n valószínűséggel választunk ki. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Boosting (gyorsítás) l Egy olyan iteratív eljárás, amely a tanító rekordok eloszlását adaptívan változtatva a korábban tévesen osztályozott rekordokra fókuszál. – Kezdetben mind az összes N rekord egyenlő súlyt kap. – A bagging-gel szemben a súlyok változhatnak egy iterációs ciklus befejeztével. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Boosting (gyorsítás) A rosszul osztályozott rekordoknak nőni fog a súlya. l A helyesen osztályozott rekordoknak csökkenni fog a súlya. l • A 4. rekordot nehéz osztályozni • A súlya nő, ezért nagyobb eséllyel választjuk ki ismét a következő körökben. © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa: Ada. Boost l Alap osztályozók: C 1, C 2, …, CT l Hiba ráta: l Az osztályozó fontossága: © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Példa: Ada. Boost l A súlyok frissítése: Ha bármelyik közbenső körben a hiba 50% fölé megy, akkor a súlyok visszaállnak 1/n-re, és a mintavételi folyamat megismétlődik. l Osztályozás: l © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
Az Ada. Boost szemléltetése A minta pontok kezdeti súlyai © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Tanítási pontok Fordító: Ispány Márton
Az Ada. Boost szemléltetése © Tan, Steinbach, Kumar Bevezetés az adatbányászatba Fordító: Ispány Márton
- Slides: 89