540 likes | 853 Views
Neural Network Toolbox. Matlab 6.0 (release 12). Štruktúra neurónu. u 1. w 1. u 2. w 2. f A. y j. w 3. u 3. w n. u n. b. Zapojenie neurónu do vrstiev a siete. Dopredná štruktúra. Spätnoväzbová štruktúra. Dvovrstvová sieť. Trojvrstvová sieť.
E N D
Neural Network Toolbox Matlab 6.0 (release 12)
Štruktúra neurónu u1 w1 u2 w2 fA yj w3 u3 wn un b
Dopredná štruktúra Spätnoväzbová štruktúra Dvovrstvová sieť Trojvrstvová sieť
Príklady jednotlivých aktivačných funkcií • A. aktivačné funkcie v tvare silných nelinearít • skoková binárna funkciaskoková bipolárna funkcia lineárna funkcia
- sigmoidálne prenosové funkcie : binárny (logický) sigmoid (hyperbolická tangenta) sigmoid bipolárny
Prechodové funkcie neurónov -Transfer functions Competitive transfer function. hardlim Hard limit transfer function. hardlims Symmetric hard limit transfer function logsig Log sigmoid transfer function. poslin Positive linear transfer function purelin Linear transfer function. radbas Radial basis transfer function. satlin Saturating linear transfer function. satlins Symmetric saturating linear transfer function
softmax Soft max transfer function. tansig Hyperbolic tangent sigmoid transfer function. tribas Triangular basis transfer function.
hardlim(n) = 1, if n >= 0 0, otherwise Algorithm hardlims(n) = 1, if n >= 0 -1, otherwise
logsig(n) = 1 / (1 + exp(-n)) n = -5:0.1:5; A = logsig(n); plot(n,A) We calculate the layer's output a with LOGSIG and then the derivative of A with respect to N. A = logsig(n) dA_dN =dlogsig(N,A) The derivative of LOGSIG d = a * (1 - a) Algorithm poslin(n) = n, if n >= 0 = 0, if n <= 0
Algorithm purelin(n) = n Algorithm RADBAS(N) calculates its output with according to: a = exp(-n^2)
Algorithm satlin(n) = 0, if n <= 0 n, if 0 <= n <= 1 1, if 1 <= n satlins(n) = -1, if n <= -1 n, if -1 <= n <= 1 1, if 1 <= n
TANSIG(N) calculates its output according to: n = 2/(1+exp(-2*n))-1 TRIBAS(N) calculates its output with according to: tribas(n) = 1 - abs(n), if -1 <= n <= 1 = 0, otherwise
Architektúra siete Typ trénovacieho algoritmu Rekurzívné / Dopredné S učiteľom, Bez učiteľa, s kritikom S učiteľom: MLP, RBFN, ANFIS, CANFIS, FIR MLP, IIR MLP, Bez učiteľa Hopfieldova sieť, Elmanova sieť S kritikom Kohonenova sieť, Boltzmanov optimalizátor, AHC Iné Modulárne siete.CMAC, Counter Propagation N., -adatptívne siete , pulzne sa učiace siete, Trend. Rekurzívne siete.
Učenia siete = adaptačný proces umelej neurónovej siete zmenou parametrov jednotlivých neurónov siete, prípadne ich konfigurácie za účelom dosiahnutia požadovaného správania umelej neurónovej siete. • Adaptácia neurónovej siete - výpočet - hľadanie takých prahových a váhových koeficientov, ktoré pre danú dvojicu vstupného, požadovaného výstupného vektora a vypočítaného výstupného vektora siete minimalizujú kvadrát rozdielu medzi výstupnými funkciami - aktivitami • Pre viac párov vstupných a výstupných vektorov (ktoré tvoria tréningovú množinu), má účelová funkcia tvar:
x0 x1 x2 x3 x4 x5 y=f(x) y0 y1 x2 x3 x4 x5 yi ei xi hi
x0 x1 x2 x3 x4 x5 y=f(x) y0 y1 x2 x3 x4 x5 xi V čase t=i,i>n,m ... x(i-n) yi y(i-1) ... (i-k)
Prehľad opísaných algoritmov ... MNŠ pre lineárne a nelineárne systémy. MNŠ, Rekurzívna MNŠ, MNŠ pre odhad parametrov nelin. systémov. Gradientové metódy. Met. najstrmšieho spádu , Newtonove metódy, LM, Kvázi Newtonove metódy Konjugované metódy. Konjugované, Konjugované gradientové metódy, Polak.Ribier, Fletcher-Reeves,Powel-Bealle Hybridné algoritmy. Momentum, hybridný učiaci algoritmus (nelin a lin časť ) Stochastické algortimy. GA, Simulované žíhanie, náhodné hľadanie, downhill simplex
Vlastnosti neurónových sietí. - aproximačné vlastnosti => identifikácia Pojem aproximátor, najlepší aproximátor - STATICKÉ a DYNAMICKÉ MAPOVANIE - vlastnosti zovšeobecnenia Neurónová sieť je schopná pracovať nad triedou systémov (robustnosť). - vlastnosť učenia => adaptabilita On-line metódy učenia sú schopné v réalnom čase meniť parametre siete a adaptovať ich meniacim sa podmienkam. - Schopnosť prácovať nad nelineárnymi údajmi (zobrazenie) s kon. poć. nespojitostí - Nevyžaduje exaktné znalosti o procese.
Vlastnosti neurónových sietí. - Vlastnosť datovej fúzie (numerické a symbolické výpočty). - Náročné trénovanie( off a aj on - line ) - Problém stability - konvergencie trénovacích algoritmov, problém preučenia. - Masívny paralelizmus, MIMO, HW implemantácia
Typy úloh riešiteľných s N.S. - Aproximačné úlohy. Statické mapovanie, dynamické mapovanie, modelovanie, adaptívné modely - Predikcia. One-n-step prediction - Optimalizácia. AHC - Klasifikátor. Klasifikačný problém, data clustering, PCA, LVQ - asociatívna pamäť
Neurónové siete v regulačnom obvode : => pasívný prvok RO => model procesu Modelovanie v časovej oblasti, frekvenčnej oblasti. Vstupno výstupné modely, stavové modely. Inverzný model, priamy model. => optimalizátor konvenčného prvku Kriteríalna funkcia, AHC, kritik. => aktívný prvok RO => regulátor Môžu sa použiť štandartné techniky zapojenia regulátorov (FFR,SVR). IMC, expert control, model reference control, predictive control, optimal control, adaptive control => prediktor Dve možné realizácie : - statická realizácia - techniky off-line (stabilnejšie) - realizácia adaptabilná - techniky on-line
Modelovanie pomocou neurónových sietí. Modelovanie v časovej oblasti. (Lokálne a Globálne modely) Závislé na pozorovateľnosti systému. -> Vstupno - výstupné modely. + e(k) -> Stavové modely. Modelovanie vo frekvenčnej oblasti. Algoritmicky ekvivalentná F.T. (Ortonogonálne transformácie)ô Obmedzená na lineárne alebo linearizované problémy.
Modelovanie pomocou neurónových sietí. “Inverzný” model. -> Učenie ->Nasadenie -> Trénovacia fáza inverzného modelu. -> Aplikačnáfázainverzného modelu ( off-line) -> Aplikačnáfázainverzného modelu ( on-line) - Problém existencie onverzného modelu.
4. Možnosti využitia UNS v oblasti modelovania a riadenia “Priamy” model. -> Špecializované učenie (on-line) , (off-line).
4. Možnosti využitia UNS v oblasti modelovania a riadenia Predikcia Priame riadenie
4. Možnosti využitia UNS v oblasti modelovania a riadenia Riadenie s referenčným modelom Adaptívne neurónové riadenie
4. Možnosti využitia UNS v oblasti modelovania a riadenia Riadenie s interným modelom Prediktívne riadenie
Riadenie pomocou neurónových sietí. => Adaptívné riadenie. => “Predikčné” riadenie. => “Optimálné” riadenie. => Internal Model Control => Model Reference Control => “Mimickin’ an expert” => “Reinforcement Learning”
Modelovanie pomocou MLP v matlabe 5.3 OFF LINE TECHNIKA V/V model % U………………………..…vstup, stlpcovy vektor % Y………………………… vystup, stlpcovy vektor % T…………………………. Cas, stlpcovy vektor % NU……………………….. Rad U % NY………………………..rad Y NU=2;NY=2; [T,Y,U]=step(Gs); % toto je len na ukazku - normalne je to nedostatocne !!! Životný cyklus MLP. 1. Predspracovanie údajov. Výrazne pomáha pri trénovaní (zrýchľuje). => Normovanie => Odstránenie strednej hodnoty. Funkcie: normc, normr, prestd, postd,trastd, premnx, postmnx, tramnmx, ...
Modelovanie pomocou MLP v matlabe 5.3 % normovanie vstupnych udajov (optional) [Un,meanp,stdp,Yn,meant,stdt] = prestd(U,Y); => Emulácia posunutia údajov. % simulacia TDL. NU… rad U, NY…. Rad Y Ut=skew(Un,NU) Yt=skew(Yn,NY) % Pozor na platnosť údajov. 2. Výber štruktúry siete. => Kolmogorov teorém. 3. Vytvorenie siete. % 15 uzlov v skrytej vrstve NET=newff({-1 1; … ; -1 1},[15 1], {'tansig' 'purelin' },’trainlm’,’learngdm’,'mse'); 4. Trénovanie siete. % NASTAVENIE TRENOVACIEHO PROCESU NET.trainParam.epochs=100; NET.trainParam.goal=1e-6; NET.trainParam.min_grad=1e-20; %SAMOTNE TRENOVANIE [NETX,TR]=train(NET,Ut’,Yt’);
Modelovanie pomocou MLP v matlabe 5.3 5. Testovanie siete. % ODDOZVA SIETE % Ysim=sim(NET,Ut’); plot(t,Y,'green',t,Ysim,'red'); % CHYBA err=sum((Ysim'-Y).*(Ysim'-Y)) Čo ak nie je dostatočná presnosť ... => zvýšiť rád Nu, Ny => sú data normované ??? => zmeniť nelineárnú aktivačnú funkciu, počet vrstiev, počet uzlov vo vrstve == šalamúnstvo Export do SIMULINKU 1. gensim(NET) 2. S-funkcia : ROOT/toolbox/simulink/blocks/sfuntmpl
Modelovanie pomocou ANFIS v matlabe 5.3 OFF LINE TECHNIKA Model - časová oblasť Životný cyklus. 1. Predspracovanie údajov. 2. Výber štruktúry siete. % % % vygeneruje suggenovsky FIS pre anfis IFS=str2mat(‘gaussmf’); % typ funkcie prislusnosti OFS=str2mat(‘linear’); numFS=3; % pocet funckii prislusnosti anfis1=genfis1(data,numFS,IFS,OFS);
Modelovanie pomocou ANFIS v matlabe 5.3 3. Trénovanie siete. % % % epochs=2; anfis1upd=anfis(data,anfis1,epochs); % adaptacia 4. Testovanie siete. TR=evalfis(test,anfis1upd); plot([Y TR]); error=sum((TR'-Y).*(TR'-Y))
Lineárny systém #1 Charakteristika modelovaného systému Impulzná ch. Prechodovka
Lineárny systém #1 Trénovací proces MLP => 1 neurón v skrytej vrstve, aproximačné zapojenie => LM => tansig => CHYBA : 1.5 e-4 Trénovacia množina => 14 cyklov => T.S : jeden skok MLP => 1 neurón v skrytej vrstve, dynamické zapojenie3,3 => LM => tansig Trénovacia množina => CHYBA : 1 e-7 => 100 cyklov => T.S : jeden skok Postup pri trénovaní...
Lineárny systém #1 RBFN => dynamické zapojenie 3,3 => CHYBA : 1 e - => T.S : jeden skok Trénovací proces Trénovacia množina RBFN => aproximačné zapojenie => CHYBA : 1 e-12 Testovacia množina => T.S : jeden skok Trénovacia množina Postup pri trénovaní...
Lineárny systém #1 Trénovací proces ANFIS => aproximačné zapojenie => automatický návrh pravidiel => CHYBA : 1.5 e-5 Trénovacia množina => 2 cykly => T.S : jeden skok ANFIS => dynamickéé zapojenie3,3 => automatický návrh pravidiel => CHYBA : 1.5 e-5 Trénovacia množina => 2 cykly => T.S : náhodný signál Postup pri trénovaní...
Nelineárny systém #1 Charakteristika modelovaného systému Budenie v okolí stacionárného bodu. Budenie v okolí stacionárného bodu do nestability
Nelineárny systém #1 Trénovací proces MLP => LM => tansig => 15 neurónov v skrytej vrstve, rád 5,5 => CHYBA : 4.28846e-007/1e-007 Trénovacia množina => 3000 cyklov => T.S : náhodný signál MLP => 15 neurónov v skrytej vrstve, dynamické zapojenie3,3 => LM => tansig Trénovacia množina => CHYBA : 0.442177/1e-010 => 100 cyklov => T.S : náhodný signál
Nelineárny systém #1 Trénovací proces RBFN Trénovacia množina => dynamické zapojenie rád 3,3 => CHYBA : 1 e-12 => T.S : náhodný signál RBFN => dynamické zapojenie rád 3,3 Tesovacia + Trénovacia množina => CHYBA : 8.4 => T.S : náhodný signál
Nelineárny systém #1 Trénovací proces ANFIS => dynamické zapojenie rád 2,2 => automatický návrh pravidiel => CHYBA : 0.6 e-5 Trénovacia množina => 2 cykly => T.S : náhodný signál ANFIS Trénovacia množina => statické zapojenie => automatický návrh pravidiel => CHYBA : 1.5 e-5 => 2 cykly => T.S : náhodný signál Príklad trénovania nedostatočným signálom
Namerané údaje (Nováky) Charakteristika modelovaného systému
Namerané údaje Trénovací proces MLP => 15 neur. v skrytej vrstve, dynamické zapojenie => LM => tansig => CHYBA : 3.0 e-6 Trénovacia množina =>50 cyklov MLP => 15 neur. v skrytej vrstve, dynamické zapojenie => LM => tansig => CHYBA : 4.5e-3 Testovacia množina
Namerané údaje Trénovací proces ANFIS => aproximačné zapojenie => automatický návrh pravidiel Trénovacia množina => CHYBA : 1.7 e-5 => 2 cykly => T.S : jeden impulz ANFIS => dynamickéé zapojenie3,3 => automatický návrh pravidiel Testovacia množina => CHYBA : 0.0595 => 2 cykly => T.S : náhodný signál
Súhrn - siete Aproximačné schopnosti > >> ANFIS RBFN MLP Náročnosť trénovania >> > ANFIS MLP RBFN Trénovanie • predspracovanie údajov • použitie histórie vstupov a výstupov • počet trénovacích cyklov • typ trénovacieho algoritmu • typy aktivačných funkcií • počet vrstiev, uzlov vo vrstvách
5. Ukážka aplikácie Simulačná schéma systému