PAC tanulhatóság A tanulhatóság egy formális matematikai modellje

Slides:



Advertisements
Hasonló előadás
Deduktív adatbázisok.
Advertisements

Események formális leírása, műveletek
Készítette: Kosztyán Zsolt Tibor
Algebrai struktúrák.
Másodfokú egyenlőtlenségek
Függvények Egyenlőre csak valós-valós függvényekkel foglalkozunk.
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:
Vektormező szinguláris pontjainak indexe
Euklidészi gyűrűk Definíció.
Egy f  R[x] polinom cS -beli helyettesítési értéke
Csoport részcsoport invariáns faktorcsoport részcsoport
Gyűrűk Definíció. Az (R, +, ·) algebrai struktúra gyűrű, ha + és · R-en binér műveletek, valamint I. (R, +) Abel-csoport, II. (R, ·) félcsoport, és III.
4. VÉGES HALMAZOK 4.1 Alaptulajdonságok
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
FRAKTÁLOK.
Becsléselméleti ismétlés
Előadó: Prof. Dr. Besenyei Lajos
Differenciál számítás
Készülj az érettségire
A számfogalom bővítése
PTE PMMK Matematika Tanszék dr. Klincsik Mihály Matematika III. előadások MINB083, MILB083 Gépész és Villamosmérnök szak BSc képzés 2007/2008. őszi félév.
Matematika III. előadások MINB083, MILB083
Regresszióanalízis 10. gyakorlat.
Halmazok Összefoglalás.
*** HALMAZOK *** A HALMAZ ÉS MEGADÁSA A HALMAZ FOGALMA
Fejmozgás alapú gesztusok felismerése Bertók Kornél, Fazekas Attila Debreceni Egyetem, Informatikai Kar Debreceni Képfeldolgozó Csoport KÉPAF 2013, Bakonybél.
Textúra elemzés szupport vektor géppel
Gépi tanulás Tanuló ágens, döntési fák, általános logikai leirások tanulása.
Lineáris programozás Elemi példa Alapfogalmak Általános vizsg.
Gazdaságstatisztika 11. előadás.
Alapsokaság (populáció)
Alapfogalmak.
Lineáris regresszió.
Két kvantitatív változó kapcsolatának vizsgálata
A Dijkstra algoritmus.
Belső állapotú bolyongások által meglátogatott pontok száma Nándori Péter (V.) Témavezető: Dr. Szász Domokos (BME MI)
Vektorterek Definíció. Legyen V Abel-csoport, F test, továbbá
Koncepció: Specifikáció: e par exp i = eb imp bod ib Specifikáció elemzése: tulajdonságok felírása a koncepció alapján + tulajdonságok bizonyítása.
Az elvben figyelembe veendő kapcsolási rendek számáról képet kaphatunk, ha felmérjük az adott N és M áramok és egy-egy fűtő- és hűtőközeg.
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.
1. MATEMATIKA ELŐADÁS Halmazok, Függvények.
Dr. Bánkuti Gyöngyi Klingné Takács Anna
A MATEMATIKA FELÉPÍTÉSÉNEK ELEMEI
A HATÁROZOTT INTEGRÁL FOGALMA
Valószínűségszámítás II.
Többdimenziós valószínűségi eloszlások
Hibajavító kódok.
előadások, konzultációk
T.5. tétel (minimálpolinom egyértelmű létezése)
Halmazok Érettségi követelmények:
Kiterjesztések szemantikája: Szemantikai tartomány : Adatoknak, vagy értékeknek egy nem üres halmazát szemantikai tartománynak nevezzük. Jelölése: D. Egy.
Gépi tanulási módszerek
HÁLÓZAT Maximális folyam, minimális vágás
A Dijkstra algoritmus.
Lineáris programozás Elemi példa Alapfogalmak Általános vizsg.
Korreláció, regresszió
HÁLÓZAT Maximális folyam, minimális vágás
II. konzultáció Analízis Sorozatok Egyváltozós valós függvények I.
IV. konzultáció Analízis Differenciálszámítás II.
Becsléselmélet - Konzultáció
I. Előadás bgk. uni-obuda
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.
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.
ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)
Gazdaságinformatikus MSc
A mesterséges neuronhálók alapjai
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.
Cache példák 2019 (IMSC).
Előadás másolata:

