1 Neurónové siete. 1.1 Perceptrón

Σχετικά έγγραφα
1 Algoritmus spätného šírenia Back-Propagation

Motivácia Denícia determinantu Výpo et determinantov Determinant sú inu matíc Vyuºitie determinantov. Determinanty. 14. decembra 2010.

Matematika Funkcia viac premenných, Parciálne derivácie

7. FUNKCIE POJEM FUNKCIE

Základy automatického riadenia

M6: Model Hydraulický systém dvoch zásobníkov kvapaliny s interakciou

Matematika prednáška 4 Postupnosti a rady 4.5 Funkcionálne rady - mocninové rady - Taylorov rad, MacLaurinov rad

Moderné vzdelávanie pre vedomostnú spoločnosť Projekt je spolufinancovaný zo zdrojov EÚ M A T E M A T I K A

Start. Vstup r. O = 2*π*r S = π*r*r. Vystup O, S. Stop. Start. Vstup P, C V = P*C*1,19. Vystup V. Stop

Metódy vol nej optimalizácie

1.1 Min-max normalizácia na interval < A, B >

Priamkové plochy. Ak každým bodom plochy Φ prechádza aspoň jedna priamka, ktorá (celá) na nej leží potom plocha Φ je priamková. Santiago Calatrava

KATEDRA DOPRAVNEJ A MANIPULAČNEJ TECHNIKY Strojnícka fakulta, Žilinská Univerzita

Obvod a obsah štvoruholníka

1. Limita, spojitost a diferenciálny počet funkcie jednej premennej

3. Striedavé prúdy. Sínusoida

Pevné ložiská. Voľné ložiská

PRUŽNOSŤ A PEVNOSŤ PRE ŠPECIÁLNE INŽINIERSTVO

Goniometrické rovnice a nerovnice. Základné goniometrické rovnice

Jednotkový koreň (unit root), diferencovanie časového radu, unit root testy

Prechod z 2D do 3D. Martin Florek 3. marca 2009

ss rt çã r s t Pr r Pós r çã ê t çã st t t ê s 1 t s r s r s r s r q s t r r t çã r str ê t çã r t r r r t r s

Eulerovské grafy. Príklad Daný graf nie je eulerovský, ale obsahuje eulerovskú cestu (a, ab, b, bc, c, cd, d, da, a, ac, c, ce, e, ed, d, db).

MATEMATIKA. Martin Kalina

Spojité rozdelenia pravdepodobnosti. Pomôcka k predmetu PaŠ. RNDr. Aleš Kozubík, PhD. 26. marca Domovská stránka. Titulná strana.

Ekvačná a kvantifikačná logika

Jednotkový koreň (unit root), diferencovanie časového radu, unit root testy

ARMA modely čast 2: moving average modely (MA)

Neurónové siete Inžiniersky prístup (1. diel)

Komplexné čísla, Diskrétna Fourierova transformácia 1

8. prednáška Logické neuróny a neurónové siete

Podmienenost problému a stabilita algoritmu

MIDTERM (A) riešenia a bodovanie

M8 Model "Valcová a kužeľová nádrž v sérií bez interakcie"

,Zohrievanie vody indukčným varičom bez pokrievky,

Harmonizované technické špecifikácie Trieda GP - CS lv EN Pevnosť v tlaku 6 N/mm² EN Prídržnosť

Pravdepodobnos a ²tatistika (1-INF-435) Poznámky k predná²kam. Radoslav Harman, KAM, FMFI UK

Pavol Jozef afárik University in Ko²ice Faculty of Science. Testovanie a verikácia programov Floydova metóda Gabriela Andrejková

Základy automatického riadenia

AerobTec Altis Micro

Cvičenie č. 4,5 Limita funkcie

6 APLIKÁCIE FUNKCIE DVOCH PREMENNÝCH

Motivácia pojmu derivácia

Hydromechanika II. Viskózna kvapalina Povrchové napätie Kapilárne javy. Doplnkové materiály k prednáškam z Fyziky I pre EF Dušan PUDIŠ (2013)

