Programozási módszertan. A gépi tanulás alapmódszerei

Hasonló dokumentumok
Megerősítéses tanulási módszerek és alkalmazásaik

Mesterséges intelligencia, szakértői rendszerek Ágensek, multi ágens rendszerek, tanuló ágensek p. 1/43

Gépi tanulás Gregorics Tibor Mesterséges intelligencia

VIII. INDUKTÍV TANULÁS

1. gyakorlat. Mesterséges Intelligencia 2.

TANULÁS. I. Logikai formulák tanulása. Tanulási módok. Miért m ködik jól az induktív tanulás? Induktív tanulás

2. A példahalmazban n = 3 negatív és p = 3 pozitív példa van, azaz a példahalmazt képviselő döntési fa információtartalma: I = I(1/2, 1/2) = 1 bit.

Számítógépes képelemzés 7. előadás. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Gépi tanulás. Hány tanítómintára van szükség? VKH. Pataki Béla (Bolgár Bence)

Korszerű információs technológiák

Keresés képi jellemzők alapján. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén

Megerősítéses tanulás 2. előadás

Programozási módszertan. Mohó algoritmusok

Dunaújvárosi Főiskola Informatikai Intézet. Intelligens ágensek. Dr. Seebauer Márta. főiskolai tanár

FELÜGYELT ÉS MEGERŐSÍTÉSES TANULÓ RENDSZEREK FEJLESZTÉSE

Programozási módszertan. Függvények rekurzív megadása "Oszd meg és uralkodj" elv, helyettesítő módszer, rekurziós fa módszer, mester módszer

Biometria az orvosi gyakorlatban. Korrelációszámítás, regresszió

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Diszkrét matematika 2. estis képzés

Stratégiák tanulása az agyban

Gépi tanulás és Mintafelismerés

Gépi tanulás. Féligellenőrzött tanulás. Pataki Béla (Bolgár Bence)

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2.C szakirány

f(x) vagy f(x) a (x x 0 )-t használjuk. lim melyekre Mivel itt ɛ > 0 tetszőlegesen kicsi, így a a = 0, a = a, ami ellentmondás, bizonyítva

Programozási módszertan

Programozási módszertan. Dinamikus programozás: A leghosszabb közös részsorozat

Gépi tanulás a gyakorlatban. Lineáris regresszió

Megerősítéses tanulás

Intelligens ágensek. Mesterséges intelligencia február 28.

Mesterséges Intelligencia MI

Megerősítéses tanulás 7. előadás

Számítógépes döntéstámogatás. Döntések fuzzy környezetben Közelítő következtetések

Mit látnak a robotok? Bányai Mihály Matemorfózis, 2017.

A szimplex algoritmus

minden x D esetén, akkor x 0 -at a függvény maximumhelyének mondjuk, f(x 0 )-at pedig az (abszolút) maximumértékének.

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Diszkrét matematika 2. estis képzés

Gépi tanulás. Egyszerű döntés tanulása (döntési fák) (Részben Dobrowiecki Tadeusz fóliáinak átdolgozásával) Pataki Béla (Bolgár Bence)

Mátrixjátékok tiszta nyeregponttal

KOVÁCS BÉLA, MATEMATIKA II.

Számítógépes döntéstámogatás OPTIMALIZÁLÁSI FELADATOK A SOLVER HASZNÁLATA

ismertetem, hogy milyen probléma vizsgálatában jelent meg ez az eredmény. A kérdés a következő: Mikor mondhatjuk azt, hogy bizonyos események közül

Diszkrét matematika 2. estis képzés

Adatbányászati szemelvények MapReduce környezetben

Valószínűségi változók. Várható érték és szórás

Logikai ágensek. Mesterséges intelligencia március 21.

[1000 ; 0] 7 [1000 ; 3000]

CARE. Biztonságos. otthonok idős embereknek CARE. Biztonságos otthonok idős embereknek Dr. Vajda Ferenc Egyetemi docens

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. 3. Előadás

Mesterséges intelligencia 3. laborgyakorlat

NULLADIK MATEMATIKA ZÁRTHELYI

Optimalizálás alapfeladata Legmeredekebb lejtő Lagrange függvény Log-barrier módszer Büntetőfüggvény módszer 2017/

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL

konvergensek-e. Amennyiben igen, számítsa ki határértéküket!

VÁLLALATGAZDASÁGTAN II. Döntési Alapfogalmak

Random Forests - Véletlen erdők

Számítógépes döntéstámogatás. Genetikus algoritmusok