A “valószínűleg nagyjából helyes” (probably approximately correct, PAC) tanulási modell

PAC tanulhatóság A tanulhatóság egy formális matematikai modellje Az alapjait Valiant 1984-es cikke rakta le (“A theory of the learnable”) Erősen elméleti jellegű A gyakorlatban sajnos kevés eredménye használható A fogalomtanulási feladatot formalizálja a következőképp: X: a tanulandó objektumok (példák) tere. Ha például az objektumokat két folytonos jellemzővel írjuk le, akkor X=R2 c fogalom: cX. De úgy is felfoghatjuk, hogy c egy X{0, 1} leképezés (a tér egyes pontjai vagy beletartoznak, vagy nem) C fogalomosztály: fogalmak egy halmaza. A továbbiakban feltételezzük, hogy a tanulandó c fogalom mindig C-ből kerül ki!

PAC tanulhatóság L tanulóalgoritmus: Célja egy adott c megtanulása. Outputként kiválaszt egy h hipotézist a fogalomosztályból. Segítségként rendelkezésére áll egy Ex(c,D) függvény, amely <x,c(x)> alakú példákat képes adni c-ből. Feltételezzük, hogy a példák egy rögzített (de tetszőleges!) D eloszlást követnek (és függetlenek). Példa: X=R2 C=a sík tengelyekkel párhuzamos téglalapjainak összessége c: egy konkrét téglalap h: szintén egy konkrét téglalap D: egy valószínűségi eloszlás a sík pontjai fölött Ex(c,D): pozitív és negatív példákat ad c-ből

A hiba definiálása Hogyan mérjük a tanulás végén kapott h hipotézis hibáját? Lehetne például error(h)=c∆h=(c\h)(h\c) (c és h szimmetrikus különbsége – az ábrán a kék terület nagysága) Ez miért nem jó? D annak a valószínűsége, hogy a sík egy adott pontját kihúzzuk Azt szeretnénk, ha a módszer tetszőleges D eloszlásra működne Ha D egy adott térrészen 0, onnan sosem kapunk példákat  nem tudjuk megtanulni Ezért error(h)=c∆h nem garantálható tetszőleges D esetén Viszont D a tesztelés során ugyanaz  ekkor sem kapunk az adott térrészből példákat  nem baj, ha azon a térrészen nem tanultunk!

A hiba definiálása Megoldás: a hiba mértéke legyen c∆h, de súlyozva D-vel! Azaz c∆h helyett a D görbe alatti területet számoljuk ki c∆h-n „Ritkásabb” térrész: kevésbé tudjuk tanulni, de a hibába is kevésbé számít, mivel ott a súly, azaz D értéke kisebb Mivel D a pontok kihúzásának valószínűségi eloszlása, a D görbe alatti besatírozott terület nem más, mint annak a valószínűsége, hogy egy véletlenszerűen kihúzott pont c∆h-ba esik. Így a hiba definíciója:

PAC tanulhatóság - definíció Legyen C egy fogalom-osztály X felett. C PAC-tanulható, ha létezik olyan L algoritmus, amely az alábbit tudja: az Ex(c,D) által adogatott példák alapján tetszőleges c  C fogalomra, D(x) eloszlásra és 0<ε<1/2, 0<δ<1/2 konstansokra P≥1-δ valószínűséggel talál egy olyan h  C hipotézist, amelyre error(h)≤ε. Röviden: L nagy valószínűséggel talál egy kis hibájú hipotézist a tanulópéldák alapján ( azaz L „valószínűleg nagyjából helyes”). 1. megjegyzés: a tétel nem segít megkeresni L-et, csak azt mondja ki, hogy mit kell neki teljesíteni  2. megjegyzés: Vegyük észre, hogy ε és δ tetszőlegesen közel vihető nullához 2. megjegyzés: tetszőleges c  C és D(x) eloszlás esetén működnie kell