Ako si nájs chybu? o a ako sa pýta výsledkov

Chí kvadrát test dobrej zhody. Metódy riešenia úloh z pravdepodobnosti a štatistiky

1. písomná práca z matematiky Skupina A

x x x2 n

rs r r â t át r st tíst Ó P ã t r r r â

2 Chyby a neistoty merania, zápis výsledku merania

HASLIM112V, HASLIM123V, HASLIM136V HASLIM112Z, HASLIM123Z, HASLIM136Z HASLIM112S, HASLIM123S, HASLIM136S

1. prednáška Logické neuróny a neurónové siete

Řečtina I průvodce prosincem a začátkem ledna prezenční studium

Gramatická indukcia a jej využitie

P P Ó P. r r t r r r s 1. r r ó t t ó rr r rr r rí st s t s. Pr s t P r s rr. r t r s s s é 3 ñ

7 Derivácia funkcie. 7.1 Motivácia k derivácii

Úvod do lineárnej algebry. Monika Molnárová Prednášky

Transformátory 1. Obr. 1 Dvojvinuťový transformátor. Na Obr. 1 je naznačený rez dvojvinuťovým transformátorom, pre ktorý platia rovnice:

Kompilátory. Cvičenie 6: LLVM. Peter Kostolányi. 21. novembra 2017

Obsah. 1.1 Reálne čísla a ich základné vlastnosti Komplexné čísla... 8

Maticové hry. doc. RNDr. tefan Pe²ko. 9. marca Katedra matematických metód a opera nej analýzy, FRI šu

Metódy vol nej optimalizácie

Zbierka rie²ených úloh z matematickej fyziky

Odporníky. 1. Príklad1. TESLA TR

Podnikateľ 90 Mobilný telefón Cena 95 % 50 % 25 %

LEM. Non-linear externalities in firm localization. Giulio Bottazzi Ugo Gragnolati * Fabio Vanni

Súčtové vzorce. cos (α + β) = cos α.cos β sin α.sin β cos (α β) = cos α.cos β + sin α.sin β. tg (α β) = cotg (α β) =.

Základy automatického riadenia

Vlastnosti regulátorov pri spätnoväzbovom riadení procesov

MATEMATIKA I. Základy diferenciálneho počtu. Návody k cvičeniam pre odbory VSVH a STOP. Andrea Stupňanová, Alexandra Šipošová

Για να εμφανιστούν σωστά οι χαρακτήρες της Γραμμικής Β, πρέπει να κάνετε download και install τα fonts της Linear B που υπάρχουν στο τμήμα Downloads.

ARMA modely čast 2: moving average modely (MA)

Sarò signor io sol. α α. œ œ. œ œ œ œ µ œ œ. > Bass 2. Domenico Micheli. Canzon, ottava stanza. Soprano 1. Soprano 2. Alto 1

Δίκτυα Perceptron. Κυριακίδης Ιωάννης 2013

Meren virsi Eino Leino

Funkcie - základné pojmy

UČEBNÉ TEXTY. Pracovný zošit č.2. Moderné vzdelávanie pre vedomostnú spoločnosť Elektrotechnické merania. Ing. Alžbeta Kršňáková

Reálna funkcia reálnej premennej

Numerické metódy matematiky I

Backpropagation Multilayer Feedforward Δίκτυα. Κυριακίδης Ιωάννης 2013

Základy automatického riadenia

6 Limita funkcie. 6.1 Myšlienka limity, interval bez bodu

Cieľom cvičenia je zvládnuť riešenie diferenciálnych rovníc pomocou Laplaceovej transformácie,

DIPLOMOVÁ PRÁCE. Monika Jakubcová Míry ecience portfolia vzhledem k stochastické dominanci

