User Tools

Site Tools


gnd:ann

Uvod do Neuronovych Sieti

nedopracovane otazky su dosledok znizovania casoveho okna a zvysovania unavy.. nic moc overall.

9. Principal Component Analysis

Vyratame si korelacnu maticu a pomocou nej ziskame hlavne vektory a hlavne komponenty pre dane data. toto mozem pouzit na dekorelaciu dat alebo redukciu dimenzie, alebo rekonstrukciu poskodenych dat, alebo kopresiu. Viacej napriklad tu: http://csnet.otago.ac.nz/cosc453/student_tutorials/principal_components.pdf

10. Self Organized Maps

Učenie so súťažením

Vzor sa hodi sieti, a podla nejakeho kriteria sa vyberie najlepsie reagujuci neuron. Bud je to Euklidovska vzdialenost vzoru a vektoru vah daneho neuronu (ktora musi byt najmensia zo vsetkych), alebo je to velkost odozvy w^t * x. Co je vlastne to iste, ked si rozpiseme ako sa rata euklidovska vzdialenost. Sutazenie ma este jeden rozmer - medzi neuronmi existuju lateralne vazby. Neurony blizko vitazneho neuronu su excitovane, neurony kusok dalej zase inhibovane. Suvisi to s principmi samorganizacie - teda existencia lokalnych pozitivnych spatnych vazieb. Blablabla.. som is easy gonda is dead.

Et Cetera ..

Neurobiologická motivácia algoritmu SOM, laterálna interakcia a jej náhrada v SOM, sumarizácia algoritmu, voľba parametrov modelu, DP verzia algoritmu.

blablabla vieme..

11. Self Organized Maps

Vektorová kvantizácia

Learning vector Quantization

Pre data sa vyberie M prototypov - kedze ma byt M tried na klasifikaciu. Tieto prototypy su reprezentovane neuronmi a vahami ktore k nim zo vstupnych dat vedu. Nainicializuju sa napriklad tak ze kazdemu neuronu sa nastavia vahy na nejaky vektor zo vstupnych dat. Potom sa robi normalne kompetitivne ucenie, kde sa vyberie nahodny vektor x z mnoziny vstupnych dat a hlada sa prototyp (neuron), ktory ma najbzlizsiu euklidovsku vzdialenost ku x. Ten ktory vyhra je potom updatnuty takto:

w(new) = w(old) + m( x - w(old) ), kde m je pocet prototypov.
Potom co su neurony natrenovane, sa moze siet pouzit na klasifikaciu dat. Ak je to dvojrozmerny priestor, tak prototypy definuju jadra Voronoivho diagramu. Very easy. Pouziva sa aj na kompresiu. (namiesto vektoru sa posiela kod prototypu kde patri - napriklad v telefonnej komunikacii)

topografické zobrazenie príznakov

Kedze v SOM-ke vyhravaju s vitaznym neuronom aj jeho topologicky susedia, nastava zhromazdovanie podobnych klastrov vedla seba.

redukcia dimenzie

blabla.. ak mame 2d SOM tak data sa zredukuju do 2d priestoru.

magnifikačný faktor

vela podobnych dat a malo inych, ked napriklad je narusena gausovsa distribucia vstupov, sposobi ze siet sa lepsie nauci rozoznavat tieto data ktore jej boli viacej prezentovane a vo vyslednej mape zaberaju vacsi priestor. “Som aproximuje hustotu rozlozenia vstupnych dat”

náčrt matematických problémov analýzy algoritmu

netusim..

12. Hybridne model NS: Radial Basis Functions

Paradny popis principu fungovania RBF: http://www.statsoft.com/textbook/stneunet.html#radial

Aktivacne vzorce

Siet pozostava z jednej skrytej vrstvy, ktora je zlozena z jednotiek, jadier, ktore interpretuju hypergule (preto radialna aktivacna funkcia). Iny sposob ako ich chapat je ze su to jadra gaussovskych distribucii. Vystupna vrstva moze byt len lienarnou kombinaciou vystupov skryteho layeru. (moze pretoze sa daju pouzivat aj nelinearne metody)

Bazove funkcie

Tieto funkcie popisuju jadro + fallof hypergule, pricom klasifikacia vlastne znamena vzdialenost vzoru od jadra nejakej hypergule. Gaussia, Cauchy, Multiquadrics, Quadrics:

Priznakovy priestor

Sa sklada z rozmiestnenych jadier RBF jednotiek, z ktorych kazde ma inu charakteristiku, a fallof. Bod v priznakovom priestore sa vyhodnoti z hladiska jeho vzdialenosti ku centram hyperguli, ktore su reprezentovane RBF jednotkami. Je dobre ked sa hypergule ciastocne prekryvaju, pretoze to zvysuje schopnost generalizacie, na druhej strane to ale znizuje schopnost klasifikacie. Pokial by sa neprekryvali, dochadza ku over-fittingu vstupnych dat a moze sa stat ze bod medzi dvoma hypergulami nebude spravne zaradeny..