Miért „valószínűleg nagyjából” ? Miért kell a két engedmény, ε és δ ? Az ε hibát azért kell megengedni, mert a példahalmaz véges, ezért nem garantálható, hogy belőle a fogalom tökéletes precizitással tanulható. A legnyilvánvalóbb példa, ha az X tér végtelen, hiszen ilyenkor véges számú példával sosem fogjuk tudni tökéletesen lefedni a teljes teret. A δ valószínűség azért kell, mert a kis hibát nem tudjuk minden futtatás esetére garantálni. Lehet ugyanis, hogy egy adott tanítás esetében nagyon szerencsétlenül sikerül példákat húznunk: előfordulhat, pl., hogy az összes tanítópélda ugyanaz a pont – ez pedig nem reprezentálja kellőképpen a tanulandó fogalmat. Ezért egy jó hipotézis megtalálását csak egy bizonyos valószínűséggel tudjuk garantálni.

Példa X=R2 (a tanítópéldák a sík pontjai) C=a sík tengelyekkel párhuzamos téglalapjainak összessége c: egy konkrét téglalap h: szintén egy adott téglalap error(h): h∆c területe D(x)-szel súlyozva. Ex(c,D): pozitív és negatív példákat ad c-ből Legyen L az az algoritmus, amely a legszűkebb olyan téglalapot adja vissza hipotézisként, amely az összes pozitív példát tartalmazza! Vegyük észre, hogy h  c a példaszám növelésével a hiba csak csökkenhet

Példa Bebizonyítjuk, hogy a példaszám növelésével a hiba egyre nagyobb valószínűséggel egyre kisebb lesz, vagyis hogy az L algoritmus PAC-tanulja C-t Legyen 0<ε, δ≤1/2 rögzített. Tekintsük azt a h’ hipotézist, amelynek az alábbi módon kapjuk az oldalait: Vagyis ε/4 annak a valószínűsége, hogy egy véletlenszerűen kihúzott példa T-be esik Emiatt 1- ε/4 annak a valószínűsége, hogy a példa nem esik T-be Annak a valószínűsége, hogy m véletlenszerű példa nem esik T-be: A négy oldalon a 4 sáv „összterülete” <ε (az átfedések miatt) Ha minden oldalon húztunk példát a sávból, akkor error(h)< ε az aktuális h hipotézisre (hiszen a sávból csak pozitív példát húzhatunk, ez esetben pedig h adott oldalát „oda kell tolni”)

Példa error(h) ≥ ε csak úgy lehetséges, hogy valamelyik oldalon nem kaptunk még példát a sávból error(h) ≥ ε  valamelyik oldalon nem húztunk a sávból P(error(h) ≥ ε) ≤ P(valamelyik oldalon nem húztunk a sávból) Azaz ezt kaptuk: P(error(h) ≥ ε) ≤ Az ε-nál nagyobb hiba valószínűségét δ alá akarjuk szorítani: Hogyan néz ki ez a görbe m függvényében, rögzített ε mellett? Exponenciális függvény 0 és 1 közti alappal 0-hoz tart, ha m tart végtelenhez Tetszőlegesen kicsi δ alá beszorít- hatjuk megfelelően nagy m választásával

Példa – m kifejezése A PAC-tanulhatóságot lényegében már bizonyítottuk, de azért adjunk meg egy konkrét m értéket ε és δ függvényében: Felhasználjuk, hogy 1-x≤e-x, és inkább ehhez keresünk küszöböt: Azaz adott ε és δ esetén ha m a fenti küszöbnél nagyobb, akkor P(error(h) ≥ ε) ≤ δ Vegyük észre, hogy m viszonylag lassan nő ε és δ függvényében, ami gyakorlati szempontból fontos lehet