Q π (/) ^ ^ ^ Η φ. <f) c>o. ^ ο. ö ê ω Q. Ο. o 'c. _o _) o U 03. ,,, ω ^ ^ -g'^ ο 0) f ο. Ε. ιη ο Φ. ο 0) κ. ο 03.,Ο. g 2< οο"" ο φ.

Hľadanie, skúmanie a hodnotenie súvislosti medzi znakmi

Riešenie sústavy lineárnych rovníc. Priame metódy.

METÓDY VNÚTORNÉHO BODU VO FINANƒNÝCH MODELOCH DIPLOMOVÁ PRÁCA

Nekone ný antagonistický konikt

Rozsah hodnotenia a spôsob výpočtu energetickej účinnosti rozvodu tepla

Α.Τ.Ε.Ι ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΕΡΓΑΣΤΗΡΙΟ ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ 4

VLASTNÉ ČÍSLA A JORDANOV KANONICKÝ TVAR. Michal Zajac. 3 T b 1 = T b 2 = = = 2b

Siete jednosmerného prúdu alebo 77 odporných príkladov

UNIVERZITA KOMENSKÉHO V BRATISLAVE FAKULTA MATEMATIKY, FYZIKY A INFORMATIKY

Japanese Fuzzy String Matching in Cooking Recipes

Matematika 2. časť: Funkcia viac premenných Letný semester 2013/2014

Numerické metódy Zbierka úloh

Základy matematickej štatistiky

Kódovanie a dekódovanie

Úvod do lineárnej algebry

Transcript:

1 Neurónové siete Pri práci s neurónovými sie ami sa budeme drºa konvencie pouºitej v MAT- LABe, ²peciálne v toolboxe pre neurónové siete: Vstupné vektory sú vºdy st pcové. Aby sa dobre po ítal potenciál neurónu, tak váhy synapsií vstupujúcich do neurónu sú uloºené ako riadkový vektor. 1.1 Perceptrón Perceptrón s n vstupmi, vstupnými váhami w 1, w 2,..., w n a prahom ϑ budeme reprezentova ako roz²írený váhový vektor w = (w 1, w 2,..., w n, w n+1 ), kde w n+1 = ϑ. Pri výpo toch so vstupným vektorom x = (x 1,..., x n ) T budeme pouºíva roz²írený vstupný vektor (x 1,..., x n, 1) T. Naprogramujte nasledujúce funkcie: a) p=perc_create(n) vytvorí perceptrón s n vstupmi. Funkcia vráti roz²írený (n + 1)-rozmerný váhový vektor, ktorého zloºky sú náhodne inicializované. b) c=perc_recall(p,x) vráti (riadkový) vektor c výstupov perceptrónu reprezentovaného roz²íreným váhovým vektorom p s n + 1 zloºkami pre k vstupných n-rozmerných vektorov. Vstupy sú uloºené ako st pce matice x. Na výpo et výstupu perceptrónu pouºite skokovú funkciu hardlim(y), ktorá pre y 0 vracia 0 a pre y > 0 vracia 1. c) pn=perc_update(p,x,c,l) vráti perceptrón pn, ktorý vznikne úpravou perceptrónu p vzh adom ku k trénovacím vzorom reprezentovaným maticou x s k st pcami. Poºadované výstupy c sú reprezentované ako riadkový vektor s k zloºkami, ktoré majú hodnoty z mnoºiny {0, 1}. Posledný parameter l je u iaca kon²tanta. Táto funkcia implementuje jednu epochu u enia perceptrónu p na mnoºine vstupov x. d) e=perc_err(p,x,c) vráti chybu perceptrónu p na k vstupných vzoroch uloºených ako st pce matice x. Poºadované výstupy c sú reprezentované ako riadkový vektor s k zloºkami, ktoré majú hodnoty z mnoºiny {0, 1}. e) pn=perc_learn(p,x,c,l,iter) vráti perceptrón pn, ktorý vznikne po iter epochách u enia perceptrónu p. V jednej epoche sú perceptrónu postupne predkladané trénovacie vzory uloºené ako st pce matice x, c je riadkový vektor poºadovaných výstupov pre vzory x, l je u iaca kon²tanta. Pozor funkcia hardlim z Matlabu sa nezhoduje so skokovou funkciou z predná²ky! Úloha: Máme dané dva pozitívne vzory [1, 1],[1, 3] a dva negatívne vzory [2, 2], [3, 1]. Perceptrón má po iato né váhy 1,1 a prah 0 a bude u ený s u iacou kon²tantou 0.2. 1. Aké výstupy dáva tento perceptrón na trénovacích vzoroch? 2. Ukáºte ako sa mení výstup perceptrónu v prvých dvoch epochách u enia na daných trénovacích vzoroch. 1

