Neurónové siete
TS sa da zalgoritmizovat pomocou NS, vsetko co sa da zalgoritmizovat sa da zachytit pomocou NS…stav vsetkych procesov ja upravovany podla vztahu xi(t+1)=γ(Σ(j=1po n)(wij xj (t)) + Σ(j=1 po n) (bj wj (t)) + cj).princip: vstup a vystup su prezentovane ako toky. Vstupne symboly su prenasane po jadnom v kazdom case t. Vystup je prezentovany ako tok synbolov cez p kanalov. Pomocou takychto sieti je mozne simulovat vsetky TS tj. existuje NS tvorena 886 procesormi, kt. pocita CRF.
Neuromat: Regularny neuronovy akceptor (RNA) je NS pre kt. plati, ze existuje jediny vstupny a vystupny neuron. E Î V x (V – Inp ) - Out>. Do vstupneho neuronu nevedu ziadne hrany.
Je zakazana hrana medzi vstupom a vystupom
W : E→ 2
e: V - Inp→ 2
Xinit : V – Inp→ {0,1}
Boltzmanove siete:
Vyuzivaju metodu simulovaneho zihania, tj. pri kazdej teplote sa snazia dosiahnut rovnovahu.
Algoritmus:
1.Inicializacia vah prepojeni Wij na nahodne hodnoty a vyber hodnoty z trenovacej mnoziny
2.Fixovana taza: pre danu trenovaciu vzorku fixujeme stavy vstupnych a vystupnych neuronov a privedieme siet do stavu s min.energiou pomocou metody simulovaneho zihania, pricom teplotu znizujeme pomocou tabulky ochladzovania. Pri kazdej teplote sa stavy menia az kym siet nedosiahne teplotnu rovnovahu. po jej dosiahnuti pri koncovej teplote Tk vypocitame hodnoty podmienenych relacii pre ρ ij+ pre i=1,...,n
3.Opakujeme ako v 2., ale fixujeme iba stavy vstupnych neuronov a pri hranici Tk vypocitame
ρ- = ∑ α ∑ β ∑ γ ρ-αβγ ρiαβγ ρjαβγ
4. Uprava vah prepoj: Δw ij= η(ρ- ij - ρ+ ij) i,j=1..n i sa nerovna j
5.Vybrat dalsiu trenovaciu vzorku a opakovat od kroku 2 kym siet neskonverguje (v dvoch po sebe iducich iteraciach sa vahy nezmenia).
Kohonenove siete: SOFM – samoorganizujúce sa mapy. Kohonenove mapy = učenie bez učiteľa. 2 vrstvy: a) dolná vrstva – lineárna dimenzia vstupných vektorov b) horná vrstva – vlastná Kohonenova mapa. Mapa, ktorá bude odrážať skutočnosť zdola. Najčastejšie mriežka, kde sú prepojenia medzi ostatnými neurónmi. Každý neurón z hornej vrstvy je prepojený s neurónom dolnej vrstvy, čiže každý neurón hornej vrstvy je spojený synaptickými väzbami so všetkými vstupnými neurónmi. Tieto väzby sa v adaptívnom režime modifikujú podľa prichádzajúcich vstupov. Ďalšie väzby – medzi všetkými neurónmi v hornej vrstve.
Topológia hornej vrstvy: pre každý neurón tejto vrstvy je definovaná sústava okolí zahrňujúcich susedné neuróny tejto vrstvy. Algoritmus: 1) Inicializácia váh – nastavenie počiatočných polomerov susedstva, inicializácia váh od n vstupov do m výstupných vrcholov na malé, náhodné veličiny 2) Prezentácia nového vstupu – na vstupnú vrstvu siete je privedený vstupný vektor. 3) Výpočet vzdialeností ku všetkým vrcholom dj = Σ (j=1 až n) (xi(t)-wij(t))2, kde xi(t) je vstup do i-tého vrcholu v čase t, pre 1<=j<=m. 4) Výber vrcholu s minimálnou vzdialenosťou – vybrať vrchol j* ako výstupný vrchol s minimálnou hodnotou dj. 5) Úprava váh do vrcholu j* a k susedom – v tvare „mexický klobúk“. 6) Opakovanie prechodom na krok 2
Simulované žíhanie: -robené pre Boltzmannove siete. Princíp – umožniť sieti prechod do stavu s vyššou energiou, než akú mal predošlý stav, pričom počet týchto prechodov je vždy menší ako počet krokov, pre ktoré ΔE<0, takže celkove sa zachováva základná myšlienka zachovania energie. Metropolisov algoritmus – popisuje ako vychýliť sieť z daného minima. V každom kroku vyberie náhodne jeden neurón a ten preklopí, vypočíta ΔE, v prípade že sa zmení jeho stav: ak ΔE<0, tak O.K. – opakovanie kroku s novou konfiguráciou, ak ΔE>0, nový stav bude akceptovaný s pravdepodobnosťou ρ|ΔE| = e-(ΔE)/T (T je konštanta (teplota systému)). Rýchlosť, akou postupne znižujeme teplotu od počiatočnej hodnoty až po koncový stav: Tk >= T0/(1+k). T0 je dosť veľká počiatočná hodnota, potom sieť s pravdepodobnosťou 1 skonverguje do stavu s minimálnou energiou. Konvergencia algoritmu pre simulované žíhanie: Zmena stavu neurónu znižuje energiu siete s pravdepodobnosťou p>1/2. Pri zmene energie siete pri prechode neurónu k zo stavu sk(t) do sk(t+1) platí: ΔE = (-(1/2))/(sk(t+1)-sk(t)).hk(t) Vypočítame pravdepodobnosť, že pri tejto zmene ΔE<0: 1.) pre sk(t)=-1, sk(t+1)=1 => ΔE<0, ak hk(t)>0 => p>1/2. 2.) pre sk(t)=1, sk(t+1)=-1 => ΔE závisí od hk(t) => p>1/2. Sieť teda prejde do stavu s nižsou energiou s pravdepodobnosťou p>1/2.
|