Diszkrét matematika 2.C szakirány

A sorozat fogalma. függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet. az értékkészlet a komplex számok halmaza, akkor komplex

4. Lokalizáció Magyar Attila

11. Előadás. 11. előadás Bevezetés a lineáris programozásba

Irányításelmélet és technika II.

A következő feladat célja az, hogy egyszerű módon konstruáljunk Poisson folyamatokat.

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

A L Hospital-szabály, elaszticitás, monotonitás, konvexitás

Branch-and-Bound. 1. Az egészértéketű programozás. a korlátozás és szétválasztás módszere Bevezető Definíció. 11.

Segédanyagok. Formális nyelvek a gyakorlatban. Szintaktikai helyesség. Fordítóprogramok. Formális nyelvek, 1. gyakorlat

A digitális számítás elmélete

Biometria az orvosi gyakorlatban. Regresszió Túlélésanalízis

Mesterséges Intelligencia MI

Megerősítéses tanulás 9. előadás

Mesterséges Intelligencia MI

Gépi tanulás a gyakorlatban. Bevezetés

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2018/

Megerősítéses tanulás

Bonyolult jelenség, aminek nincs jó modellje, sok empirikus adat, intelligens (ember)ágens képessége, hogy ilyen problémákkal mégis megbirkozzék.

Számítógépes döntéstámogatás. Statisztikai elemzés

1/1. Házi feladat. 1. Legyen p és q igaz vagy hamis matematikai kifejezés. Mutassuk meg, hogy

Programozási módszertan. Dinamikus programozás: szerelőszalag ütemezése Mátrixok véges sorozatainak szorzása

KOVÁCS BÉLA, MATEMATIKA I.

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2017/

Diszkrét matematika 2.

Adatszerkezetek 7a. Dr. IványiPéter

1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás)

Érzékenységvizsgálat

Számelmélet Megoldások

Deníciók és tételek a beugró vizsgára

Számítógépes döntéstámogatás. Bevezetés és tematika

Csima Judit október 24.

Mérési struktúrák

Adatbázis rendszerek Definíciók:

Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.

Gépi tanulás a Rapidminer programmal. Stubendek Attila

Tanulás az idegrendszerben. Structure Dynamics Implementation Algorithm Computation - Function

Mesterséges Intelligencia I. (I602, IB602)

16. modul: ALGEBRAI AZONOSSÁGOK

Problémamegoldás kereséssel. Mesterséges intelligencia március 7.

Gauss-Seidel iteráció

Átírás:

SZDT-12 p. 1/24 Programozási módszertan A gépi tanulás alapmódszerei Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu

SZDT-12 p. 2/24 Ágensek Az új szemléletű, viselkedésalapú megközelítés szerint: a mesterséges intelligencia célja az, hogy a feladatmegoldást olyan ágensekkel végeztesse el, amelyek az intelligens viselkedés bizonyos vonásaival rendelkeznek. Egy ágens lehet bármely dolog, amely érzékelői segítségével észleli környezetét, majd megfelelő döntéseket hozva tevékenységével visszahat rá. Egy ágens realizálásához szükség van a következő képességek bizonyos mértékére: érzékelés, észlelés, tudásszerzés, döntéshozatal, következtetés, tanulás és tevékenységvégzés.

SZDT-12 p. 3/24 Erős definíció (MI) Az ágens egy olyan rendszer, amely a következő tulajdonságokkal rendelkezik: Beágyazottság: a környezetbe ágyazottak, abból kiemelve nem tudnak funkcionálni (pl. egy ágens papírra nyomtatott programja nem ágens, mint ahogy egy vízbe dobott autóhegesztő robot sem az). Reaktivitás: az ágensek érzékelik környezetüket, valamint valós időben reagálnak, az abban bekövetkezett változásokra. Autonómia: az ágensek önállóan, emberek vagy mások direkt beavatkozása nélkül működnek és meghatározott mértékű kontrolljuk van a saját akcióik és belső állapotuk felett. Helyzetfüggőség: az ágensek helyzethez és szerephez kötötten ágensek csupán.

SZDT-12 p. 4/24 Erős definíció (MI) Az ágens egy olyan rendszer, amely a következő további tulajdonságokkal rendelkezik: Racionalitás: az ágens a rendelkezésre álló számítási kapacitás és egyéb erőforrások mellett a lehető legjobb alternatívát választja. Tanulás: az ágens képes új ismereteket gyűjteni környezetéből és azt tárolni, felhasználni. A tanultak alapján viselkedését megváltoztathatja. Alkalmazkodás: képes tanulni a cselekedetei hatásából és a tanultakat felhasználva változtatni tud tervein, annak érdekében, hogy tevékenysége optimálisabb legyen. Személyiség: Számos alkalmazási területen szükség lehet mesterséges személyiség létrehozására. A személyiséggel bíró ágens identitással, speciális jegyekkel rendelkezik, melyek megkülönböztetik őt más ágensektől.