3. Ko ko epoch je potrebných na to, aby sa daný perceptrón nau il správne separova pozitívne a negatívne vzory? Aké bude výsledný roz²írený váhový vektor nau eného perceptrónu. 1.2 Algoritmus zpätného ²írenia Back-Propagation Je daná vrstevnatá neurónová sie s topológiou [2,2,1], tj. sie má 2 vstupné neuróny, 2 skryté neuróny a jeden výstupný neurón. Synaptické váhy medzi vstupnou a skrytou vrstvou neurónov sú dané maticou: w_i_h = 1.40000 0.40000-2.00000 0.80000 w_i_h(i,j) je váha spoja zo vstupu j do skrytého neurónu i. Tj. riadok váhovej matice zodpovedá vstupným váham jedného neurónu! Synaptické váhy medzi skrytou a výstupnou vrstvou neurónov sú dané maticou: w_h_o = 2.30000-1.00000 w_h_o(1,i) je váha spoja zo skrytého neurónu i do výstupného neurónu. Prahy skrytých neurónov sú v matici: b_h = 0.00000-0.50000 a prah výstupného neurónu je: b_o = 0.40000 Teda váhy zo vstupnej vrstvy do skrytej vrstvy s pridaným jednotkovým neurónom pre prah sú: >> w_i_hb=[w_i_h b_h] w_i_hb = 1.40000 0.40000 0.00000-2.00000 0.80000-0.50000 Váhy zo skrytej vrstvy do výstupnej vrstvy s pridaným jednotkovým neurónom pre prah sú: >> w_h_ob=[w_h_o b_o] w_h_ob = Úlohy: 2.30000-1.00000 0.40000 2

