Neuralis halozatok

Huszti Andras kyrk at villamvadasz.hu
Wed Jan 10 11:21:23 CET 2007


Hali!

Multkor irtam ide a listara a fenti temaban. Sajnos nem sok valasz
erkezett. Minden esetre kutattam a googlival es sikerult par programot
talalnom a temaval kapcsolatban, illetve par igen jo oldalt.

Miutan elolvastam ezeket probaltam mukodo kodokat letolteni. Delphi ala
kerestem fokent de nem talaltam sokat. Egy helyen de ott is csak
foszlanyokat amivel ismertette egy ilyen nerualis halozat gyakorlati
megvalositasi lehetosegeit es mukodeset.

Eddig a tema inkabb programozas es nem is tartozna a listara. De en
fejembe vettem, hogy jo lenne egy neuralis halozatot PIC-be
implementalni. Mivel oriasi szamitasi teljesitmeny szukseges ehhez, csak
egy igen picire gondoltam.

Elso nekifutaskent egy Feed Forward Neural Network(2-2-1;
input-hidden-output) nevezetu halozatot akartam implementalni Back
Propagation tanulo algoritmussal. (A neuralis halozato alapjaiba most
nem mennek bele, akit erdekel ugyis elolvassa akit meg nem nem). C-ben
irtam a programot, 18F4550-esre. Szimulator alatt teszteltem. Egy darab
tanulo ciklus 1.3 masodpercig tartott a szimulatorban talalhato stopper
funkcio mellet (pontossag keedvert a PIC-en 1.3s alatt futott volna le).
Maga a halozat szamolasa ennel joval gyorsabban ment volna. Sajnos
kisebb nagyobb hibak (fokent tapasztalatlansag a temaval kapcsolatban es
matematikai hibak) miatt a halozat nem volt teljesen mukodokepes. Sima
egyszeru XOR muveletet nem nagyon tudott rendesen megtanulni.

Konkluzio az egeszbol, hogy a dolog megvalosithato PIC-en, ha bar
limitaltan. Egy modositott halozat kepes lenne egyszeru alakok
felismeresere. Esetleg alakok kovetesere, megfelelo hardwerezettseg
mellet.

Nem tudtam nyugodni, ezert BorlandC-alatt probaltam meg osszehozni
valamit. 2-3 nap nyuglodes utan sem sikerult XOR muveletet megtanitanom
neki rendesen. Aztan feladtam majd ujra probaltam immarom Delphi alatt.
Tovabbi olvasgatas utan rajottem, hogy egyszerubb dologgal kell
kezdenem. Igy hat probaltam ravenni a leprogramozott neuralis
halozatomat, hogy egy nagyobb kepben megtalalja a kiskepet.
Megtanitottam neki a kis kepet majd a nagy kepen bizonyos pontossaggal
megtalalta. Mindezt tobbszori nekifutas utan sikerult elernem. Igy sem
halalbiztos a dolog. Gyakran belebotlok a tultanulas problemajaba. A
nagykepben a kiskep feher alapon van. Nincsenek rajta zavaro tenyezok.
Szoval alakul a dolog. Vajon hol lehet kapni errol konyvet? Bar
gyanitom, hogy ennek a matematikaja van annyira bonyolult, hogy en azzal
nem akarok foglalkozni. Emeszheto modon meg szerintem keves helyen van
rola leiras.

Konkluzio, hogy az elobb szerzett tapasztalatokbol talan mar
sikerulhetne PIC-re egy neuralis halozatot osszehozni. Mivel egy kis kep
felismeresehez keves (1db) neuronra van szukseg de sok bemenettel (x*y
ami 32*32-es kep eseten mar eleg sok...) meg az esetleg megvalosithato
kategoriaba sorolom a dologt.

Kerdes, hogy mi ertelme van az egesznek... ? :)

Vegulis az az 5letem tamadt, hogy fogok ket szervot, ami egy lezer
pointert mozgat es egy webkamerat. Kijelolok egy celpontot es az
megtanulja a halozat es koveti a lezerrel :) Innen a 8.-rol vicces jatek
lesz ahogy futkosnak az emberek az utcan a lezer pointer elol :) He-he
:)



More information about the Elektro mailing list