Hidrológiai Közlöny 1998 (78. évfolyam)
4. szám - Fülöp István Antal–Józsa János: A neruális hálózatok világa
252 HIDROLÓGIAI KÖZLÖNY 1998. 78. ÉVF. 4. SZ. háló az úgynevezett többrétegű perceptron (Multi-Layer Perceptron, MLP), az első nemlineáris leképezésre is képes neurális háló. Tanítási algoritmusa az úgynevezett error back propagation, azaz hiba-visszateijesztési eljárás. Miként azt neve is sugallja, a többrétegű perceptron rétegekből áll (lásd 4. ábra). A bemeneti, rejtett illetve kimeneti rétegek között egyszerű előrecsatoltság van. Súlyok Súlyok \IKl cn A háló kimenete 'oi Kimeneti réteg C. ábra - Az MLP felépítése Az MLP bemeneti rétege egyszerű lineáris transzformációt végző elemeket tartalmaz. A rejtett és a kimeneti rétegek neuronjai lineáris összegzés utáni nemlineáris transzformációval módosítják az adatokat. Ezeket az átviteleket az alábbi összefüggések íiják le: /(*) = * (1) a bemeneti réteg neuronjai esetében - látható, hogy egy neuronra egy bemeneti érték érkezik, azaz a bemeneti réteg neuronjai megfeleltethetők a bemeneti vektor egyes komponenseinek. A rejtett és a kimeneti rétegeken pedig: z(x:) = x w r (2) /(*(*)) = yt^ÖÖ ( 3) ahol: x - bemenet az adott neuronra, w - az adott neuronra érkező súlyok vektora, z - a neuron aktivitása, f(x) az úgynevezett szigmoid átviteli függvény. Lefutását mutatja az 5. ábra. Az ábrán látható, hogy a háló kimenete 0..1 intervallumba esik, ezért a kimeneti értékeket skálázni kell. A felvázoltaknak megfelelően előhíváskor először a bemenetekhez közelebbi rétegek, majd fokozatosan az attól távolabbi rétegek kerülnek meghatározásra, végül a kimeneti réteg. A tanítási algoritmus először előhívást hajt végre az adatbázis véletlenszerűen kiválasztott elemének felhasználásával. Ezt követően a kimeneti rétegen keletkező hibát szétosztja a hálózat minden egyes neuronjára, a kimeneti rétegtől a bemeneti réteg felé haladva - ezt az lépést nevezik visszateijesztésnek. A visszateijesztés végső célja a neuronokra eső deriváltak meghatározása. A deriváltak felhasználásával a hibaérték csökkentése irányába módosítja a súlyokat. A tanítás során a hálózat minden egyes súlya módosul. A tanítási algoritmus a következő lépésekből áll: Hiba a kimeneti rétegen: E=f(d.x) (4) ahol d - a várt kimenet, x - a háló által generált kimenet, a súlymódosítás szempontjából x=x(w) ahol w a hálózat összes súlyát jelenti. A tanítás elve így: E ~> minimum (5) A minimalizálás természetesen bármilyen alkalmas algoritmussal elvégezhető. A hibafüggvény is változatos lehet a kitűzött céltól függően, például négyzetes hibafüggvény alkalmazásával a kimeneti értékek középértékét, abszolút érték formájában adott hibaérték pedig azok mediánját közelíti. A hálózat neuronjainak átviteli függvénye is többféle lehet, például szinusz vagy tangens hiperbolikusz függvény - a tanítási algoritmus értelemszerűen módosul az aktuális paraméterek felhasználásával. E. ábra - Az MLP működése A teljesség kedvéért megjegyezzük, hogy a kimeneti réteg kivételével minden réteg tartalmaz egy olyan neuront, amelynek kimenete konstans 1. Ez a bias-nak nevezett elem biztosítja az átviteli függvény megfelelő eltoBemeneti réteg Rejtett réteg