SZÁMÍTÓGÉP-ARCHITEKTÚRÁK – 15 NEURÁLIS HÁLÓZATOK Németh Gábor
2009Németh Gábor: Számítógép-architektúrák2 NEURÁLIS HÁLÓZATOK - 1 Három fő hajtóerő: 1.Az információ-technológia számára ma az adaptív viselkedés, tanulás és gondolkodási funkciók érdekes kihívást jelentenek. 2.A sebesség növelésének egyik lehetséges útja a nagymértékű párhuzamosítás. 3.Noha a digitális számítógépek kiválóak pontosan definiált problémák algoritmikus megoldására, számos feladat nem illik ebbe a kategóriába.
2009Németh Gábor: Számítógép-architektúrák3 NEURÁLIS HÁLÓZATOK - 2 Kezdettől fogva egyik fő kutatási célkitűzés valamiféle mesterséges intelligencia kifejlesztése. Két fő probléma: 1.Nincs az intelligencia területét kellően lefedő és az intelligencia jelentését általánosan definiáló elfogadott elmélet. (A lift is rendelkezik bizonyos intelligenciával, oda megy, ahová hívják.) 2.Az élő szervezetek által megvalósított intelligencia- funkciókhoz tartozó architektúrában az elemek száma hatalmas. (Az emberi agyban a neuronok száma 10 11, az összeköttetések száma )
2009Németh Gábor: Számítógép-architektúrák4 NEURÁLIS HÁLÓZATOK - 3 MESTERSÉGES NEURÁLIS HÁLÓZAT: a biológiai idegrendszerek viselkedésének egy részhalmazát szimulálni kívánó, egyszerű adaptív elemekből álló, nagymértékben párhuzamos hálózat. Egy (biológiai alapú) neurális hálózat nemlineáris differenciálegyenleteket old meg analóg formában, valós időben. A neurális hálózat egy részének elemi funkciója meghatározott jelminták szelektív adaptív szűrése.
2009Németh Gábor: Számítógép-architektúrák5 NEURON MODELL - 1 A neuronokat axonok (kimenetek) csatlakoztatják a többi neuronhoz változó súlytényezőjű csatlakozásokon (szinapszisokon) keresztül. FORMÁLIS NEURON MODELL: a1a1 a2a2 anan bemenetek w1w1 w2w2 wnwn o kimenet LEGEGYSZERŰBB MODELL: (c =állandó, H =Heaviside függvény, k = küszöb- szint)
2009Németh Gábor: Számítógép-architektúrák6 NEURON MODELL - 2 A bemenő és kimenő jelek értékét a pillanatnyi impulzusfrekvencia hordozza. A biológiai neuron pontosabb közelítéseinél három tényezőt kell figyelembe venni: 1.A bemenet nemlineáris veszteségű integrátorként viselkedik (és lehet, hogy nemlineáris az összegzés is). 2.A kimenet telítődik. 3.A súlytényezők adaptálódnak a gerjesztéshez is és a kimenő jelhez is.
2009Németh Gábor: Számítógép-architektúrák7 NEURON MODELL A bemenet nemlineáris veszteségű integrátorként viselkedik (és lehet, hogy nemlineáris az összegzés is). (o) egy nemlineáris veszteség tényező. Az o kimenet egy nemnegatív aktivitás változó. Állandó be- menő jelek esetén o aszimptotikus egyensúlyi értékhez tart: ebből
2009Németh Gábor: Számítógép-architektúrák8 NEURON MODELL A kimenet nagy aktivitásnál telítődik. Ezért a (o) veszteség az o aktivitás (kimenet) valamilyen szigorúan növekvő függvénye kell legyen. Mivel o nem lehet negatív egy szigmoid függvénnyel közelíthető: 3.A súlytényezők adaptálódnak a gerjesztéshez is és a kimenő jelhez is: - adaptációs paraméter, (o) - o pozitív függvénye, Taylor sorában az állandó tag zérus (zérus aktivitásnál nem változik a neuron viselkedése). Nincs elméletünk F, γ, α és β meghatározására!
2009Németh Gábor: Számítógép-architektúrák9 NEURON MODELL - 5 Kísérleti adatok szerint a neuron a bemenő gerjesztés alapvető tulajdonságára válik a legérzékenyebbé. Nem teljesen bizonyított viselkedés: Ha az a bemenő vektor elemei stacionárius tulajdonságú sztochasztikus változók, akkor a w súlyvektor elemei az a korrelációs mátrixának legnagyobb sajátérték vektorához konvergálnak.
2009Németh Gábor: Számítógép-architektúrák10 NEURÁLIS RENDSZER MODUL x bemenet N M y kimenet Anatómiai vizsgá- latok alapján az agy ennek kétdi- menziós változata. M és N adaptív mátrixok! Nincs elméletünk f 1, f 2 és f 3 meghatározására!
2009Németh Gábor: Számítógép-architektúrák11 NEURÁLIS RENDSZER MODUL - 2 KÉT ALAPVETŐ KÉRDÉS: Az élő szervezetek neurális hálózatai milyen adaptív függvényeket alkalmaznak? Nem ismerjük pontosan a választ! Meghatározott tulajdonságokhoz milyen adaptív függvények szükségesek? Még mindig hiányzik az általános elmélet!
2009Németh Gábor: Számítógép-architektúrák12 NEURÁLIS RENDSZER MODUL - 3 PÉLDA: alakzatfelismerés. A neurális hálózatot fekete doboznak tekintjük, mely {x} bemenő vektor halmazt fogad és arra {y} választ ad. Az i. neuron kimenete y i = f(x, m) ahol m a hálózat belső paramétereit jelenti. Alakzatfelismerés: ha egy x k bemenő minta az i osztályhoz tartozik, akkor (az i. neuron felismeri, a legnagyobb kimenő jelet adja)
2009Németh Gábor: Számítógép-architektúrák13 NEURÁLIS RENDSZER MODUL - 4 A probléma általános megfogalmazása a gyakorlatban két problémát vet fel: 1.A különféle osztályok statisztikus sűrűségfüggvényei átlapolódnak, így csak közelítő osztályozást kapunk. (Pl. beszédfelismerésnél a fonémák kiejtése függ a beszélőtől, a mondatban elfoglalt helytől stb. A use [‘yüz] vagy [‘yüs] és a youth [‘yüth] pl. átlapolódnak.) 2.HOGYAN DEFINIÁLJUK AZ OSZTÁLYOKAT? - Tetszőlegesen definiálhatjuk az osztályokat? - Valamilyen belső (esetleg rejtett) szabályok határozzák meg őket?
2009Németh Gábor: Számítógép-architektúrák14 NEURÁLIS RENDSZER MODUL - 5 Például hogyan alakult ki a ”madár” fogalma? Ha valamilyen belső szabályok/összefüggések vezetnek az osztályok fogalmának kialakulására, akkor a neurális hálózat adaptálódhat ezen szabályokhoz, azaz valamifajta tanulást valósíthat meg. Meglehetősen általánosan elfogadott vélemény szerint az osztályok belső jellemzése az elsődleges információ- elemek közötti kölcsönös összefüggésekből származik. Az osztályok kialakulása versengő (felügyelet nélküli) tanulási folyamat eredménye!
2009Németh Gábor: Számítógép-architektúrák15 SZEMANTIKUS TÉRKÉP - 1 Felügyelet nélküli tanulás neurális hálózatban: A cellák (neuronok) a bemenő jelet összehasonlítják belső paramétereikkel. A legjobban egyező cella "behangolja" magát erre a bemenetre. A legjobban egyező cella topológiai szomszédait aktivizálja, hogy (kisebb mértékben) szintén hangolódjanak erre a bemenetre. A felügyelet nélküli tanulás eredményeként a cellák más-más bemenő jelekre hangolódnak be úgy, hogy valamilyen tulajdonság koordináta rendszert (szemantikus térképet) hoznak létre a hálózatban.
2009Németh Gábor: Számítógép-architektúrák16 SZEMANTIKUS TÉRKÉP - 2 Egy x bemenő vektor az objektum nevét és tulajdonságait tartalmazza: A matematikai eljárás stabilitásának biztosítására a vektor hosszát egységnyire normalizáljuk. A név és tulajdonság részeket egymáshoz képest a tulajdonság javára súlyozzuk. A nevek kódolásánál egyforma metrikus távolságot biztosítunk a névpárok között.
2009Németh Gábor: Számítógép-architektúrák17 SZEMANTIKUS TÉRKÉP - 3 Minden cellát (neuront) kétdimenziós helyével (p) azonosítunk. A gerjesztett cellacsoport közepe az a c helyű neuron, melyre x w c = max. A neuron súlytényezőinek adaptációja: A relatív adaptáció a maximum helyétől mért távolsággal csökken:
2009Németh Gábor: Számítógép-architektúrák18 SZEMANTIKUS TÉRKÉP - 4 A konvergencia biztosítására: ahol n a tanítási (adaptációs) lépések száma. Nincs elméletünk ε, h pc, σ i és σ f meghatározására! A felügyelet nélküli tanulásnál kialakuló szemantikus térképen megjelennek a térképen szomszédos területeket összefogó kategóriák (pl. madarak), DE még nincs elméletünk a kategóriák automatikus körülhatárolására.
2009Németh Gábor: Számítógép-architektúrák19 Megfelelő topológia felhasználásával egy tulajdonság típusa változó lehet, például ”kicsi” lehet IGAZ (Boole), KÖZEPES (fuzzy), 132 cm (valós) stb. SZEMANTIKUS TÉRKÉP - 5 A szemantikus térkép nincs helyhez rögzítve (a kezdeti súlytényező eloszlástól függ) – hasonlóan a biológiai neurális hálókhoz. Így a sérült részek szerepét idővel (további tanulással) más részek átvehetik.
2009Németh Gábor: Számítógép-architektúrák20 SPECIÁLIS CÉLÚ MESTERSÉGES NEURÁLIS HÁLÓZAT - 1 Többrétegű neurális hálózatok (nem biológiai hálózatot utánzó neurális hálók). –Van egy bemeneti, egy kimeneti és közöttük egy vagy több un. rejtett réteg. (Önkényes, de ésszerűnek látszó döntés.) –Csak az un. visszafelé terjedéses hálókkal foglalkozunk. Tanítóval tanulnak (minden bemenethez megadjuk a kívánt kimenetet).
2009Németh Gábor: Számítógép-architektúrák21 SPECIÁLIS CÉLÚ MESTERSÉGES NEURÁLIS HÁLÓZAT - 2 A kívánt kimenettől való eltérés a hiba, ennek alapján korrigáljuk a súlytényezőket. –(Tanító nélküli tanulás vagy önszervező hálózat: a súlytényezőket csak a kimenetek alapján módosítjuk, mint a szemantikus térképnél.) A hibát először a kimenetre határozzuk meg, onnan transzformáljuk vissza a rejtett réteg(ek)re (visszafelé terjedés).
2009Németh Gábor: Számítógép-architektúrák22 HÁROMRÉTEGŰ, VISSZAFELÉ TERJEDÉSES NEURÁLIS HÁLÓZAT - 1 o1o1 okok oqoq i1i1 i inin w1 11 w1 ij w1 1j w1 1p w1 i1 w1 ip w1 n1 w1 nj w1 np kimeneti réteg h1h1 hjhj hphp rejtett réteg bemeneti réteg w2 11 w2 1k w2 1q W1 súlymátrix W2 súlymátrix
2009Németh Gábor: Számítógép-architektúrák23 HÁROMRÉTEGŰ, VISSZAFELÉ TERJEDÉSES NEURÁLIS HÁLÓZAT - 2 Leggyakoribb a modell három rétegből álló változata, mely dedikált alkalmazásokra igen jó eredményeket ad. Több réteg nagyon bonyolult hálózatra vezet. PÉLDA: XOR megvalósítása xy z ab bemenetek -4,9-5,1 54,6 2,22,5 kimenet Kezdeti állapotban a súlyté- nyezők véletlenszámok (a be- meneteken 1). A neuron legyen a legegy- szerűbb modell, Heaviside függvényének küszöbszintje legyen 0,1 (önkényes döntés, nincs rá elmélet).
2009Németh Gábor: Számítógép-architektúrák24 HÁROMRÉTEGŰ, VISSZAFELÉ TERJEDÉSES NEURÁLIS HÁLÓZAT - 3 xy z ab bemenetek -4,9-5,1 54,6 2,22,5 kimenet Az első tanítási lépésben a bemenet legyen (1, 1), az ehhez tartozó kimenet 0. 2,2*1+2,5*0=2,2 -4,9*1+5*1=0.1 4,6*1-5,1*1= -0,5 =1 =0 A hiba 0 – 1 = –
2009Németh Gábor: Számítógép-architektúrák25 HÁROMRÉTEGŰ, VISSZAFELÉ TERJEDÉSES NEURÁLIS HÁLÓZAT ,9-5,1 xy z ab bemenetek (1,1) 54,6 2,22,5 kimenet (0) =1 =0 A hiba 0 – 1 = – 1 Az – önkényes – tanulási szabály (a súlytényezők módosítása): ahol o i az i. neuron kimeneti értéke, e j a hiba a j. neuron kimenetén. Így w xz = w xz + x * e z = 2,2 + 1 * -1 = 1,2 w yz = w yz + y * e z = 2,5 + 0 * -1 = 2, ,22,5
2009Németh Gábor: Számítógép-architektúrák26 HÁROMRÉTEGŰ, VISSZAFELÉ TERJEDÉSES NEURÁLIS HÁLÓZAT - 5 xy z ab bemenetek (1,1) 54,6 2,22,5 kimenet (0) =1 =0 -4,9 -5,1 1,2 2,5 A kimeneti hibát transzformáljuk egy réteggel vissza: e x = e z * w xz = -1 * 2,2 = -2,2 e y = e z * w yz = -1 * 2,5 = -2,5 A rejtett réteg hibáinak ismeretében meg- határozható a többi súly változtatása is: w ax = w ax + a * e x = -4,9 + 1 * -2,2 = -7,1 w bx = w bx + b * e x = * -2,2 = 2,8 w ay = w ay + a * e y = 4,6 + 1 * -2,5 = 2,1 w by = w by + b * e y = -5,1 + 1 * -2,5 = -7,6 -7,1 2,8 2,1 - 7,6 1 1
2009Németh Gábor: Számítógép-architektúrák27 HÁROMRÉTEGŰ, VISSZAFELÉ TERJEDÉSES NEURÁLIS HÁLÓZAT - 6 Az (1, 1), (0, 1), (1, 0) és (0, 0) bemeneti kombinációk ismételt alkalmazásával a hálózat megtanítható az XOR függvény megvalósítására. Problémát jelent, ha több függvényt is meg kívánunk valósítani. Természetesen mindegyikhez külön-külön kimenet tartozik, de a súlytényezők egymásrahatása bizonytalanságot eredményezhet. Hiányzik az átfogó elmélet a kívánt funkciókhoz optimális hálózati rétegek számának és az alkalmazandó neuronok paramétereinek meghatározására!