„Kooperatív és tanuló rendszerek - zh 2009 04 28” változatai közötti eltérés

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez
(Új oldal, tartalma: „{{GlobalTemplate|Infoszak|KooperativRendszerekZH2009apr28}} ==Kooperatív és Tanuló Rendszerek ZH 2009. április 28.== '''1. Hasonlítsa össze a Perceptron-t és a…”)
 
a
28. sor: 28. sor:
  
 
'''5. Mit nevezünk lokális és mit globális tanulásnak? Van-e előnye egyiknek a másikkal szemben? Az ismert hálók közül melyek a globális és melyek a lokális tanulási hálók és miért? (10p)'''
 
'''5. Mit nevezünk lokális és mit globális tanulásnak? Van-e előnye egyiknek a másikkal szemben? Az ismert hálók közül melyek a globális és melyek a lokális tanulási hálók és miért? (10p)'''
 
* Globális tanulás: van valamilyen globális ismeretünk az adatokról, és csak bizonyos paramétereket határozunk meg. Pl. osztályozási feladatnál tudjuk, hogy mindkét osztályba tartozó pontok normáleloszlást követnek, különböző várható értékkel és szórással; határozzuk meg a várható értéket és a szórást, majd ezek alapján azt a hipersíkot, ami a legkisebb hibával választja el őket. Hátránya, hogy a feltételezések az adatokról lehetnek tévesek (ami hibás végkövetkeztetést fog eredményezni), illetve a paraméterek becslése (amik igazából másodlagosak, csak részeredmények az optimális osztályozó megtervezésekor) költséges lehet. Ebből a kategóriából nem tanultunk módszert (kivéve: Képfeldolgozásból volt említve a háttér és az objektum hisztogram alapú elkülönítése - ott normáleloszlást tételezünk fel, és a priori illetve feltételes valószínűségek alapján döntünk).
 
* Lokális tanulás: nem tételezünk fel modellt az adatokról, nem becsülünk eloszlások köztes paramétereit, hanem közvetlenül a pontok adataiból próbálunk osztályozót konstruálni. Ilyen az SVM és a tanult neurális hálók mindegyike (MPL, CMAC, stb.). Hátránya, hogy az adatoknak általában a "határhoz közeli" részére koncentrál, és nagyobb skálájú trendeket nem vesz észre.
 
* Léteznek hibrid módszerek is, amik a két kategória előnyeit ötvözik. Ilyen pl. az <math> M^4 </math> (Maxi-Min Margin Machine).
 
  
 
* Tökéletesen rossz megoldás. A jó megoldásban arról van szó, hogy lokális hatása van egy tanulópont tanításának, vagy globális. A neurális hálónál globális, a CMAC-nél globális, az RBF meg a függvénytől, és annak a tulajdonságától függ, vagyis az lehet globális, és lokális. -- [[RynkiewiczAdam|Tsiga]] - 2012.05.03.
 
* Tökéletesen rossz megoldás. A jó megoldásban arról van szó, hogy lokális hatása van egy tanulópont tanításának, vagy globális. A neurális hálónál globális, a CMAC-nél globális, az RBF meg a függvénytől, és annak a tulajdonságától függ, vagyis az lehet globális, és lokális. -- [[RynkiewiczAdam|Tsiga]] - 2012.05.03.

A lap 2014. május 5., 11:01-kori változata

Ez az oldal a korábbi SCH wiki-ről lett áthozva. Az eredeti változata itt érhető el.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor kérlek javíts rajta egy rövid szerkesztéssel.

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót


Kooperatív és Tanuló Rendszerek ZH 2009. április 28.

1. Hasonlítsa össze a Perceptron-t és az Adaline-t felépítés, képesség, tanítási algoritmus szempontjából! (10p)

  • A két neuron felépítése lényegében azonos: a bemeneti [math] (x_1, x_2, ..., x_N) [/math] vektort kiegészítjük egy [math] x_0 = 1 [/math] elemmel (ez azért kell, hogy a csupa nulla bemenő vektorra is tudjunk nemnulla kimenetet generálni), majd az így kapott [math] \underline{x} [/math] vektort beszorozzuk a súlyokat tartalmazó [math] \underline{w}^T [/math] vektorral. Az [math] s = \underline{w}^T \underline{x} [/math] értéket pedig küszöbözzük: [math] y = sgn(\underline{w}^T \underline{x}) [/math] (pozitív s-re 1, negatívra -1 lesz a kimenet).
  • A perceptron tanításához a neuron kimenetét (y) vetjük össze a kívánt kimenettel (d). Egy tanítópont hibája: [math] \varepsilon = d - y [/math], a súlyvektor módosítása: [math] \underline{w}' = \underline{w} + \alpha \varepsilon \underline{x} [/math] (alfa a tanítási tényező). Sorra vesszük a tanítópontokat, és addig ismételgetjük a korrekciót, amíg mindegyik tanítópontra megfelelő lesz a kimenet. Csak lineárisan szeparálható pontok osztályozására működik (azaz, ha létezik a pontokat tartalmazó N-dimenziós térben olyan hipersík, aminek egyik oldalán van az összes +1-es kimenetű pont, a másik oldalán a többi). Ez esetben belátható, hogy véges lépésben egy jó súlyvektorhoz konvergál az eljárás.
  • Az adaline tanítása annyiban más, hogy nem y-nal vetjük össze d-t, hanem s-sel, vagyis a küszöbözés előtti súlyozott összeggel. Egy tanítópont hibája: [math] \varepsilon = d - s [/math], az összes pont átlagos négyzetes hibája: [math] \frac{1}{P} \sum_{i=0}^P (d_i - \underline{w}^T \underline{x}_i)^2 = \frac{1}{P}(\underline{d} - \underline{\underline{X}}\underline{w})^T (\underline{d} - \underline{\underline{X}}\underline{w}) [/math], ezt akarjuk minimalizálni. (P a tanítópontok száma, X a vektoraikból mint sorvektorokból képzett mátrix, d a kivánt kimenetekből képzett oszlopvektor). A minimumhelyén a gradiense (a súlyvektor függvényében) 0 kell legyen, innen kifejezve a súlyvektort: [math] \underline{w} = (\underline{\underline{X}}^T \underline{\underline{X}})^{-1} \underline{\underline{X}}^T \underline{d} [/math]. Itt nincs iteráció (bár a gradiens nullhelyének meghatározása nagyméretű mátrixok esetén iteratív módszerekkel célszerűbb), és nem csak lineárisan szeparálható pontoknál működik, viszont semmi garancia nincs arra, hogy jól fog minden pontot osztályozni, mert csak a lineáris rész négyzetes hibáját minimalizáltuk, nem a rosszul osztályzott pontok számát.

2. Származtassa a CMAC hálózat súlyvektorának analitikus megoldását. Mutassa meg, hogy a megoldás megfeleltethető a Wiener-Hopf egyenlet megoldásának. Adja meg a két összefüggés kapcsolatát! (20p)

  • A CMAC súlyainak meghatározásához a következő egyenletet kell megoldani: [math] \underline{\underline{A}}\underline{w}=\underline{d} [/math], ahol w a súlyok oszlopvektora, d a tanítópontokban kívánt kimenetekből álló oszlopvektor. Az A mátrix azt írja le, melyik tanítópont melyik neuronokat aktiválja (vagyis melyik tartományokba esik bele). Az i. sor j. eleme adja meg, hogy az i. tanítópont a j. neuront aktiválja-e, a baloldalon álló szorzat a tanítópontok tényleges aktivációinak oszlopvektora.
  • Az egyenletet általános esetben nem oldható meg egzaktul, viszont megkereshető az a súlyvektor, amire a legkisebb lesz a négyzetes hiba: [math] {|| \underline{\underline{A}}\underline{w}-\underline{d} ||}^2 = (\underline{\underline{A}}\underline{w}-\underline{d})^T (\underline{\underline{A}}\underline{w}-\underline{d}) [/math]. A minimum megkereséséhez tekintsük a kifejezést w elemei függvényének, és keressük meg azt a helyet, ahol a gradiens 0. Belátható, hogy a gradiens [math] 2\underline{\underline{A}}^T\underline{\underline{A}}\underline{w} - 2\underline{\underline{A}}^T\underline{d} [/math], a nullhelyben pedig [math] \underline{w} = (\underline{\underline{A}}^T\underline{\underline{A}})^{-1} \underline{\underline{A}}^T \underline{d} [/math].

3. Mit nevezünk túltanulásnak, milyen következménye van, és hogyan lehet védekezni ellene? (Minden ismert lehetséges ellenszert mutasson be) (10p)

  • Egy rendszer tanítása során a tanítópontok hibája általában csökkenő jellegű. A hálózat hibája a tanításhoz fel nem használt pontokban szintén csökken (a hálózat az egész függvényt egyre jobban megtanulja). Egy bizonyos pont után viszont, a tanítópontok hibája még mindig csökken, de a többi ponté nőni kezd, mivel a háló a tanítópontok olyan apró részleteit kezdi tanulni, amik az egész függvényre nem igazak, és romlik az általánosítóképesség.
  • Egyik ellenszer a korai megállás: amikor észrevesszük, hogy az ellenőrzéshez használt nem tanító pontkban nőni kezd a hiba, abbahagyjuk a tanítást (hiába lehetne a tanítópontok hibáját még csökkenteni).
  • További módszerek: keresztvalidáció, regularizáció (TODO).
  • Wikipédia: túltanulás
  • Wikipédia: korai leállás

4. Mikor és miért van szükség CMAC hálózatoknál tömörítő leképzésre. Milyen problémákat okozhat ennek használata, és hogyan lehet a problémákat mérsékelni/elkerülni? (10p)

könyv 5. fejezet 132-135. oldal, össze kéne foglalni

5. Mit nevezünk lokális és mit globális tanulásnak? Van-e előnye egyiknek a másikkal szemben? Az ismert hálók közül melyek a globális és melyek a lokális tanulási hálók és miért? (10p)

  • Tökéletesen rossz megoldás. A jó megoldásban arról van szó, hogy lokális hatása van egy tanulópont tanításának, vagy globális. A neurális hálónál globális, a CMAC-nél globális, az RBF meg a függvénytől, és annak a tulajdonságától függ, vagyis az lehet globális, és lokális. -- Tsiga - 2012.05.03.

Ponthatárok:

  • 1: 0-23
  • 2: 24-31
  • 3: 32-39
  • 4: 40-47
  • 5: 48-60

-- Sanyi - 2009.04.28.