Hatékony PAC tanulás Gyakorlati szempontból fontos lenne, ha a tanításhoz szükséges példák száma csak lassan növekedne ε és δ csökkentésével „lassan” = polinomiálisan A tanítópéldák számán kívül mi befolyásolhatja még egy tanuló-algoritmus műveletigényét? Az egyes tanítópéldák feldolgozásának műveletigénye jellemzően függeni szokott a dimenziószámtól, n-től Az algoritmus működése során minden egyes tanítópélda megkapása után módosítja a h hipotézisét. Ezért a műveletigényt nyilván jelentősen befolyásolja a hipotézis komplexitása, illetve a megtanulandó c fogalom komplexitása (hiszen c-t akarjuk reprezentálni h-val) A következőkben definiáljuk a c fogalom, pontosabban az ahhoz tartozó reprezentáció bonyolultságát

Fogalom vs. Reprezentáció Mi a különbség a fogalom és a reprezentáció között? Fogalom: egy absztrakt (pl. matematikai) koncepció Reprezentáció: egy konkrét számítógépes ábrázolás 1. példa: a fogalom egy logikai formula Ez reprezentálható diszjunktív normálformával De akár a változók NAND műveletettel való összekapcsolásával is 2. példa: a sík sokszögeit akarjuk tanulni Ezeket reprezentálhatjuk a csúcsaik sorozatával De akár az éleik egyeneseinek egyenletével is Tehát a reprezentáció egy konkrét algoritmikai megoldást takar Ezentúl feltesszük, hogy L egy konkrét H reprezentációs osztály fölött dolgozik (innen választ h-t) H elég bő, azaz bármely c  C reprezentálására képes.

Hatékony PAC tanulás Egy H reprezentáció méretét így definiáljuk: valamilyen mérték  komplexitására, pl. a kódolásához szükséges bitek száma. Egy cC fogalom méretét úgy definiáljuk, mint a reprezentálásához szükséges legkisebb reprezentáció mérete: ahol  c azt jelöli, hogy a  a c egy lehetséges reprezentációja. Hatékony PAC tanulhatóság: Legyen C egy fogalom-osztály, H pedig egy reprezentációs osztály, amely képes C minden elemének reprezentálására. C hatékonyan tanulható H felett, ha van olyan H-n dolgozó algoritmus, amellyel C PAC-tanulható, és L polinomiális idejű n-re, size(c)-re, 1/ és 1/-ra nézve minden cC esetén. Megjegyzés: A hatékony alkalmazhatósághoz nyilván az is kell, hogy a tanulás mellett h(x) kiértékelése is polinomiális idejű legyen n és size(h) függvényében tetszőleges x pontban, de általában ez sokkal könnyebben teljesíthető

Példa 3 tagú diszjunktív normálforma: T1vT2vT3, ahol Ti literálok (negálatlan vagy negált változók) konjunkciója A 3-tagú diszjunktív normálformák reprezentációs osztálya nem hatékonyan PAC-tanulható. Azaz ha a 3-tagú DNF-eket akarjuk tanulni, és saját magukkal reprezentáljuk őket, akkor a PAC-tanulás nem megoldható A 3-tagú DNF-ek fogalomosztálya hatékonyan PAC-tanulható! Azaz maga a fogalomosztály PAC-tanulható, de ehhez egy másik, bővebb, és hatékonyabban manipulálható reprezentációt kell választani. Ezzel az ügyesebb reprezentációval megoldható, hogy a műveletigény mégis polinomiális maradjon