SZDT-12 p. 5/24 A tanuló ágensek általános modellje Egy algoritmus tanul, ha egy feladat megoldása során olyan változások következnek be a működésében, hogy később ugyanazt a feladatot vagy ahhoz hasonló más feladatotokat jobb eredménnyel, ill. hatékonysággal képes megoldani, mint korábban.

SZDT-12 p. 6/24 Induktív tanulás Azt mondjuk, hogy egy példa egy (x, f(x)) adatpár, ahol x a bemenete, f(x) a kimenete az x-re alkalmazott leképezésnek. Az induktív következtetés feladata a következő: az f-re vonatkozó minták (példák) egy halmaza alapján, adjon meg egy olyan h leképezést, amelyik közelíti f-et. A h leképezést hipotézisnek nevezzük. Tekintsünk egy geometriai példát: Az igazi f függvény nem ismert, így számos elképzelhető választás van h-ra, további tudás nélkül nem tudhatjuk, hogy melyiket részesítsük előnyben.

SZDT-12 p. 7/24 Döntési fák tanulása A döntési fa bemenete egy tulajdonsághalmaz segítségével leírt objektum vagy szituáció, kimenete pedig egy döntés. A döntési fák így logikai függvény eket reprezentálnak. A fa mindegyik belső csomópontja megfelel valamelyik tulajdonság tesztjének, és mindegyik él a teszt lehetséges értékeivel címkézett. A fa mindegyik levélcsomópontja megad egy logikai értéket.

SZDT-12 p. 8/24 Döntési fák kialakítása példák alapján A példát az attribútumok értékeivel és a célpredikátum értékeivel jellemezzük. A célpredikátum értékét a példa besorolásának hívjuk. Ha a célpredikátum értéke egy példára igaz, akkor azt pozitív példának, egyébként negatív példának tekintjük. A teljes példahalmazt tanítóhalmaznak nevezzük.

SZDT-12 p. 9/24 Feladat Tegyük fel, hogy egy használtautó kereskedő eladási tapasztalatai alapján szeretné megfogalmazni a jól eladható autók kritériumait. Lehetséges tulajdonságok és értékeik:

SZDT-12 p. 10/24 Megoldás keresése Válasszuk a legegyszerűbb alakot, az attribútum-példányok konjunkcióját lehetséges hipotézisnek. Pl. h = (gyartas helye = nemet & kor = 3 6 kozott & motor = diesel & szin = fekete & cm 3 = 1300 1800 kozott) Egyszerűbb vektoros alak: h = (nemet,3 6 kozott,diesel,fekete,1300 1800 kozott) A fogalmi tanulást tekinthetjük egy keresési feladatnak, mivel az a cél, hogy a hipotézisek terében megkeressük azt a hipotézist, amelyik a legjobban illeszkedik a tanulási példákra. A vektor komponensei között lehet: 0 : az attribútum egyetlen értékre sem elfogadható; : az attribútum bármely értéke elfogadott a hipotézisben.

SZDT-12 p. 11/24 Megoldás keresése Például: 4 4 2 5 4 = 640 különböző egyed lesz Mivel megengedett a 0 és a jel ezért: 6 6 4 7 6 = 6048 hipotézis lehet Mindazon hipotézisek, amelyek legalább egy 0 szimbólumot tartalmaznak, az üres példányt reprezentálja, így ezeket nem célszerű megkülönböztetni. A valóban különböző hipotézisek száma: 1 + (5 5 3 6 5) = 2251 Megállapítás: Mivel a hipotézistér általában nagyméretű, ezért fontos, hogy hatékony keresési módszerrel tudjuk kiválasztani a legjobban illeszkedő hipotézist.

SZDT-12 p. 12/24 Kiindulás Az induktív tanulás során olyan h : X {0,1} hipotézist keresünk, amelyre teljesül, hogy h(x) = f(x) minden x X példányra. Tekintsük a következő példákat:

SZDT-12 p. 13/24 Algoritmus lépései (döntési fa felépítése) Kezdetben a fa egy címkézetlen (gyökér) csúcsból áll, amelyhez az összes tanító példát (P) és attribútumot (A) hozzárendeljük. Adott egy címkézetlen n csúcs: 1. Ha P = 0, akkor levélcsúcsot kaptunk, amelynek értékét a szülőcsúcs példáinak többségi szavazása alapján döntjük el. 2. Ha P csak pozitív (vagy csak negatív) példából áll, akkor egy igen (illetve nem) levélcsúcsnál vagyunk. 3. Ha A = 0, akkor is levélcsúcsot kaptunk, és a csúcs pozitív és negatív példáinak többségi szavazása alapján döntjük el annak értékét. 4. Egyébként a legnagyobb információs előnnyel járó, még teszteletlen a A attribútumot rendeljük az n csúcshoz, majd generáljuk az összes (címkézetlen) gyerekét: Ezekhez az a lehetséges értékeivel címkézett élek vezetnek. Ha az a címkéjű n csúcsból az m csúcsba a v címkéjű él vezet, akkor az m csúcshoz rendelt Példák: Pa=v = {p P p.a = v} Attribútumok: A = A {a} Végül minden gyerekre ismételjük meg rekurzív módon az 1 4. lépéseket.

SZDT-12 p. 14/24 ID3 algoritmus A döntési fa konstruálásának legfontosabb kérdése, hogy a fa adott pontjában melyik attribútum értéke szerint végezzük el a tesztet. Azt az attribútumot célszerű választani, amelyik a leghasznosabb a példák osztályozására. Ezen hasznosság mérésére bevezethető egy mérőszám, az ún. információs előny, ami megmutatja, hogy egy adott attribútum szerinti teszt egyedül milyen jól osztályozná az adott tanulási példákat.

SZDT-12 p. 15/24 Entrópia definíció Legyen P pozitív és negatív példák gyűjteménye egy adott fogalomra vonatkozóan. A P entrópiája: E(P) = E(P +,P ) = P + log 2 P + P log 2 P ahol P + a pozitív, P a negatív példák arányát jelöli P -ben. Az ID3 algoritmusban használt információs előny mérőszám azt mutatja meg, hogy egy adott attribútum szerinti osztályozás mennyivel csökkenti a P entrópiáját. C(P,a) = E(P) P a=v v ertek(a) P E(P a=v )

SZDT-12 p. 16/24 Teljesítmény becslés Lehetőségünk van a tanulási algoritmus teljesítményét megbecsülni. A tanulási algoritmus akkor megfelelő, ha jó hipotéziseket szolgáltat azokban az esetekben is, amelyeket nem látott előre. A vizsgálatot a példák egy teszthalmazán végezhetjük el, amelyhez a következő lépéseket kell végig követnünk. 1. Gyűjtsük össze a példák egy nagy halmazát. 2. A példahalmazt bontsuk szét két diszjunkt halmazra: egy tanítóhalmazra és egy teszthalmazra. 3. A tanuló algoritmust a tanítóhalmaz példáira alkalmazva állítsuk elő a H hipotézist. 4. Vizsgáljuk meg, hogy H a teszthalmaz példáinak hány százalékát sorolja be helyesen. 5. Ismételjük meg az 1-4 lépéseket különböző tanítóhalmaz méretekre, és mindegyik mérethez különböző teszthalmazra. Eredményként kapunk egy adathalmazt, amellyel az átlagos jóslási képesség a tanítóhalmaz méretének a függvényében vizsgálható. Egy ilyen jellegű vizsgálat kapcsán megfigyelhető, hogy a tanítóhalmaz méretének a növekedésével a jóslás minősége javulni fog.

SZDT-12 p. 17/24 Ágens-környezet Egyszerűen fogalmazva: A megerősítéses tanulást és feladatát úgy fogalmazhatjuk meg, mint egy olyan módszert, amely kapcsolatok alapján, bizonyos célokra összpontosítva tanul. Ágens-környezet modell: Minden t időpillanatban az ágens megkapja a környezetet s t S állapotleírását, ahol S a lehetséges állapotok (state) halmaza. Ennek alapján választ egy a t A(s t ) akciót, ahol A(s t ) az s t állapotban megengedett akciók halmaza. A következő lépésben a választott akció függvényeként kap egy r t+1 R R jutalmat, és egy új s t+1 állapotba kerül.