1. Spo ítajte výstup siete pre vzory p1=[-1; 1] a p2=[1; -1]. Pri výpo te v MATLABe môºete vyuºi funkciu logsig(x), ktorá po íta (logickú) sigmoidu 1 logsig(x) = 1 + e x. Jedná sa teda o sigmoidu so strmos ou 1. 2. Vzor p1=[-1; 1] je trénovací vzor, pre ktorý je poºadovaný výstup 0.9. Aká je chyba siete pre tento vzor? Ako sa zmenia váhy siete pri vykonaní jedného kroku algoritmu spätného ²írenia s parametrom u enia α = 0.2? 1.3 U enie vrstevnatej siete algoritmom spätného ²írenia v MATLABe Pozrite si stránky s nápovedou cez Help Neural Network Toolbox Backpropagation. Pouºitie vrstevnatých neurónových sietí sa skladá zo 4 krokov 1. Zostavenie trénovacích dát funkcie pre predspracovanie (normalizácia dát),... Vstupy i poºadované výstupy sú st pcové vektory: p = [-10-9 -8-7 -6-5 -4-3 -2-1 0 1 2 3 4 5 6 7 8 9 10-1 -1-1 -1-1 -1-1 -1-1 -1 0 1 1 1 1 1 1 1 1 1 1] t = [10 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10]; 2. Vytvorenie siete: príkaz newff má nasledujúce parametre: (a) Matica trénovacích vzorov. (b) Matica poºadovaných výstupov. (c) riadkový vektor [i 1, i 2,..., i m ] popisujúci topológiu siete i j je po et neurónov v j-tej vrstve. Vstupná vrstva je 0-tá a jej ve kos sa ur í z prvého parametra. i m je po et neurónov v poslednej skrytej vrstve. Ve kos výstupnej vrstvy sa ur í z druhého parametra. (d) Zoznam mien prenosových funkcií pouºitých v jednotlivých vrstvách (skrytých a výstupnej). (e) Meno trénovacieho algoritmu. net=newff(p,t,[5],{'logsig','purelin'},'trainlm'); Funkcia newff má v skuto nosti e²te viacej parametrov viz nápoveda k MATLABu. Tieº je moºné vynecha implicitné hodnoty parametrov napríklad volanie newff(p,t,5) je ekvivalentné volaniu newff(p,t,5,{'tansig','purelin'},'trainlm' Potom je moºné nastavi parametre siete, alebo necha implicitné nastavenie: net.trainparam.lr = 0.05; net.trainparam.epochs = 300; net.trainparam.goal = 1e-5; 3

Pri vytvorení je sie automaticky inicializovaná. Uº hotovú sie je moºné znova inicializova volaním: net=init(net) Toto sa pouºíva pri opakovanom u ení siete. 3. Trénovanie siete. [net,tr]=train(net,p,t); Pred u ením siete sa mnoºina vzorov rozdelí na trénovaciu mnoºinu, valida nú mnoºinu a testovaciu mnoºinu (implicitne v pomere 60%:20%:20%). Potom sa spustí u enie siete. Automaticky sa otvorí okno, kde sa zobrazuje priebeh u enia: U enie kon í pri splnení niektorej z nasledujúcich podmienok: Bol dosiahnutý maximálny po et epoch implicitne 1000. nastavi pomocou Dá sa net.trainparam.epochs = 300 4

Bola dosiahnutá chyba men²ia neº net.trainparam.goal implicitne 0. Gradient klesol pod net.trainparam.min_grad implicitne 1 10. Chyba na valida nej mnoºine vzrástla v net.trainparam.max_fail po sebe idúcich epochách (implicitne 6 krát). ƒas u enia prekro il nastavenú dobu net.trainparam.time implicitne táto doba nie je obmedzená a tento parameter má hodnotu Inf. Niektoré algoritmy (napr. Levenberg-Marquardtov) majú al²ie parametre, ktorých hrani ná hodnota sa dá sledova a pouºi ako stopkritérium. Pri vy²²ie uvedenom spôsobe volania funkcie train je v druhom parametre tr vrátený výsledok u enia, z ktorého sa dá pre íta mnoho informácií o pouºitom algoritme, priebehu u enia a dosiahnutých výsledkoch: >> tr tr = trainfcn: 'trainlm' trainparam: [1x1 struct] performfcn: 'mse' performparam: [1x1 struct] dividefcn: 'dividerand' divideparam: [1x1 struct] trainind: [3 4 6 8 11 13 14 16 17 18 19 20 21] valind: [2 9 12 15] testind: [1 5 7 10] stop: 'Validation stop.' num_epochs: 115 best_epoch: 109 goal: 0 states: {1x8 cell} epoch: [1x116 double] time: [1x116 double] perf: [1x116 double] vperf: [1x116 double] tperf: [1x116 double] mu: [1x116 double] gradient: [1x116 double] val_fail: [1x116 double] Av²ak tento druhý parameter sa pri volaní nemusí uvádza a je moºné pouºíva iba volanie net1=train(net,p,t); 5

V priebehu alebo po skon ení u enia je moºné sledova vývoj chyby siete (tla ítko Performance): a tieº stav u enia (tla ítko Training State): Grafy regresnej analýzy nau enej siete dostaneme stla ením tla ítka Regression: 6

4. Vybavovanie siete simulácia siete na nových dátach. Funkcia sim(net1,p). Napríklad >> p = [1;2]; >> a = sim(net1,p) a = 0.1735 2 Transformácie dát Normalizácia hodnôt vektorov môºe výrazne urýchli u enie siete. V balíku na neurónové siete sú pre takého transformáie pripravené funkcie. Naviac mnoho modelov neurónových sietí v Toolboxe robí automatické predspracovanie vstupov. Napr. newff najprv nahradí chýbajúce hodnoty vstupov (NaN), vynechajú sa kon²tantné riadky a urobí sa min-max normalizácia na interval < 1, 1 >. Je to v parametroch siete net.inputs{1}.processfcns = {'fixunknowns','removeconstantrows','mapminmax'} net.outputs{2}.processfcns = {'removeconstantrows','mapminmax'}) 7

