Články a foto


6.6.2005 - Ako na neurónky, alebo Stuttgart Neural Network Simulator po slovensky a v praxi ;-)

OK, takže poďme nato od začiatku, čo nám treba vedieť:

  • NN je ozna?enie pre neurónové siete ;-)
  • Každá NN má tri druhy vrstiev : vstupnú input, skryté vrsty hidden a výstupnú output.
  • Neuróny v SNNS sú dopredu definované, takže MI ICH NEPROGRAMUJEME. Urobíme len sie?, akú potrebujeme a pospájame ju synapsiami.
  • Neurónka má dve fázy: fázu u?enia a fázu testovania.
  • V simulátori SNNS si takúto neurónku spolo?ne vyrobíme.

Simulovanie LINUXU na Win

Stiahnite si X-Win32

http://www-ra.informatik.uni-tuebingen.de/downloads/SNNS/Windows/Executables/X-Server/

rozbalte a nainštalujte :-)

Táto verzia X-Win32 je demo a je oklieštená tým, že za predpokladu, že niekto z Vás strávi v programe neuverite?ných 120 minút, X-Win32 sa vypne :-|

Nebojte sa, to?ko ?asu (hádam) nepotrebujete :-)))

SNNS

Stiahnite si SNNS

http://www-ra.informatik.uni-tuebingen.de/downloads/SNNS/Windows/Executables/SNNSv4.2.Win32-bin.zip

Nainšalujete ho nakopírovaním :-) kade-tade :-)))

Spustíte ho netradi?ne jednoducho z Windowsu kliknutím na SNNS.bat.

Stiahnite si jednoduchý príklad neurónky:

a nakopírujte si ho niekde do adresára "priklad" do SNNS, aby sme nemuseli po neho daleko chodi?...

V príklade je NN s 4 neurónmi, ktorá sa pod?a vstupov, ktoré jej zadáme nau?í funkciu XOR =>

1,1 => 0
0,0 => 0
1,0 => 0
0,1 => 0

Naša NN sa funkciu nau?í a bude ju vedie? po?íta? aj pre iné vstupy, napr. 0,3 a 0,5.

Otvorenie existujúcej neurónky a u?enie

Po spustení SNNS sa vám otvorí hlavné okienko programu.

DôLEŽITÉ: Nikdy nezatvárajte podokná programu cez krížik, lebo o všetko prídete! :-(

Zo všetkých tla?idiel budeme potrebova? len: File, Control, Display, Graph, Bignet aaaaaaaaaaaaaa Quit :-) (my favourite :-D )

Za?neme File:

  • Aby sme otvorili uložený príklad, musíme otvori? súbor s NN. Tá ma príponu .NET a teda vysvietime .NET a klikneme na xor.net a na Load.
  • Potom musíme natiahnu? súbory PATTERN; klikneme na .PAT a postupne klikame na všetky tri z príkladu a dávame za každým Load.
  • Tak to by sme mali. Môžeme kliknu? na Done.

?o sme urobili?

Natiahli sme do SNNS neurónku (xor.net) a súbory so vstupmi a výstupmi siete (*.pat), pod?a ktorých sa bude NN u?i? a na ktorých ju budeme aj testova?.

Zobrazenie NN:

  • aby sme NN videli, klikneme v menu na Display.
  • aby sme videli synapsie, klikneme na menu Setup a zaškrtnme oproti pôvodnému nastaveniu Link On a -2.35 , Done.

?o sme urobili?

Zobrali sme si neuróny (nody) spolu so synapsiami a ich váhami.

Zobrazenie Grafu:

  • tla?idlom Graph zobrazte graf, kde sa budú ukazova? výsledky presnosti.
  • Šípkami pri X a Y si prispôsobujete zobrazovanú plochu, takže ak ni? nevidíte, skúste si to odzoomova? :-)

U?enie neurónky:

Na u?enie a testovanie NN slúži tla?idlo Control:

  • V prvom rade si nastavte funkcie ( tla?idlo Sel.Function ) U?enia (Learn) Updateovania, Inicialitácie (Init), Remapovania (Remap) na základné hodnoty, teda prá funkcia v zobrazených zoznamoch.
  • Nastavte po?et cyklov, v ko?kých sa bude neurónka u?i? na 1000 :-)
  • Nastavte obidva paterny tla?idlom Use na xor.pat.
  • Vyskúšajte si, ako budú vyzera? vstupy a výstupy NN pomocou tla?idla Test. V Display vidíte aké hodnoty boli privedené na vstup a ?o sme dostali na výstupe.
  • Tla?idlom Init inicializujete NN a synapsie dostanú všetky váhu 1.
  • Tla?idlom All nau?íte neurónku všetky príklady z patternu xor.pat.
  • VyClearujte okno grafu.
  • Vyresetujte sie? pomocou Reset, použite pattern xor_bigtrain.pat v oboch Useoch. Inicializujte pomocou Init a nau?te pomocou All. V grafe uvidíte, ako Vám krásne sadla chyba nižšie.

A tým sme sa dostali k poslednej veci a tou je vytvorenie svojej vlastnej NN. Urobíme si tiež XOR, ale taký, ktorý bude ma? v skrytej vrstve dva neuróny - nody:

  • kliknite na Bignet a zvolte General. Zobrazí sa Vám okno, kde sa definuje NN. Horná ?as? okna definuje neuróny, spodná synapsie.
  • Plane znamená jedna vrstva. V Current plane máte obsah terajšej vrstvy (prázdne) do st?pca Edit Plane budeme zadáva? naše neuróniky: :-)
  • Najprv urobíme vstupnú vrstvu: Type musí by? nastavený na input. Mení sa tla?idlom Type. x-direction=2 (neuróny) y=1. Position sa mení tla?idlom Pos a nastavíme ju na below, nech to máme zacentrované pekne.
  • Teraz navrhnutú vrstvu potvrdíme tla?idlom Enter. Vrstva sa zobrazí v Current Plane a je jej pridelený index - prvé ?íslo. Ak ste nie?o dobabrali, prepíšete ju napísaním nových nastavení do Edit plane a stla?ením Overwrite.
  • Takto vystvoríme aj druhú vrstvu - rovnako, len typ nebude input ale hidden. Posledná vrstva bude ma? len jeden neurón a jej typ bude output. Tým sme skon?ili zadávanie neurónov.
  • Ideme vytvori? synapsie medzi neurónmi. Chceme ich urobi? všade, takže v dolnej ?asti okna sta?í kliknú? na Full connection.
  • Sie? je hotová stla?ením Create net. Pozrite si ju v okne Display.
  • Cez okno Control by sme mohli na ?u pusti? patterny a nau?i? ju XOR presne tým spôsobom, akým sme to robili s neurónkou, ktorá bola popísaná vyššie.
  • Pokia? vyslovene neuložíte zmeny cez File, .NET a Save, tak Vám sie? neuloží.

To?ko krátky úvod do SNNS - stru?no a jasne :-) Have a good luck.

späť

Vidíme vašu výnimo?nos?

Náhodná fotografia

Tatry Portál - všetko o Vysokých Tatrách