Occam tanulás Korábban az Occam-borotva elvét általános tanulási heurisztikaként emlegettük: az egyszerűbb magyarázat többnyire jobban általánosít. Ezt most formálisan fogjuk megfogalmazni a PAC-modell keretében. A hipotézis „egyszerűségén” a hipotézis méretét fogjuk érteni. A kis méretű hipotézisre törekvés azt fogja jelenteni, hogy a tanulónak tömörítenie kell a tanítópéldákat. Definíció: Legyen 0 és 0≤β<1 konstans. L (H hipotézistér fölött dolgozó) algoritmus (,β) –Occam-algoritmus a C fogalom-osztályon, ha egy m-elemű mintát adva neki cC-ből olyan hH hipotézist talál, amelyre: h konzisztens a mintákkal size(h)≤(n*size(c))*m (azaz size(h) lassan nő n, size(c) és m függvényében) L hatékony (,β) –Occam-algoritmus, ha futásideje polinomiális n, m és size(c) függvényében

Occam tanulás Miért mondjuk, hogy egy Occam-algoritmus tömörít? N és size(c) adott feladat esetén rögzített, ráadásul a gyakorlatban m>>n Ezért mondhatjuk, hogy a fenti képlet lényegében size(h)<m -ra redukálódik, ahol <1 H hipotézis konzisztens az m példával, azaz pontosan tudja az m példa címkéjét. Ez m darab 0-1 címke, azaz m bitnyi információ Ha size(h) úgy tekintjük, mint a h reprezentálásához szükséges bitek száma, akkor size(h)<m azt jelenti, hogy a tanuló a h hipotézisbe m bitnyi információt m biten tárolt el (ahol <1), azaz a tanítópéldák címkéit h tömörítve reprezentálja Tétel: Egy hatékony Occam-tanulóalgoritmus egyúttal hatékony PAC-tanulóalgoritmus is. Azaz a (bizonyos definíció szerint értett) tömörítés garantálja a (bizonyos definíció szerint értett) tanulást!

Mintakomplexitás Mintakomplexitáson a PAC-tanuláshoz szükséges példák számát értjük. A gyakorlatban nagyon hasznos lenne, ha adott feladat esetén előre meg tudnánk mondani, hogy hány tanítópéldára lenne szükségünk előre adott ε és δ PAC-küszöbértékek eléréséhez Mintakomplexitás véges hipotézistér esetén: Tétel: ha a H hipotézistér véges, akkor a cH fogalom konzisztens tanulóval való PAC-tanulásához szükséges m példák száma: ahol |H| a hipotézistér elemszáma Bizonyítás: konzisztens tanuló=csak a példákkal konzisztens hipotézist választhat a hipotézistérből. Ezért a bizonyítás azon fog alapulni, hogy leszorítjuk az összes konzisztens hipotézis hibáját  alá A bizonyítás így lesz a legegyszerűbb, de emiatt a megoldás miatt a korlát nem lesz szoros (azaz nem a lehető legkisebb m-et fogjuk megtalálni)

Bizonyítás Tegyük fel, hogy k db. olyan hipotézis van, amelynek a hibája >. Adott h’ hipotézisre error(h’)>  mellett a konzisztencia valószínűsége P(h’ konzisztens az m példával)≤ (1-)m Mivel a kimenetként kiválasztott h hipotézis a k fenti hipotézis közül valamelyik kell legyen: P(error(h)>) ≤P(a k db hipotézis bármelyike konzisztens az m példával)≤k(1-)m≤|H|(1-)m≤|H|e-m Ahol felhasználtuk a k≤|H| és (1-x)≤e-x egyenlőtlenségeket. Rögzített  mellett |H|e-m exponenciálisan csökkenő függvény Így P(error(h)>) tetszőlegesen kicsi δ küszöb alá leszorítható

