IRE 8 /38/ 1 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – I ntelligens R endszerek E lmélete 8
IRE 8 /38/ 2 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – : Mesterséges neurális hálózatok felügyelt tanítása hiba visszaterjesztő „Back error Propagation” algoritmussal A felügyelt tanítás paraméterei Versengéses tanulás Klasszikus példák tanulságai Kohonen paradigma Hopfield paradigma
IRE 8 /39/3 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Neurális hálózatok alkalmazásának menete A tanító adatok összeállítása. Feladatspecifikus neurális hálózat (paradigma) kiválasztása. A hálózat jellemzőinek (a processzorok átviteli függvényének, a processzorok számának, a tanítási módszereknek és paramétereknek, valamint a kezdeti súlymátrix értékeinek) kiválasztása. Teljesítmény mérő módszer kiválasztása Tanítás és tesztelés, amíg a hálózat a kívánt viselkedést nem mutatja.
IRE 8 /39/4 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A neurális hálózat tervezésének lépései Reprezentatív tapasztalati adat gyűjtése (bemeneti adatok és elvárt válaszok) Megfelelő neurális paradigma kiválasztása Rendszer paraméterek kiválasztása Teljesítmény mérő módszer kiválasztása A rendszer tanítása és tesztelése, amíg az elvárt eredményhez nem jutunk.
IRE 8 /39/5 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Eldöntendő jellemzők a neurális hálózatok tervezésénél Processzor szinten: - a processzor átviteli függvénye - a bemenő jelek típusa Hálózat szinten: - a hálózat topológiája - rétegelt struktúránál a rétegek száma - processzorok száma a különböző rétegekben - processzorok típusa a különböző rétegekben Tanítási szinten - tanító algoritmus - tanítási paraméterek (pl.: α, β,….) - a tanítás megállásának feltételei
IRE 8 /39/6 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A felügyeletes tanítás lényege, algoritmusa (ism.) Mottó : Addig hangoljuk a súlytényezőket, amíg a bemenetre a hálózat megfelelő-, előre kiszámított választ nem ad. Algoritmusa: 1. Kezdeti súlytényezők beállítása 2. A tanítóminta bemeneti értéke alapján a hálózat kimeneti értékének kiszámítása. 3. A tanítóminta célértékének összehasonlítása a hálózat célértékével. 4. Szükség esetén a hálózat súlytényezőinek módosítása. 5. A tanítás folytatása mindaddig, amíg a hálózat az összes tanítómintára – egy előre rögzített hibahatárnál kisebb hibával a célértéknek megfelelő kimeneti értéket nem tudja előállítani.
IRE 8 /39/7 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A perceptron jellemzői Vetített nyomtatott betűk felismerése tanítás alapján Frank Rosenblatt (1957) 20 x 20 fotóérzékelő Mc. Culloch-Pitts neuronok Előrecsatolt egyrétegű hálózat I 400 I1I1 O1O1 O 36
IRE 8 /39/8 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A perceptron processzora I – ingerfelvevők (bemenet) w ji súlytényezők T – Árviteli (Transzfer) függvény Oj = 0 ha Sj 0 ha O j k = 0 és C j k = 1 akkor w ji (t+1) = w ji (t) + I i k (t) ha O j k = 1 és C j k = 0 akkor w ji (t+1) = w ji (t) - I i k (t) SjSj T I1I1 I2I2 I n-1 InIn OjOj IBIB j w j1 w j2 w jn „ W. Mc Culloch és W. Pitts „)
IRE 8 /39/9 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A perceptron tanító algoritmusa Kezdeti súlytényezők beállítása (random !?) Tanítás iter amíg a hiba el nem éri a hibahatárt (Hi <= Hh) k= 0, Hi= 0 Minták iter amíg k = p nem teljesül (ahol p = tanító minták száma) A k.-ik tanítóminta bemeneti vektora alapján processzoronként az aktiváció kiszámítása S jk = ∑I j k * W ji A köszöb átviteli függvény alapján processzoronként a kimeneti értékek kiszámítása. (O j ) A hálózat súlytényezőinek módosítása. ha O j k = C j k akkor w ji (t+1) = w ji (t) ha O j k = 0 és C j k = 1 akkor w ji (t+1) = w ji (t) + I i k (t) ha O j k = 1 és C j k = 0 akkor w ji (t+1) = w ji (t) - I i k (t) A hálózat hibájának kiszámítása H j k =C j k -O j k A hibák összesítése H i =H i +H j k:=k+1 Minták end Tanítás end
IRE 8 /39/10 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A perceptron jellemzői ( „Perceptrons” M. Minsky – S. Pappert, 1969) 1. Csak egy réteg tanítását teszi lehetővé 2. Csak lineárisan elválasztható csoportokat tud osztályozni. I 1 * I 2 O I 1 +I 2 O I 1 + I 2 O I1I1 I2I2 1 1 I1I1 I2I2 1 1 I1I1 I2I2 1 1
IRE 8 /39/11 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A perceptron értékelése
IRE 8 /39/12 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Többrétegű neurális hálózatok tanítása (D.E Rummelhart, G.E. Hinton, R.J.Williams, 1986) (David Parker, Yann Le Cun) +…… i j k Hálózat topológia i j k O i O j O k T k Processzor: Sj f(s) Oi j OjOj O j =f( S )= 1/(1+e -S ) M N H
IRE 8 /39/13 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Két (tanítható) rétegű előrecsatolt hálózat bemeneti réteg „rejtett” réteg kimeneti réteg Bemenetek Kimenetek „súlytényező”
IRE 8 /39/14 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A súlytényezők változását leíró egyenletek Súlytényező változtatás a kimeneti rétegben W kj (t+1) = W kj (t) + αΔ k Oj = Súlytényező változtatás a „rejtett” rétegben W kj (t) + α * (T k -O k ) * f(S k ) * (1-f(S k )) * O j W ji (t) + α * ∑(Δk * Wkj) * f(S j ) * (1-f(S j )) * O i k=1 M ΔkΔk ΔjΔj
IRE 8 /39/15 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A hálózat hibája felügyelt tanítás esetén Egy tanító mintánál:E = ½ ∑(T k -O k ) 2 A teljes tanító mintára: E = ½ ∑∑ (T k -O k ) 2 k p k A tanítás (súlytényező változtatás) mottója: „hiba visszaterjesztés = Back error Propagation” „ A hálózat súlytényezőit a hiba létrehozásában játszott szerepükkel arányosan változtatjuk.” = A súlytényezőket a hibafüggvény parciális deriváltja szerint változtatjuk!
IRE 8 /39/16 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Delta szabály w ji (t+1) = w ji (t) + α * I i * Δw ahol α = tanítási tényező, 0 <= α <= 1, Δw = -T j – O j A delta szabály matematikai értelmezése i j O i w ji O j T j E E = ½ * ∑ ( T j – O j ) 2 Δw Δw δE/δw ji = δE/δO j * δO j /δS j * δS j /δw j δE/δO j = ½ * 2 * (Tj-Oj) * -1 = - (Tj-Oj) j S S j = ∑w ji * I i ; i I1I2IiInI1I2IiIn Lineáris átviteli függvény esetén O j T j O j = S j ; j δOj/δSj=1δOj/δSj=1δS ji /δw ji = δ(w j1 * I 1 +…w ji * I i …+ w jn * I n )= I i W ji (t+1)=w ji (t)- α * O j* δE/δw ji wiwi W i+1
IRE 8 /39/17 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Tanítást leíró összefüggések a többrétegű hálózatoknál Általánosított delta szabály: (deriválás a lánc szabály alapján) δE/δw kj = δE/δO k * δO k /δS k * δS k /δw kj Súlytényező változtatás a kimeneti rétegben W kj (t+1) = W kj (t) + αΔ k Oj = Súlytényező változtatás a „rejtett” rétegben W kj (t) + α * (T k -O k ) * f(S k ) * (1-f(S k )) * O j W ji (t) + α * ∑(Δk * Wkj) * f(S j ) * (1-f(S j )) * O i k=1 M ΔkΔk ΔjΔj (A levezetés a javasolt olvasmányok között található)
IRE 8 /39/18 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – NetTalk neurális hálózat jellemzői Célja: Angol betűk kiejtésének kiszámolása Módszere: 2 tanítható rétegű, előrecsatolt neurális hálózat 7 egymást követő betű közül a középsőt kellett kiejteni Eredménye: Minden korábbi megoldásnál jobb eredményt mutatott
IRE 8 /39/19 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A NETTALK tapasztalatai 1. Fonémák, hangsúlyok tanulása
IRE 8 /39/20 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A NETTALK tapasztalatai 2. C és K tanulása
IRE 8 /39/21 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A NETTALK tapasztalatai 3. A súlytényezők megváltoztatásának hatása
IRE 8 /39/22 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A NETTALK tapasztalatai 4. Az újratanulás jellemzői
IRE 8 /39/23 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Algoritmus gyorsító megoldások 1. Momentum 2. Csökkenő hibahatár („descending epsilon”) módszere 3. Kis súlytényezők kiszűrése („Metszés”) 4. Inkrementális hálózat építás „kaszád korreláció”
IRE 8 /39/24 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A tanító adatok szerkezete Benenő adatok Elvárt kimenő adatok „célértékek” Bemenetek 1-n C 1 C m Tanító minták 1-k nm NH c1c1 cmcm Teszt adatok
IRE 8 /39/25 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Lépésről-lépésre épülő hálózat „Kaszkád korreláció ” (KK) Scott E. Fahlman Christian Lebierre
IRE 8 /39/26 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Kettős spirál tanulása „KK” algoritmussal 2.
IRE 8 /39/27 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Kettős spirál tanulása „KK” algoritmussal 2.
IRE 8 /39/28 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Versengéses (competitive) tanulás Carpenter, Grossberg 1988 Processzor S j = ∑ I i * w ji S j f O j = f (S j ) 1 f (S j ) SjSj IiIi ININ I1I1 Topológia: egy rétegű előrecsatolt, teljesen összekötött Megkötések: 1.) ∑ w ji = 1 2.) Súly értékek: 0<Wj<1 3.) A bemenő vektor bináris
IRE 8 /39/29 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A versengéses tanító algoritmus (Grossberg) Mottó : A győztes visz mindent 1. Kezdeti súlytényezők beállítása (inicializálás, véletlenszerű) 0<Wj<1 2. A tanítóminta i-ik értéke (vektora) alapján, a processzorok kimeneti értékeinek kiszámítása. 3. A legnagyobb kimeneti értékű processzor kiválasztása. A győztes visz mindent elv alapján, a győztes kimeneti értéket 1-re, az összes többi kimeneti értéket 0-ra változtatjuk 3. A győztes elem súlytényezőit megváltoztatjuk (csak azokat!) Δ W ji (t+1) = W ji (t) + Δ w ji, Δ w ji = α (O i /m-w ji (t)) ahol α = tanulási együttható, 0 < α << 1 (tipikusan ) m = az aktív bemenetek száma 5. A pont ismétlése amíg a kimenetek két egymást követő tanítási ciklus során nem változnak. S j = ∑ O i * w ji, O j = f (S j )
IRE 8 /39/30 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Versengéses tanulás folyamata
IRE 8 /39/31 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Versengés oldalirányú gátlással
IRE 8 /39/32 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Kohonen önszervező hálózata (Teuvo Kohonen, 1982) Processzor: S j = ∑ I i * w ji + társ processzorok aktivációja S j f O j = f (S j ) 1 1SjSj f (S j ) Hálózat topológia: egy rétegű, teljesen összekötött, előrecsatolt
IRE 8 /39/33 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A Kohonen tanító algoritmus 1.) Kezdeti súlytényezők beállítása Kezdeti környezet beállítása 2.) A bemeneti vektor (tanító minta) rákapcsolása a bemenetekre 3.) Minden processzor elemnél a bemenő vektor és a súlyvektor egyezésének (távolságának) kiszámítása d j = ║I-W j ║ = ∑ (I i -W ji ) 2 ahol N = a bemeneti vektor elemeinek száma I i = a bemeneti vektor (I) i-ik elemének értéke W ji = a j –ik processzor elemhez tartozó, az i-ik bemenettől érkező összeköttetés súlytényezője 4.) A legkisebb eltérést mutató processzor kiválasztása (pl. j) 5.) A kiválasztott elem (j) környezetében (N j ) a súlytényezők módosítása 6.) A 2., 3., 4., 5.-ik lépés ismétlése amíg a kimenetek nem változnak j
IRE 8 /39/34 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – A súlytényező megváltoztatása a Kohonen tanuló algoritmusban W ji (t+1) = W ji (t) + ΔW ji (t) Ahol ΔW ji (t) = α (I i –W ji ) α (t) = α ( 0 )(1 – t/T), t = az adott tanulási iteráció száma T= a teljes tanulási ciklusok száma A tanulás során módosított környezet nagysága csökken ! N j (t) = N( 0 )(1-t/T)
IRE 8 /39/35 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Az „önszerveződés” folyamata a Kohonen hálózatban A véletlenszerűen beállított súlytényezők a tanulás során egyre inkább felveszik a tanítóminta statisztikai eloszlását.
IRE 8 /39/36 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Példák 3D-s tárgyak leképezésére 2D-be Bemenetek száma: 3Kimenetek száma: 20 Tanítóminta: 1000Tanítási ciklus: 15-30
IRE 8 /39/37 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Kohonen fonetikus írógépe Jellemzői: 5.4 KHz aluláteresztő szűrő, 12 bit A/D, KHz mintavétel, 256 pontos Fourier transzformáció (FFT) Fonémák kézi azonosítása a tanításhoz, Szabály alapú következtetés (15-20 ezer szabály) TMS digitális processzor Közel folyamatos beszéd feldolgozás 92-97%- os pontosság
IRE 8 /39/38 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Neurális hálózatok Szakértői rendszerek Nincs tudás-hozzáférési problémaNehéz a tudás megszerzése Dinamikus tudásábrázolásStatikus(abb) tudásábrázolás Minta kiegészítő képességFeltételezzük az adatok (általánosítás = generalizás) hibátlanságát és ellentmondás mentességét Robusztus (nem érzékeny az adatvesztésre) Érzékeny az adatvesztésre Interpolálni képesNincs intuitív képessége Többet „tudhat” mint ami az Legfeljebb olyan jó lehet mint a adatokból látszikszakértő Nincs magyarázatadásRészletes magyarázat kérhető Nincs igazoló képességeA döntéseket viszonylag könnyű igazolni.
IRE 8 /39/39 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – Kérdések A neurális hálózatok tanítása során változik a hálózat szerkezete? Miért nem vezet garantáltan jó megoldáshoz a hiba visszaterjesztő algoritmus, és hogyan lehet megkerülni a problémát? Mi a neurális hálózatok „önszerveződésének” alapja?