SZDT-12 p. 18/24 Ágens-környezet Minden egyes időpillanatban az ágens egy leképezést valósít meg az állapotleírások és az egyes akciók választási valószínűségei között. A leképezést az ágens politikájának (policy) nevezzük, és Π t -vel jelöljük, ahol Π t (s,a) s t = s esetén a t = a választásának valószínűségét adja meg. A megerősítéses tanulás különböző módszerei azt írják le, hogy az ágens hogyan változtatja a politikáját az idő előrehaladtával a tapasztalatai függvényében. A cél az, hogy az ágens hosszú távon maximalizálja az

SZDT-12 p. 19/24 Várható hozam Az ágens feladata a várható hozam (return), R t maximalizálása, ahol R t a közvetlen jutalmak sorozatának valamilyen függvénye. Legegyszerűbb esetben: R t = r t+1 + r t+2 +... + r T, ahol T az utolsó időpillanat Az ágens-környezet interakció részsorozatokra, epizódokra bomlik: pl. kártyajáték, labirintus feladat; itt minden epizód egy terminális állapotban ér végett) Folytatható folyamatok: pl. folyamatszabályozás, robotvezérlés T = Itt a végtelen sor összegét maximalizálni akarjuk. Előfordulhat, hogy a sor divergens, ilyenkor a maximalizálás értelmét veszti.

SZDT-12 p. 20/24 Diszkontált hozam Diszkontált hozam: R t = r t+1 + γr t+2 + γ 2 r t+3 +... = i=0 γi r t+i+1 0 γ 1 a diszkontálási paraméter; Ha γ < 1 a sor konvergens, feltéve, hogy a jutalmak r i sorozata korlátos. Ha γ = 0, akkor az ágens "rövidlátó", azaz csak a közvetlenül következő jutalom maximalizálására törekszik. Ha γ 1(γ < 1), a későbbi jutalmak egyre nagyobb súllyal jelennek meg, az ágens egyre "előrelátóbb" lesz. Egységes hozamfüggvény: R t = T i=0 γi r t+i+1 Ha T véges és γ = 0, akkor az epizódikus, ha T = és 0 γ 1, akkor a folytatható folyamatra megadott definíciót kapjuk.

SZDT-12 p. 21/24 Értékelő függvény Az értékelő függvény leírja, hogy mennyire jó egy adott állapot vagy mennyire jó egy adott állapotban egy adott akciót végrehajtani. Egy s állapot π politika melletti jósága (V π (s)) az állapotból a politika követése mellett gyűjthető hozam várható értéke. Állapot értékelő függvény: V π (s) = E π (R t s t = s) = E π ( k=0 γk r t+k+1 s t = s) (E π jelöli a π politika követése melletti várható értéket, t tetszőleges időpillanat) Az s állapotban a akció választásának értéke a π politika mellett: Q π (s,a) = E π (R t s t = s,a t = a) = = E π ( k=0 γk r t+k+1 s t = s,a t = a)

SZDT-12 p. 22/24 Bellman-egyenlet A V π -re vonatkozó Bellman-egyenlet leírja a jelenlegi állapot és a lehetséges rákövetkező állapotok értéke közötti összefüggést. Optimális politika (π ) Ugyanaz az optimális állapotot értékelő függvény tartozik hozzá: V (s) = max π (V π (s)), s S Közös az optimális akciót értékelő függvényük is: Q (s,a) = max π (Q π (s,a)), (s,a) S A(s) A V -ra vonatkozó Bellman-féle optimalitási egyenlet: V (s) = max a A(s) s P a ss [R a ss + γv (s )] A Q -ra vonatkozó Bellman-féle optimalitási egyenlet: Q (s,a) = s P a ss [R a ss + γmax a Q (s,a )]

SZDT-12 p. 23/24 Időbeli differenciák módszere (Temporal Difference, TD) A π politika követése során szerzett tapasztalatait felhasználja a π politikához tartozó V π értékelő függvény V becslésének felülírására. Ha a t időpillanatban a rendszer az s t állapotban van, akkor a módszer rögtön a következő lépésben módosítja a V -t a megfigyelt r t+1 jutalom és V (s t+1 ) korábbi becslésének felhasználásával. A legegyszerűbb TD módszer: V (s t ) V (s t ) + α[r t+1 + γv (s t+1 ) V (s t )] Ez a módszer egy becslés: mintát vesz a várható értékből + felhasználja a V π értékelő függvény V t becslését.

SZDT-12 p. 24/24 TD(0) algoritmus V π becslésére Input: π policy to be evaluated Initialize: V (s) arbitrarily Repeat for each episode initialise s Repeat for each step of episode take a,r,s V (s t ) V (s t ) + α[r t+1 + γv (s t+1 ) V (s t )] s s until s is terminal