Példa A gyakorlatban használható-e az előbb kapott küszöb? Legyen X véges tér n darab bináris jellemzővel. Ha olyan tanulót szeretnénk, amelynek hipotézistere az összes lehetséges X fölötti hipotézist tartalmazza, akkor (az össze lehetséges n-változós Boole-függvény száma) Helyettesítsük ezt be a képletbe: Ez n-re nézve exponenciális, azaz a gyakorlatban legtöbbször használ-hatatlan (túl nagy) minimálisan szükséges példaszámot ad meg Vannak ennél jóval hosszadalmasabb bizonyítások, amelyekkel ennél lejjebb lehet vinni m-et, de a gyakorlatban sajnos ezeknek sincs sok jelentősége 

A végtelen hipotézistér esete Véges H tér esetére kaptunk egy elégséges küszöböt: Sajnos a fenti képlet nem ad véges értéket, ha |H| végtelen Ilyenkor kerül képbe a Vapnik-Chervonenkis dimenzió, de ehhez előbb kell egy segédfogalom: Legyen X egy objektum-tér, H pedig egy reprezentációs osztály X fölött (mindkettő lehet végtelen is!). Legyen S egy tetszőleges véges részhalmaza X-nek. Akkor mondjuk, hogy H szétválasztja S-et,ha S minden lehetséges {+,-} felcímkézéséhez hH, amely így osztályozza S pontjait. 1. Megjegyzés: „végtelen halmazra teljesül valami, ha tetszőleges véges részhalmazára teljesül” típusú tétel 2. Megjegyzés: Ez nyilván H reprezentációs képességét méri, hiszen ha H nem képes szétválasztani valamely véges S-et, akkor S kiterjesztésével lehet olyan fogalmat definiálni X-en, amelyet H nem képes megtanulni.

A Vapnik-Chervonenkis dimenzió H Vapnik-Chervonenkis dimenziója d, ha van olyan S, |S|=d, amelyet szétválaszt, de nincs olyan S, |S|=d+1, amelyet szétválaszt. (Ha esetleg bármely véges S-et szétválaszt, akkor VCD=.) Tétel: Legyen C egy fogalom-osztály, H pedig egy reprezentációs osztály, amelyre VCD(H)=d. Legyen L egy tanulóalgoritmus, amely egy cC fogalmat tanul oly módon, hogy kap belőle egy S példahalmazt, |S|=m, és kiad egy hH hipotézist, amely konzisztens S-sel. L PAC-tanulja C-t H fölött, ha (Ahol c0 egy megfelelő konstans) Megjegyzés: A véges esettel ellentétben az itt kapott korlát szoros (azaz m példa nem csak elegendő, de bizonyos esetekben szükséges is).

A Vapnik-Chervonenkis dimenzió Hasonlítsuk össze a véges és a végtelen H esetére kapott küszöböt: Véges eset: Végtelen eset: A két képlet láthatóan elég hasonló felépítésű, de |H| helyét végtelen esetben a Vapnik-Chervonenkis dimenzió veszi át És mindkettő elég lassan növekszik ε és δ függvényében, tehát ilyen értelemben nem is tűnnek rossz korlátnak…

Példák VC-dimenzióra Intervallumok a számegyenesen: VCD=2 VCD≥2, mivel ez a két pont szétválasztható: (=elszeparálható bármilyen címkézés esetén) VCD<3, mivel semmelyik 3 pont sem elválasztható: Osztályok egyenessel való elválasztása a síkon: VCD=3 (d-dimenziós térben: VCD=d+1) VCD ≥3: ez a konkrét 3 pont elválasztható: (minden lehetséges címkézésre megmutatni!) VCD<4, mivel semmelyik 4 pont nem elvá- lasztható (minden pont 4-esre megmutatni!)

Példák VC-dimenzióra Tengelyekkel párhuzamos téglalapok: VCD=4 VCD≥4: ez a konkrét 4 pont szétválasztható: VCD<5: semmelyik 5 point sem szétválasztható: Konvex sokszögek a síkon: VCD=2d+1 (d a csúcsok száma) (A könyv csak az egyik irányt bizonyítja) Literálok konjunkciója {0,1}n felett: VCD=n (Mitchell könyv, csak az egyik irányt bizonyítja)