Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaJános Somogyi Megváltozta több, mint 6 éve
1
Gépi tanulási módszerek – Bevezetés A tanulóalgoritmusok fő tulajdonságai
2
A gépi tanulás célja Cél: Olyan programok létrehozása, amelyek a működésük során szerzett tapasztalatok segítségével képesek javítani a saját hatékonyságukon Tanulóalgoritmus: Olyan algoritmusok, amelyek képesek szabályosságok, összefüggések megtalálására tanítópéldák egy halmaza alapján 1. megj: A lényeg nem a konkrét tanulópéldák megtanulása, hanem a helyes általánosítás a tanulás során nem látott példákra is! (induktív tanulás) Feltevés: a példák hűen reprezentálják a tanulandó összefüggést 2. megj: lényegében sosem lehetünk biztosak benne, hogy a megtalált összefüggések működni fognak a nem látott esetekre is Ezért a gép által megtalált „hipotézisről” fogunk beszélni További példákat kapva ez tovább módosulhat
3
A tanulási feladatok típusai
Felügyelt tanulás: a tanítópéldákhoz a helyes válasz is adott A leggyakoribb feladat: osztályozás Példa: karakterfelismerés: 16x16 pixel betű 16x16 pixel: input jellemzők Betű: osztálycímke Gyakorlatilag egy függvényt kell megtanulnunk példák alapján Szinte kizárólag erről lesz szó a félévben Felügyelet nélküli tanulás: nincs külső segítség Legyakoribb feladat: klaszterezés Adatok automatikusan kialakított osztályokba sorolása valamilyen hasonlóság alapján
4
A tanulási feladatok típusai 2
Időbeli folyamatok modellezése A klasszikus függvénytanulási feladatnál feltesszük, hogy az egymás után érkező példák függetlenek, vagy legalábbis véletlenszerű sorrendben érkeznek Idősorok modellezésénél viszont az a feltevés, hogy az egymásutániság fontos, modellezendő információt hordoz Példa: beszéd vagy szöveg elemzése, tőzsdei folyamatok modellezése Megerősítéses tanulás (reinforcement learning) Példa: mesterséges „élőlények” -- autonomous agents Interakció a környezettel, tapasztalatok gyűjtése Az egyes tapasztalatokhoz nincs tanító címke, csak egy hosszú távú cél A gépi tanuláson belül is külön alterület Egyéb speciális tanulási feladatok
5
Függvények felügyelt tanulása
A függvény inputja: valamilyen mérési adatokból álló vektor Jellemzővektor, feature vector, attributumvektor A függvény outputja: osztálycímke vagy valós érték A tanulóalgoritmus inputja: tanítópéldák egy halmaza Outputja: A függvényre vonatkozó hipotézis (modell) Tetszőleges input vektorra meg tudja mondani a (becsült) outputot Tanítópéldák halmaza: jellemzővektorokból és hozzájuk tartozó osztálycímkékből álló párosok egy halmaza Példa: Influenzás-e a beteg? F e a t u r e v e c t o r Osztálycímke (I/N) Láz Ízületi_fájdalom Köhögés Influenzás 38,2 Van Nincs Igen 36,7 Száraz Nem 41,2 Nyákos 38,5 37,2 tanító- példányok
6
A tanulórendszer fő tulajdonságai
Ezeket érdemes végiggondolnunk egy új tanulómódszer tervezésekor, vagy ha egy adott feladathoz keresünk tanulóalgoritmust A tanulandó függvény inputjának/outputjának jellege A megtanult függvényhipotézis reprezentálási módja Hipotézistér: milyen függvénykészletből választ a módszer Az adatokra illeszkedő hipotézisek közül melyiket preferálja Milyen algoritmussal találja meg a/egy legjobb hipotézist
7
A tanulandó függvény kimenete
Osztályozás: a függvény véges számú különböző értéket vehet fel Példa: karakterfelismerés. 16x16 pixeles képekről kell megmondani, hogy melyik betűt ábrázolják. Értékkészlet = ábécé betűi Ez a legtipikusabb gépi tanulási feladat Fogalomtanulás: a függvény értékkészlete bináris Példa: egy robotnak akarjuk megtanítani a „szék” fogalmát. Mindegy egyes tárgy a környezetében vagy beletartozik a fogalomba, vagy nem. Regresszió: a függvény értékkészlete folytonos Példa: használt autó értékének becslése különböző jellemzők alapján (típus, kor, motor erőssége,…)
8
A tanulandó függvény bemenete
Bináris értékkészletű jellemző Diszkrét értékkészletű jellemző Az ilyet hívják nominális, szimbolikus vagy kategorikus jellemzőnek is Folytonos értékkészletű jellemző Binárisdiszkrétfolytonos konverzió triviális Diszkrét bináris: Osztálycímkék: N osztályos tanulás mindig visszavezethető N db fogalomtanulásra („adott osztály a többi ellen”) Jellemzők: N lehetséges érték reprezentálható log2N bináris értékkel Folytonos Diszkrét : Kvantálással (kerekítéssel) némi hibával megoldható, pl. (láz) 39,7magas Inkább csak jellemzőket szokás kvantálni, címkéket nem
9
Mi az input/output típusának jelentősége?
Más jellegű input/output más belső reprezentációt igényel Emiatt vannak algoritmusok, amelyek csak bizonyos típusú input/output esetén működnek Vagy működnek más jellegű adatokon is, de nem optimálisan Példák: Fogalomtanulás bináris jellemzőkön: egy logikai függvényt kell tanulni A es években a logikai reprezentációt gondolták ideálisnak az emberi gondolkodás modellezésére Rengeteg kutatást végeztek a Bool-függvények tanulása terén, ezek az algoritmusok nem működnek más jellegű tanulandó függvényen A klasszikus SVM algoritmus kétosztályos Többféle kiterjesztése létezik többosztályos feladatokra
10
Input/output példák 2 A klasszikus döntési fa-algoritmus diszkrét jellemzőkre lett kitalálva Van kiterjesztése folytonos jellemzőkre, de tapasztalat szerint nem igazán hatékony A statisztikai alakfelismerésnél tanuljuk majd a Gauss-keverékmodellt Ez folytonos jellemzőket feltételez Diszkrét jellemzőkre nem sok értelme van Gauss-eloszlásokat illeszteni, esetleg le sem fut az algoritmus Osztályozási feladat folytonos jellemzők esetén Az egyes osztályok karakterisztikus függvénye szakadásos, nehezen reprezentálható függvény Kétféle megoldás a folytonos függvénnyel való reprezentálásra: Geometriai szemlélet Döntéselméleti szemlélet
11
A jellemzőtér és a döntési felület
Ha a jellemzővektorunk N komponensből áll, akkor a tanítópéldáink egy N-dimenziós tér pontjaiként jeleníthetők meg Példa: két jellemző –> 2 tengely (x1, x2) Osztálycímke: színekkel A feladat: megtalálni az osztályok közötti határoló felületet Általánosabban: becslést adni az (x1,x2)c függvényre a tanítópéldák alapján Ugyanaz mint megadni a egyes ci osztályok (x1,x2){0,1} karakterisztikus függvényét (más néven indikátorfüggvényét)
12
A döntési felület reprezentálása
Direkt (geometriai) szemlélet: közvetlen módon a határoló felületeket reprezentáljuk Valamilyen egyszerű, folytonos görbével, pl. egyenesekkel Indirekt (döntéselméleti) szemlélet: 1. Minden osztályhoz rendelünk egy függvényt, amely megmondja, hogy a tér egyes pontjai milyen valószínűséggel tartoznak az osztályhoz 2. A tér egy adott pontját az ott maximális értéket adó diszkriminánsfüggvény osztályához soroljuk Az osztályok határait indirekt módon a diszkriminánsfüggvények metszési görbéi határozzák meg Az osztályozás feladatot így a folytonos diszkriminánsfüggvények tanulására vezettük vissza
13
Egyéb megjegyzések (Input/output)
Fontos lehet, hogy vannak-e a példákban hiányzó jellemzők Vannak megoldások a hiányzó jellemzők becslésére De a legtöbb tanulómódszer alapból nem tudja kezelni A gyakorlatban előfordulhatnak ilyen feladatok (pl. orvosi diagnosztika) Fontos, hogy az algoritmus tud-e kezelni ellentmondó példákat (ugyanaz a jellemzővektor, de eltérő a címke) Erre is vannak megoldások De több tanulómódszer nem tudja kezelni A gyakorlatban nagyon gyakori pl. hibás címkézés, bizonytalan diagnózis
14
A tanulandó függvény reprezentálási módja
Szimbolikus reprezentáció numerikus reprezentáció Egy ősi vita a mesterséges intelligenciában 60-70-es évek: a szimbolikus reprezentációt szerették Pl: logikai formulák, ha-akkor szabályok Jelenleg: egyértelműen a numerikus reprezentáció a preferált Pl. neuronhálók a kimenet egy rakás valós szám Bizonyos feladatoknál a szimbolikus reprezentáció megfelelő lehet Pl. matematikai tételbizonyítás automatizálása Bizonyos esetekben nincs sok értelme pl. képi alakfelismerés A legfontosabb szempont: fontos-e, hogy a döntés emberi szemmel értelmezhető, jól struktúrált legyen Bizonyos esetekben nem, pl. beszédfelismerés Máskor az összefüggések megértése a lényeg, pl. orvosi adatbányászat
15
Milyen hipotézisteret használ
Hipotézistér: a függvények halmaza, amelyből a hipotézist választja az algoritmus Példa: parametrikus módszerek Folytonos jellemzőtér esetén a legtöbb módszer valamilyen parametrikus görbét használ a tanulandó függvény reprezentálására Példa: regresszió 1 változóval A tanulópéldákra polinomot illesztünk Hipotézistér megválasztása: a példában a polinom fokszámának előzetes eldöntése Ezzel leszűkítjük a hipotézisteret (az egyáltalán szóba jövő görbéket) A hipotézistér megválasztását befolyásoló paramétereket metaparaméternek hívjuk Tanulás = a polinom optimális együtthatóinak megtalálása A példában a polinom-együtthatók optimalizálása Ezeket hívjuk a modell paramétereinek
16
Milyen hipotézisteret használ 2
Hipotézistér: a függvények halmaza, amelyből a hipotézist választja az algoritmus A hipotézistér korlátozása technikailag elkerülhetetlen Folytonos tér: az összes lehetséges függvény ábrázolása lehetetlen Diszkrét tér: a tér véges, így elvileg meg tudnánk oldani minden lehetőség modellezését, de gyakorlatban általában ilyen esetben is túl nagy szokott lenni a tér A hatékony (értsd: jó általánosító képességgel bíró) tanuláshoz ez szükséges is Az általánosító képességhez az kell, hogy a rendszer a tanulás során nem látott esetekre is tudjon mondani valamit A tanulás során látott példákra valamilyen modellt (függvényt) illesztünk a hipotézistérből A ráillesztett függvények jellege határozza meg, hogy a nem látott esetre mit mond a rendszer („inductive bias”) Általában matematikailag egyszerű függvénycsaládokkal szoktunk dolgozni Az optimális hipotézistér feladatfüggő!! Túl szűk hipotézistér a modell még a tanítópéldákat sem tudja megtanulni Túl bő hipotézistér a tanítópéldákat „bemagolja”, de nem tud általánosítani Az emberi tanulásban is így van (csak nem a gyereket igazítjuk a feladathoz, hanem fordítva…)
17
A lehetséges hipotézisek közül melyiket választja
Konzisztens hipotézis: a tanulópéldákon helyes értéket ad Ha a hipotézistérben több konzisztens hipotézis van, akkor választani kell közülük Ebben a tanítópéldák nem tudnak segíteni! Ehhez valamilyen heurisztika kell Occam-borotva elve: „több lehetséges magyarázat van, akkor általában a legegyszerűbb bizonyul helyesnek” A „legegyszerűbb” fogalmát persze matematikailag kell definiálni Pl.: minimum description length
18
Milyen algoritmussal találja meg a legjobb hipotézist
Az előző lépésben definiáltuk az optimális hipotézis kritériumát Pl. sok esetben egy optimalizálandó célfüggvényt fogunk megadni De nem elég definiálni, valahogy meg is kell azt találni Numerikus modellek esetén a célfüggvény optimalizálása egy sokváltozós globális optimalizálási feladatra vezet Elvileg lehet használni általános célú optimalizálási algoritmusokat is Többnyire azonban léteik speciálisan a modellhez igazított tanítóalgoritmus
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.