neuronove site

Marek Peca marek@tynska.cuni.cz
Sobota Leden 1 18:00:07 CET 2005


Zdravim,

pred lety jsem se tomu docela venoval, bohuzel me uragan zivota
(doufam docasne) zaval do jakychsi nevabnych koncin jednocipu a
podobnych srander.

Nuze, perceptronova sit ucena zpetnym sirenim, tj. minimalizaci
kvadratickeho kriteria chyby vsech vystupu a vsech vzoru, muze mit
libovolny pocet vrstev. Myslim, ze matematicky dokazano, ze na
aproximaci libovolne fce vstupni vektor --> vystupni vektor (ktera
asi musi splnovat nejaka kriteria, ktera si nepamatuji, rovnez nevim,
pro jakou tridu vystupnich fci neuronu to plati, ale klasicky se
pouziva sigmoida 1/(1+exp(-l*potencial))) staci sit s jedinou vnitrni
vrstvou.

Poznamka, ktera muze zacatecniku usetrit mnoho: prvni vrstva site
neni slozena z neuronu, jsou to jenom jakoby "spojene draty" (takze
trivrstva sit ma N vstupu, tj. N uzlu spojenych dratu, M neuronu ve
vnitrni vrstve a O neuronu ve vystupni vrstve -- O vystupu).

Z teorie sice 1 vnitrni vrstva staci, z praxe se zas vi, ze site s
vice vrstvami snaze konverguji ke globalnimu minimu chyby.

Otazka poctu neuronu ve vnitrni vrstve je slozita. Plati zde jista
analogie s radem polynomu pri aproximacich funkci (z merenych dat,
napr.). Kdyz je neuronu malo, sit nema smysl pro detaily a moc
generalizuje, kdyz je neuronu moc, sit je "prechytrala" a chyta se
kdejake blbiny (sumu) jako zakonitosti. V praxi jsem zatim videl jen
site, kde pocet neuronu ucil clovek (a podle vysledku to pak pripadne
zmenil), ovsem publikace se zminuji i o sitich, ktere pridavaji a
ubiraji neurony ze site uprostred uceni dynamicky.

Vase uloha je ale prajednoducha a s velmi krasnou trenovaci mnozinou,
myslim, ze s ni sit nebude mit sebemensi problemy. Sit bude mit tedy
urcite 2 vstupy (x, y) a 6 vystupu (trida1, trida2, ...). Pouzijte 3
vrtsvy (tedy 2 vrstvy samotnych neuronu) a pro zacatek treba 6
vnitrnich, pak muzete ubrat, pokud se vysledne trideni nezhorsi.


Jinak mam dojem, ze na tento druh uloh se pouzivaji i site bez
ucitele (saoucici), typ Kohonen. Sit zacne s nahodnymi vahami a pak
jsou posilovany extremy v klasifikaci. Takze sit sama zacne
zaclenovat vstupy do nektere z mnozin a nakonci se zaradi pouze
jakasi logika, ktera priradi mnozinam samonaucenym mnoziny
pozadovane.


Hodne zdaru,
Marek P.

P.s> Kdyby mel nekdo nejake zajimave zadani pro me, sem s nim, rad se
v teto problematice po case zas trochu povrtam.


On Sat, 1 Jan 2005, Lukas Burda wrote:

> Delat to mam v matlabu, takze problem s vlastnim programovanim
> nemam... s temi vystupy to je jasny. Moje anglictina neni nejlepsi,
> takze jsem pred guglem zkousel jestli se tu nenajde nekdo zbehlej...
> Celkem mi to funguje, ale nevim jak obstojim pred otazkou: proc jste
> tu sit udelal takhle? (pravdiva odpoved: nahodne - asi neobstoji...)
> 
> Lukas
> 
> 
> 
> Saturday, January 1, 2005, 5:07:17 PM, you wrote:
> 
> > Zkuste pohledat (ggogle) BACK PROPAGATION NEURAL NETWORK.
> > Do DELPHI jsem videl hotove knihovny (do matlabu taky).
> 
> > Par utrzku:
> 
> > 1 prstva je distribucni
> > posledni vrstva je vystupni,
> > takze zbyva 1 az 2 vrstvy pro vlasni sit.
> 
> > Necekejte jsne definovanou 0 a jednicku, vetsinou
> > se to resi tak, ze se hleda vystup, ktery ma nejvetsi hodnotu.
> 
> > Vice si jiz nepamatuji, talze google.
> 
> > 	Slavek
> 
> >> Zdravim, mam klasifikovat data do sesti kategorii. Vstupem
> >> jsou dva parametry. Trenovaci mnozina vypada takhle 
> >> http://files.eburda.net/kat.jpg  cervene utvary ZHRUBA 
> >> oznacuji skupiny (zadane to mam samozrejme presne). Pro 
> >> klasifikaci mam pouzit sit se zpetnym sirenim. Nemam v sitich 
> >> vubec prehled. Existuje nejake jednoduche voditko podle 
> >> ktereho pri pohledu na vstupni data zhruba urcim pocet 
> >> vrstev, velikost vrstev a typy prenosovych funkci? Jako 
> >> docela funkcni se jevi sit s sesti vystupy, kde podle 
> >> kategorie je jeden jednickovy a ostatni nulove. Diky za kazde 
> >> nakopnuti.
> >> 
> >> Lukas Burda
> >> 




Další informace o konferenci Hw-list