2.1 Min-max ²kálovanie na interval < 1, 1 > [pn,ps] = mapminmax(p); [tn,ts] = mapminmax(t); net = train(net,pn,tn); pn, resp. tn, sú transformované vstupné vzory, resp. poºadované výstupy. ps, resp. ts, sú parametre príslu²ných transformácií, ktoré sa vyuºijú pri spätnej transformácii. Ke takto nau enú sie aplikujeme, tak jej výstup musíme patri ne transformova an = sim(net,pn); a = mapminmax(`reverse',an,ts); Ak chceme pouºi tú istú transformáciu na nové dáta pnewn = mapminmax(`apply',pnew,ps); anewn = sim(net,pnewn); anew = mapminmax(`reverse',anewn,ts); 2.2 kálovanie pod a priemeru a ²tandardnej odchýlky Funkcie [pn,ps] = mapstd(p); [tn,ts] = mapstd(t); an = sim(net,pn); a = mapstd('reverse',an,ts); pnewn = mapstd(`apply',pnew,ps); anewn = sim(net,pnewn); anew = mapstd(`reverse',anewn,ts); 2.3 Principal Component Analysis Najprv je treba dáta normalizova tak, aby mali strednú hodnotu 0 a rozptyl 1. Potom môºeme urobi PCA analýzu. [pn,ps1] = mapstd(p); [ptrans,ps2] = processpca(pn,0.02); Pri vy²²ie uvedenej transformácii sa vynechajú zloºky, ktoré prispievajú menej neº 2% k celkovému rozptylu. Ak chceme túto transformáciu pouºi na nových údajoch 8

pnewn = mapstd(`apply',pnew,ps1); pnewtrans = processpca(`apply',pnewn,ps2); a = sim(net,pnewtrans); Úloha: Súbor dataset1.mat obsahuje dve matice. Matica p sú vzory a matica (riadkový vektor) t sú poºadované výstupy. (Do MATLABu sa na ítajú príkazom load dataset1.) 1. Vyberte z tejto trénovacej mnoºiny polovicu vzorov a pouºite ich ako trénovaciu mnoºinu pre nau enie vrstevnatej neurónovej siete. 2. Pomocou PCA-predspracovania transformujte vstupné 3-rozmerné vektory na 2-rozmerné vektory a porovnajte rýchlos u enia a presnos nau enia príslu²ných sietí s rovnakými parametrami. Môºete sa in²pirova demo príkladom demobp1.m. Aby ste dosiahli redukciu na 2 dimenzie je treba oproti demo-príkladu z avi na presnosti! 2.4 Hopeldove siete Váhy Hopeldovej siete sa nastavujú pod a Hebbovského pravidla: W ij = [ ( x p ) T x p I ], kde I je jednotková matica. p,i j x p i xp j = p Predpokladáme, ºe zloºky vektorov sú z mnoºiny { 1, 1}. Úloha: Spo ítajte váhy Hopeldovej siete siete, ktorá sa má nau i vzory: B=[ 1-1 -1 ; -1 1-1 ; 1 1-1 ; -1-1 -1 ] Aký vzor vybaví táto sie pri vstupe [1; -1; -1; -1]: (i) pri synchrónnej adaptácii; (ii) pri asynchrónnej adaptácii? Spo ítajte energetickú funkciu siete pri jednotlivých krokoch vybavovania. 9