Problem interpolacie

Najst funkciu, ktora spravne interpoluje data. RBF to robia linearnou kombinaciou jednotiek h(i). Teda w^t*h(i) = d(i), i = 1,2…n. Ked isi to dame do matice, a zjednodusime, vyjde nam ze w = H^-1 * d. Urobim ale inverznu maticu ku matici H je mozne len vtedy ak tato maitce je nesingularna. Michelliho teorem vravi, ze matica H, kde h(i,j) = SIGMA(i,j)[||x(i) - x(j)||] je nesingularna. SIGMA(i,j) je prave nejaka radialna funkcia.

Aproximacne vlastnosti

Blablabla, tak ako v tom anglickom texte. RBF sa fasa rychlo ucia oproti MLP, ale zase vyzaduju vacsi priestor, a je problem najst vhodne rozlozenie centier v priznakovom priestore.

13. Hybridne model NS: Radial Basis Functions, TRN, DCS

RBF - sposoby trenovania vah

Trening RBF prebieha v dvoch stadiach - prve stadium je nelinearny trening RBF centier a druhy je nejaka lienarna optimalizacia vystupov z RBF layera.

  • Fixed centers selected at random - centra RBF hypergul sa nahodne rozhodia po celom priestore priznakov. Je to fajn ked maju data gaussovsku distribuciu. Je mozne im aj davat rozlicne velkosti, ale treba k tomu nejaku heuristiku dalsiu.
  • Self-organized selection of centers (metoda k-means) - centra sa prejdu nejakym SOM-like algoritmom a na jeho konci optimalne pokryju cely priestor priznakov.
  • Supervised selection of centers - nad vyberom centier stoji vsevidiace oko Velkeho Brata bwahaha.. Gradientove metoy, etc..

TRN - Topology Representing Network

Ni na nete nic nenachadzam, tak vravim ze to je intepretacia dat pomocou grafu, v ktorom je mozne killovat a pridat hrany.

DCS - Dynamic Cell Structures

Podobne ako TRN ale este navyse sa pridavaju nove nody do grafu, tam kde je najvacsia chyba medzi dvoma nodami. Nova noda ziska priemerne hodnoty jej susedov.

Porovnanie RBF a MLP

  • MLP deli priestor pomocou hyperrovin, MLP zase priestor deli pomocou “horucich” jadier hypergul. (teplo teplejsie .. uaa!).
  • Rozdielnost aktivacnych funkcii
  • RBF staci jeden skryty layer
  • RBF sa uci ovela rychlejsie
  • MLP extrapoluje aj nezname data, RBF len tie ktore su blizko centier..
  • etc..

14. RNS - Time Delayed Neural Network

Recurent Neural Networks

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:

  • Elmanov model: kontextova vrstva dostava feedback od skrytej vrstvy
  • Jordanov model: kontextova vrstva dostava feedback od vystupnej vrstvy. Pouzitie “decay units”: c(i+1) = ALFA*(c(i)) + y(i), 0 < ALFA < 1
  • Stornettov model: kontextova vrstva dostava decay loop na vstupe ( c(i+1) = ALFA*(c(i)) + x(i) ), podobne ako IIR filtre
  • Mozerov model: plne prepojenie medzi kontextovymi a vstupnymi neuronmi, ucenie odlisne od backpropu

Time Delayed Neural Network

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.

15. RNS - Back Propagation Through Time

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.

Trening

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.

popis

16. RNS - Real Time Recurrent Learnig

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.

Chyba & Vahy

17. Hopfieldov model, Deterministicka verzia

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.

  • Neurony su binarne, stavy bud -1 a 1, alebo 0 a 1, takto Hopfieldov model pripomina celularne automaty
  • Neurony niesu napojene same na seba.
  • Vahy medzi neuronmi su symetricke

Pravidlo aktivacie

Zmena stavu

Aktivacnou funkciou (napr. sgn()) prezenieme net (pravidlo aktivacie) od ktoreho odcitame treshold..

Energia

Hopfieldov system ma prisudenu energiu, ktora vyjadruje jeho stav vo fazovom priestore:

Princip

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.

  • Synchronny model (vahy sa updatuju naraz)
  • Asynchronny model (vyberie sa nahodny neuron a vahy sa updatnu)
  • Hybridny model

18. Hopfieldov model, stochasticka verzia

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.

Rovnice

Dovysvetlenie: Spurious attractors su lokalne minima kde sa siet moze zastavit. Tieto stavy v stochastickom modeli vylucime tak ze do dat uvedieme sum (cez pravdepodobnostny pristup)

gnd/ann.txt · Last modified: 2007/05/28 02:20 (external edit)