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.

Slides:



Advertisements
Hasonló előadás
T ESZTELÉS. C ÉLJA Minél több hibát találjunk meg! Ahhoz, hogy az összes hibát fölfedezzük, kézenfekvőnek tűnik a programot az összes lehetséges bemenő.
Advertisements

I. előadás.
Programozási tételek, és „négyzetes” rendezések
2005. Operációkutatás Ferenczi Zoltán. Széchenyi István Egyetem Operációkutatás eredete •második világháború alatt alakult ki •különböző szakmájú emberekből.
Pac-Man játék tanulása Megerősítéses Tanulással Mesterséges Intelligencia algoritmusok tesztelése játékokon Gyenes Viktor Eötvös Loránd Tudományegyetem.
GÉPI TANULÁS (MACHINE LEARNING)
Képességszintek.
MI 2003/9 - 1 Alakfelismerés alapproblémája: adott objektumok egy halmaza, továbbá osztályok (kategóriák) egy halmaza. Feladatunk: az objektumokat - valamilyen.
MI 2003/ A következőkben más megközelítés: nem közvetlenül az eloszlásokból indulunk ki, hanem a diszkriminancia függvényeket keressük. Legegyszerűbb:
SAS Enterprise Miner 2. gyakorlat
Halmazok.
Bevezetés a gépi tanulásba február 16.. Mesterséges Intelligencia „A számítógépes tudományok egy ága, amely az intelligens viselkedés automatizálásával.
Gépi tanulási módszerek
Osztályozás -- KNN Példa alapú tanulás: 1 legközelebbi szomszéd, illetve K-legközelebbi szomszéd alapú osztályozó eljárások.
Gépi tanulási módszerek febr. 20.
Szintaktikai elemzés március 1.. Gépi tanulás Osztályozási feladat: Adott egyedek egy halmaza és azok osztályba tartozási függvénye (tanító halmaz),
MI 2003/ Alakfelismerés - még egy megközelítés: még kevesebbet tudunk. Csak a mintánk adott, de címkék nélkül. Csoportosítás (klaszterezés, clustering).
Mesterséges neuronhálózatok
1. Bevezetés 1.1. Alapfogalmak
Bayes becslések Boha Roland november 21. PPKE-ITK.
Mesterséges intelligencia
Online hasonlóságelemzések: Online hasonlóságelemzések: Tapasztalatok (kukorica) hozamfüggvények levezetése kapcsán Pitlik László, SZIE Gödöllő (Forrás:
Operációkutatás eredete
Objektumok. Az objektum információt tárol, és kérésre feladatokat hajt végre. Az objektum adatok (attribútumok) és metódusok (operációk,műveletek) összessége,
Az Alakfelismerés és gépi tanulás ELEMEI
Vámossy Zoltán 2004 (H. Niemann: Pattern Analysis and Understanding, Springer, 1990) DIP + CV Bevezető II.
Adatszerkezetek 1. előadás
Gépi tanulás Tanuló ágens, döntési fák, általános logikai leirások tanulása.
Idősor elemzés Idősor : időben ekvidisztáns elemekből álló sorozat
Gazdaságstatisztika 11. előadás.
Gazdaságstatisztika Bevezetés szeptember 11.
Kötvényárazási hibák intelligens javítóalgoritmusának tervezése és fejlesztése GELLÉN ÁGNES IUFQ58.
Alapfogalmak.
Szillogisztika = logika (következtetéselmélet)? Az An.Post.-ban, és másutt is találunk olyan megjegyzéseket, hogy minden helyes következtetés szillogizmusok.
Belami beszámoló – Doménadaptációs alkalmazások. Problémafelvetés Felügyelt tanulás elvégzéséhez gyakran kevés jelölt adat áll rendelkezésre  doménadaptáció.
Az üzleti rendszer komplex döntési modelljei (Modellekkel, számítógéppel támogatott üzleti tervezés) II. Hanyecz Lajos.
I. előadás.
MI 2003/ Mi lenne a b legjobb választása? Statisztikai eljárásoknál az un. Fisher féle lineáris diszkriminancia függvény adja a legjobb szétválasztási.
Bevezetés a méréskiértékelésbe (BMETE80ME19) 2014/
Valószínűségszámítás II.
Többdimenziós valószínűségi eloszlások
Megerősítéses tanulás 8. előadás
C Programozási alapok.
WP-Dyna: tervezés és megerősítéses tanulás jól tervezhető környezetekben Szita István és Takács Bálint ELTE TTK témavezető: dr. Lőrincz András Információs.
Felmérés: (általános gyógyszer felhasználás, illetve vény nélküli készítmények)
MI 2003/8 - 1 Alakfelismerés alapproblémája: adott objektumok egy halmaza, továbbá osztályok (kategóriák) egy halmaza. Feladatunk: az objektumokat - valamilyen.
Kutatási beszámoló 2002/2003 I. félév Iváncsy Renáta.
PÁRHUZAMOS ARCHITEKTÚRÁK – 13 INFORMÁCIÓFELDOLGOZÓ HÁLÓZATOK TUDÁS ALAPÚ MODELLEZÉSE Németh Gábor.
Gépi tanulási módszerek
Mesterséges Neurális Hálózatok 3. előadás
Megerősítéses tanulás 2. előadás
Szimuláció. Mi a szimuláció? A szimuláció a legáltalánosabb értelemben a megismerés egyik fajtája A megismerés a tudás megszerzése vagy annak folyamata.
Operációkutatás I. 1. előadás
Logika szeminárium Barwise-Etchemendy: Language, Proof and Logic
Mesterséges intelligencia
Kereszt vagy beágyazott? Rögzített vagy véletlen?
Gépi tanulási módszerek febr. 18.
A évi kompetenciamérés FIT-jelentéseinek új elemei
Emlékeztető Az előző órán az adatok eloszlását Gauss-eloszlással közelítettük Célfüggvénynek a Maximum Likelihood kritériumot használtuk A paramétereket.
Kísérlettervezés 3. előadás.
PAC tanulhatóság A tanulhatóság egy formális matematikai modellje
A mesterséges neuronhálók alapjai
A Bayes-döntéselmélet alapjai
GÉPI TANULÁSI ALAPFOGALMAK
Objektum-detektálás A tananyag az EFOP
Visszacsatolt (rekurrens) neuronhálók
A perceptron neurális modell és tanítása
Absztrakt problémák Q  I  S, az absztrakt probléma kétváltozós reláció az esetek (I) és a megoldások (S) halmazán Példa: legrövidebb út Eset: gráf és.
Algoritmusok és Adatszerkezetek I.
Gépi tanulási alapfogalmak
Előadás másolata:

Gépi tanulási módszerek – Bevezetés A tanulóalgoritmusok fő tulajdonságai

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

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

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

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

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

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,…)

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árisdiszkrétfolytonos 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,7magas Inkább csak jellemzőket szokás kvantálni, címkéket nem

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 60-70-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

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

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)

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

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

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

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

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…)

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

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