Fogalom tanuls febr 26 Plda fogalom tanulsra Fogalom
Fogalom tanulás febr. 26.
Példa fogalom tanulására Fogalom: ”azok a napok, amikor teniszre alkalmas lesz az idő” Égbolt Napos Felhős Esős Hőm. Forró Enyhe Párat Magas Szél Gyenge Erős Gyenge Tenisz? Nem Igen
Hipotézis • A h hipotézis a jellemzőkre adott feltételek diszjunktív normálformája • Egy feltétel lehet: – Egy konkrét érték : pl. Víz = Meleg – Bármilyen érték : Víz = ? • Példa: h hipotézis Égbolt Hőm Napos ? Pára ? Szél Erős
Döntési fák
Döntési fa példa Égbolt Napos Páratartam Magas Nem Felhős Esős Igen Normál Igen Szél Erős Nem Gyenge Igen
Égbolt Napos Páratartam Magas Nem Felhős Esős Belső csúcsok: jellemzők tesztjei Normál Igen Minden elágazás megfelel egy attribútum értéknek Levelek: osztályozás (címkék)
Égbolt Hőmérséklet Páratartam Szél Tenisz Napos Forró Magas Gyenge ? Égbolt Napos Páratartam Magas Nem Felhős Esős Igen Normál Igen Szél Erős Nem Gyenge Igen
Döntési fák és konjunkciók Égbolt=Napos Szél=Gyenge Égbolt Napos Szél Erős Nem Felhős Nem Gyenge Igen Esős Nem
Döntési fák és diszjunkciók Égbolt=Napos Szél=Gyenge Égbolt Napos Igen Felhős Esős Szél Erős Nem Szél Gyenge Igen Erős Gyenge Nem Igen
Döntési fák és XOR Égbolt=Napos XOR Szél=Gyenge Égbolt Napos Szél Erős Igen Felhős Esős Szél Gyenge Erős Nem Szél Gyenge Erős Gyenge Igen Nem Igen
Döntési fák • a döntési fák konjunkciók diszjunkcióját reprezentálják Égbolt Napos Páratartam Magas Nem Felhős Esős Igen Normál Igen Szél Erős Nem (Égbolt=Napos Páratartam=Normál) (Égbolt=Felhős) (Égbolt=Esős Szél=Gyenge) Gyenge Igen
Döntési fák előnyei Múlt heti Bayes osztályozókhoz képest • Ekzakt összefüggés jellemzők közt • Ember által értelmezhető modell • Hiányzó attribútum értékek
A döntési fák tanítása az ID 3 algoritmus 1. Legyen az összes példa a fa gyökércsúcsához rendelve és vizsgáljuk ezt a csúcsot (n) 2. Keressük meg a legjobb döntési attribútum n-hez (A) 3. Rendeljük A-t mint döntési attribútumot n-hez és A minden értékéhez rendeljünk egy élt 4. Válasszuk ki minden élhez az adott élhez tartozó példákat: Ha minden ilyen példa azonos kategóriába sorolt, levélhez jutottunk, és megkaptuk a címkét. Különben ismételjük az eljárást erre a csúcsra (goto 2).
Melyik attribútum a (leg)jobb? [29+, 35 -] A 1=? Igaz [21+, 5 -] A 2=? [29+, 35 -] Hamis [8+, 30 -] Igaz [18+, 33 -] Hamis [11+, 2 -]
Entrópia • • S legyen minták egy halmaza p+ a pozitív példák aránya p- a negatív példák aránya Az entrópia az S „rendezetlenségét”, „bizonytalanságát” méri Entrópia(S) = -p+ log 2 p+ - p- log 2 p-
Entrópia • Entrópia(S)= az S véletlenül választott elemének (legjobb kódolás melletti) kódolásához szükséges bitek várható értéke • Információelmélet: az optimális kód hossza p valószínűségű üzenetnél -log 2 p bit Entrópia(S) = -p+ log 2 p+ - p- log 2 p(log 0 = 0)
Információ nyereség • INy(S, A): az entrópia várható csökkenése az A attribútum szerinti besorolásnál INy(S, A)=Entrópia(S)- v érték(A) |Sv|/|S| Entrópia(Sv) Entrópia([29+, 35 -]) = -29/64 log 2 29/64 – 35/64 log 2 35/64 = 0. 99 [29+, 35 -] A 1=? Igaz [21+, 5 -] A 2=? [29+, 35 -] Hamis [8+, 30 -] Igaz [18+, 33 -] Hamis [11+, 2 -]
Információ nyereség Entrópia([21+, 5 -]) = 0. 71 Entrópia([8+, 30 -]) = 0. 74 INy(S, A 1)=Entrópia(S) -26/64*Entrópia([21+, 5 -]) -38/64*Entrópia([8+, 30 -]) =0. 27 Entrópia([18+, 33 -]) = 0. 94 Entrópia([11+, 2 -]) = 0. 62 INy(S, A 2)=Entrópia(S) -51/64*Entrópia([18+, 33 -]) -13/64*Entrópia([11+, 2 -]) =0. 12 [29+, 35 -] A 1=? Igaz [21+, 5 -] A 2=? [29+, 35 -] Hamis [8+, 30 -] Igaz [18+, 33 -] Hamis [11+, 2 -]
Tanító adatbázis Nap Égbolt Hőm. Párat Szél Tenisz? D 1 D 2 D 3 D 4 D 5 D 6 D 7 D 8 D 9 D 10 D 11 D 12 D 13 D 14 Napos Felhős Esős Felhős Napos Esős Napos Felhős Esős Forró Enyhe Hideg Enyhe Forró Enyhe Magas Normál Normál Magas Gyenge Erős Gyenge Gyenge Erős Gyenge Erős Nem Igen Igen Igen Nem
Példa S=[9+, 5 -] E=0. 940 Páratartam Magas [3+, 4 -] E=0. 985 Normál Szél Gyenge Erős [6+, 1 -] [6+, 2 -] E=0. 592 E=0. 811 E=1. 0 INy(S, Szél) =0. 940 -(8/14)*0. 811 – (6/14)*1. 0=0. 048 INy(S, Páratartam) =0. 940 -(7/14)*0. 985 – (7/14)*0. 592=0. 151 [3+, 3 -]
Példa S=[9+, 5 -] E=0. 940 Égbolt Napos Felhős Hőm ? Esős [2+, 3 -] [4+, 0] [3+, 2 -] E=0. 971 E=0. 0 E=0. 971 INy(S, Égbolt) =0. 940 -(5/14)*0. 971 -(4/14)*0. 0 – (5/14)*0. 0971=0. 247
ID 3 Algoritmus [D 1, D 2, …, D 14] [9+, 5 -] Égbolt Napos Felhős Esős SNapos=[D 1, D 2, D 8, D 9, D 11] [D 3, D 7, D 12, D 13] [D 4, D 5, D 6, D 10, D 14] [2+, 3 -] [4+, 0 -] [3+, 2 -] ? Igen ? INy(SNapos , Páratartam)=0. 971 -(3/5)0. 0 – 2/5(0. 0) = 0. 971 INy(SNapos , Hőm. )=0. 971 -(2/5)0. 0 – 2/5(1. 0)-(1/5)0. 0 = 0. 570 INy(SNapos , Szél)=0. 971= -(2/5)1. 0 – 3/5(0. 918) = 0. 019
Égbolt Napos Felhős Esős Igen Páratartam Szél [D 3, D 7, D 12, D 13] Magas Nem [D 1, D 2, D 8] Normál Igen [D 9, D 11] Erős Nem [D 6, D 10, D 14] Gyenge Igen [D 4, D 5]
A fa átalakítása szabályokká Égbolt Napos Páratartam Magas Nem R 1: R 2: R 3: R 4: R 5: Ha Ha Ha Felhős Esős Igen Normál Igen Szél Erős Nem Gyenge Igen (Égbolt=Napos) (Páratartam=Magas) akkor Tenisz=Nem (Égbolt=Napos) (Páratartam=Normál) akkor Tenisz=Igen (Égbolt=Felhős) akkor Tenisz=Igen (Égbolt=Esős) (Szél=Erős) akkor Tenisz=Nem (Égbolt=Esős) (Szél=Gyenge) akkor Tenisz=Igen
Az ID 3 algoritmus és a hipotézistér + - + A 2 A 1 + - + - + + - - - + A 2 - A 3 + - A 2 - + - + A 4
Az ID 3 algoritmus és a hipotézistér • egyszerűtől a bonyolultig hegymászó algoritmus • A hipotézistér teljes (célfogalom biztosan benne van) • Egyetlen hipotézis a kimenete • A kiválasztott attribútumoknál nincs backtrack (mohó) → Lokális minimum (szuboptimális elválasztások) • Előnyben részesíti a kisebb fákat – A nagyobb információnyereségű attribútumokat a gyökér közelébe teszi
ID 3 → C 4. 5 • • INy. Arany() Folytonos jellemzők kezelése Hiányos attribútumértékek Jellemzők költségekkel • Vágás
Sokértékű attribútumok • Probléma: ha egy attribútumnak sok lehetséges értéke van, az INy őt választja • Pl. ha a dátum-napot választjuk, akkor egyelemű halmazokat kapunk INy. Arany (Gain. Ratio): INy. Arany(S, A) = INy(S, A) / Feloszt(S, A), ahol Feloszt(S, A) = - i=1. . c |Si|/|S| log 2 |Si|/|S| ahol Si az a részhalmaz, ahol A értéke vi
Folytonos attribútumok A folytonos attribútumból diszkrétet csinálunk • Hőmérséklet=240 C, Hőmérséklet=270 C • (Hőmérséklet > 20. 00 C) = {igaz, hamis} Hogyan válasszuk a küszöböt? Hőmérséklet 150 C 180 C 190 C 220 C 240 C 270 C Tenisz Nem Igen Nem
Hiányos attribútumértékek • Tanításnál: ha az n csúcs A-t teszteli használjuk – A leggyakoribb értékét n-ben vagy – A leggyakoribb értékét n-ben az azonos osztálycímkéjű egyedek közt vagy – A értékeinek várható értékét (becsülve n-ben) • Predikciónál – minden lehetséges értékre érjünk le levélig – válasszuk a legvalószínűbb levél kategóriáját
Attribútumok költségekkel Példa: • Orvosi diagnózis : vérteszt 10000 Ft • Robotika: szélesség meghatározása 23 mp Hogyan tanulnunk alacsony költségű döntési fát? Pl: INy 2(S, A)/Költség(A) vagy (2 INy(S, A)-1)/(Költség(A)+1)w w [0, 1]
Túlillesztés
Hibacsökkentő vágás • Túlillesztés elkerülése a döntési fáknál • Ne növeljük a fát, ha a különbségek már nem lényegesek • A végső fát vágjuk vissza
Vágás (nyesés, pruning) Bontsuk az adatokat tanító és validáló részre. A következőket tegyük, amíg a vágás javít: 1. Értékeljük minden lehetséges elágazás (és utódai) következményét a validáló halmazon 2. Mohón távolítsuk el azt, amelyik a legjobban növeli a validáló halmazon a pontosságot Létrejönnek (a tanító adatbázis alapján) inhomogén levelek.
A gépi tanulás általános problémái
Az általánosítási képesség túltanulás torzítás-variancia dilemma
Túlillesztés (túltanulás) A h H hipotézis túlilleszti a tanító halmazt, ha van olyan h’ H hipotézis: hibatanító(h) < hibatanító(h’) és hiba. X(h) > hiba. X(h’)
Occam borotvája „Adott jelenséget egyformán jól leíró magyarázat közül azt kell választani, amelyik az egyszerűbb!” – Kevesebb rövidebb, mint hosszabb hipotézis – Ha egy rövid hipotézis illeszkedik az adatokra, akkor nem valószínű, hogy ez véletlenül van – Egy hosszú hipotézisnél ez véletlen is lehet De – Sokféleképpen definiálhatunk rövid hipotéziseket – Az opt. hipotézis nagyságát nem ismerjük
A torzítás-variancia dilemma • F(x) függvényt akarjuk megtanulni zajos mintából (regresszió) • g(x; D) a tanult modell • Több adatbázison tanuljunk! • Túltanulás=kis torzítás, de nagy variancia
© Ethem Alpaydin: Introduction to Machine Learning. 2 nd edition (2010)
© Ethem Alpaydin: Introduction to Machine Learning. 2 nd edition (2010)
„általánosítási készség” paraméter • Minden tanuló algoritmusnak van egy –vagy néhány– metaparamétere amivel az általánosítási készségét szabályozhatjuk (torzítás/variancia finomhangolás) – döntési fa: vágás mértéke – k. NN: k – Parzen-ablak: ablakméret – Naive Bayes: m-becslés
A dimenzionalitás átka
A jellemzőtér méretének hatásai Az osztályozás pontossága erősen függ a jellemzők számától és a rendelkezésre álló tanítópéldák mennyiségétől
Egy példa, ahol az új jellemzők segítenek: 1 -2 -3 jellemző esetén egyre kisebb az átfedés 7 Pattern Classification, Chapter 3 45 7
A dimenzionalitás átka • Ha d=8 és 10 részre osztjuk a jellemzőket 108 régióban kell becsülnünk a valószínűséget (ha nincs 108 példánk akkor sok üres lesz) • Mit jelent a „közelség” d=1000 esetén? • A gyakorlatban gyakran tapasztaljuk, hogy a jellemzőszám növelésével romlik az eredmény: – rossz modellt választottunk, – illetve egyre nehezebb pontosan becsülni a paramétereket a véges számú példából “Curse of dimensionality”
Felügyelt tanulók pontosságának becslése a gyakorlatban avagy modellszelekció
Felügyelt tanulók pontosságának becslése • Egy modell/hipotézis ismeretlen mintákon való pontosságát becsli • Alternatív hipotézisek legjobbikának kiválasztását segítheti, pl: – Döntési fák vágása – Gépi tanuló modell választása – Tulajdonságtér kiválasztása
Kivétel módszer (leave-out) A D = {(v 1, y 1), …, (vn, yn)} halmazt tanító (Dt) és validáló (validation) (Dv=DDt) részre osztjuk Tanító Dt Validáló DDt Nem használja ki az összes adatot.
Kereszt-validáció (Cross-Validation) • A k-szoros kereszt-validálásnál a D halmazt k kölcsönösen diszjunktra bontjuk: D 1, D 2, …, Dk D 1 D 2 D 3 … Dk A tanuló algoritmust k alkalommal tanítjuk és teszteljük, tanítjuk DDi–n, teszteljük Di-n D 1 D 2 D 3 D 4
Összefoglalás • Döntési fák – Fogalom tanulás – Entrópia – ID 3 -> C 4. 5 • A gépi tanulás általános dilemmái – Általánosítási képesség – Dimenzionalitás átka – Modell pontosságának becslése
- Slides: 52