This is an old revision of the document!
Klasicke modely NN maju problem rozlisit casovy kontext a naslednost vstupov. Ich pamat je obmedzena len pre sucasny vstup, a vystup nezavysi od sekvencie poslednych vstupov (kontextu). Aplikacie v ktorych sa vyzaduje takato funkcnost su viacere: rozpoznavanie reci, predpovedanie casovych radov, rozpoznavanie casovych radov a podobne.
Prve taketo modely NN boli len ciastocne rekurentne. Pouzivali vrstvu “kontextovych” neuronov, ktorych vystup sa posielal skrytej vrstve:
Z toho co som pochopil sa jedna klasicku feeforward neuronovu siet, v ktorej ale existuje delay. S delayom sa pracuje tak, ze ak sa sieti prezentuje nejaka sekvencia, tato sekvencia sa po jej prezentacii vlozi do delay fronty s dlzkou n. Po n cykloch z fronty vypadne. Kazdy neuron si teda svoju aktivaciu rata nie cez net input ale cez delayovany net input. Delayovany net input je tiez vazeny. Teda ak mame dlzku delay fronty rovnu n, potom net input bude:
net = a0x(0) + a1x(1) + … + anx(n), kde x(n) je vstupny vektor pred casom n. Akurati si niesom isty ci vahy a0 az an su rovnake alebo nie.
Pokial som pochopil spravne z netu, siet sa trenuje rovnako ako obycajna feeforward. Predpokladam ze asi su vsetky vahy ku delayovanym inputom rovnake, alebo sa spravi average vah a potom sa kazda z nich updatne rovnakym dielom.
Vyuzitia su speech recognition, time-series predition, etc - veci ktore vyzaduju aj casovy kontext. Nevyhody su tie, ze delay ma dlzku okna n, a tuto dlzku okna treba vzdy nejakym sposobom nastavit, pricom existuju aplikacie pre ktore ziadna dlzka n nieje vhodna, pretoze je konecna.
Rozsirenie feedforward sieti o casovu dimenziu. Podobne ako TDNN. Do delay fronty sa ale uklada vystup neuronu v case x. Fronta ma opat dlzku n. Vstupom do input layeru je sekvencia dlzky n. Neuron v case x+1 dostane na vstup: vystupy od neuronov v case x, x+1 cast sekvencie, a svoj vystup v case x. Vsetky tieto vstupy maju rovnake vahy.
Trenovanie sa deje po “prezuti” celej sekvencie. U poslednej casti sekvencie sa vypocita delta ako nasobok f(net) a e(i). U predoslych casti sekvencie napriklad t, sa rata nasobok f(net) * [e(i) + suma vahy * delty (t+1)]. Vyrata sa takisto celkova chyba ako 1/2 * suma cez cas sum cez chyby neuronov. Vaha sa updatne ako alfa * suma cez cas delta(i) v case t * x(t-1).
Nevyhody podobne ako u TDNN - dlzka sekvencie je fixna.
Kompletne prepojena rekurentna neuronova siet. (alebo aspon minimalne sa tvari ze “we now make network connectivity very very unconstrained”. Uci sa modifikaciou backpropu, ktory funguje realtime. Chyba sa rata len ked dany vystup ma nejaky “ciel”. Pocita sa chyba v case t, a z nej sumaciu cez vsetky neurony s cielom celkova chyba v case t. Potom sa to zacina zamotavat: na updatovanie vah sa pouziva specialny operator:
ktory:
The key to understanding RTRL is to appreciate what this factor expresses. It is essentially a measure of the sensitivity of the value of the output of unit k at time t to a small change in the value of wij, taking into account the effect of such a change in the weight over the entire network trajectory from t0 to t. Note that wij does not have to be connected to unit k. Thus this algorithm is non-local, in that we need to consider the effect of a change at one place in the network on the values computed at an entirely different place (!!!!).
Pouziva sa aj technika “Teacher forcing”, kde sa niekedy vystupy nahradia idealnymi vystupmi (cielmi). Tie su potom feebackovane naspat do siete.
Hoppfieldov model bol popisany Johnom Hopfieldom v aprili 1982. Jedna sa o jedinu vrstvu kompletne poprepajanych neuronov. Vystupy jednotlivych neuronov su zapojene do vstupov ostatnych neuronov. Kazdy neuron ma aj externy vstup. Jedna sa o formu rekurentnej siete.
Aktivacnou funkciou (napr. sgn()) prezenieme net (pravidlo aktivacie) od ktoreho odcitame treshold..
Hopfieldov model je vlastne dynamicky system. Energeticka rovnica popisuje fazovy priestor. Siet ako autoasociativna pamat. Sieti sa ponukne utrzok dat a siet si ich po istej chvili konvergovania vo fazovom priestore cele zrekonstruuje. Funguje to tak ze zapamatane data predstavuju vo fazovom priestore globalne minima, a vlastne su to atraktory, ktore pritahuju tie ci one vzorky, ktore sa sieti poskytnu. Z napisaneho vyplyva ze aktivacna rovnica sluzi na minimalizaciu energie.
Pracuje sa s terminom T “teplota” (teda vlastne entropia). Stavy sa mozu premenit na ine stavy na zaklade pravdepodobnosti. Najprv sa urci pravdepodobnost zmeny na zaklade rovnic a potom sa zjavne hodi kockou.