Cvičení 4. a 5. Klasifikace a aproximace umělými neuronovými sítěmi Program (NetVisualiser) a data jsou k dispozici na IS MU (studijní materiály předmětu Hybridní systémy strojového učení). Program si uložte do svého pracovního adresáře. Trénovací (i testovací) data lze vytvářet přímo v daném programu NetVisualiser. Postup cvičení 4 a 5: Cvičení je zaměřeno na samostatné pokusy, které mají demonstrovat vlastnosti perceptronů a sítí pro různé úlohy a různá data. Pro hlubší aplikační zkoumání vlastností a parametrů umělých neuronových sítí pro klasifikaci a aproximaci bude použit program NetVisualiser (který obsahuje několik typů umělých neuronových sítí).: Program pracuje pod MS Windows. Součástí programu, kterýma české ovládání, je i nápověda ve formátu html, zobrazitelná také přímo z programu NetVisualiser (menu Nápověda). Prostudujte pomocí nápovědy možnosti a vlastnosti simulátoru umělých neuronových sítí Net Visualiser a vyzkoušejte si postupně vlastnosti j ednotlivých perceptronů i sítí pro různé topologie a různé parametry (data, parametry i topologie si zvolte sami tak, abyste prozkoumali různé možnosti—základem jsou informace z přednášek). Pro experimenty volte jak jednoduché perceptrony (lineární a nelineární, s výstupem 1/0, -1/+1, lineárním), tak i back-propagation aRBFsíť s různými typy výstupních jednotek (menu Síť->Nová; po zvolení parametrů je zapotřebí cvaknout myší na tlačítko Nastavit). Data pro trénování, resp. testování, lze vytvořit pomocí menu Data (podmenu Generovat umožňuje vytvořit např. sinusovku z určeného počtu bodů pro aproximaci, apod.). Také je možné pomocí myši vytvořit body libovolné aproximované funce (v rovině obrazovky) nebo body dvou libovolně oddělených tříd (modré a červené body). Data lze rovněž zcela vymazat, přidávat postupně další, apod., viz Nápověda programu. Po spuštění programu lze z menu zadat novou síť včetně jejích parametrů (pro klasifikaci budou uvažovány dva vstupy a jeden výstup, pro aproximaci jeden vstup a jeden výstup, a dále lze zadávat architekturu sítě ve formě počtu skrytých vrstev a počtu neuronů ve skrytých vrstvách). Vhodné je také vyvolat okno se zobrazením chybové funkce trénování a okno s parametry sítě (vpravo na řádce ikon, nebo z menu Zobrazit). Zatržením parametrů v okně Parametry sítě lze nastavit požadované vlastnosti (detailyjsou popsány v nápovědě, případně v uvedené diplomové práci1). Je dobré si zvolit určitá trénovací data a pak měnit parametry sítí, sledovat, zda a jak rychle dochází k natrénování, pro které typy sítí (jednoduché perceptrony, BP, RBF, vliv linearity a nelinearity...). Důležité: v okně Parametry sítě vždy před spuštěním trénování zadejte požadované hodnoty učící konstanty a (pro BP) momenta, protože program automaticky nastavuje nepříliš vhodné hodnoty (drobná chyba). Po zadání konkrétních hodnot je nutno myší cvaknout na tlačítko Použít. Posouvátky lze měnit hodnoty trénovacích konstant i během učení, např. s poklesem chyby učení zmenšovat učící konstantu, resp. zjistit, k čemu dojde při malé chybě sítě a zvětšení konstanty. Aproximaci lze začít zkoumat např. na zabudovaném generátoru funkce sinus (lze zobrazit pro zvolený počet generovaných bodů jak křivku, tak i jenom body—modře—a pak sledovat, jak se aproximační červená křivka postupně blíží (nebo neblíží) požadovanému tvaru aproximované funkce. Také si vyzkoušejte klasifikace s lineární a nelineární oddělovací hranicí, obě třídy v rovině se mohou i částečně překrývat, apod. Zaznamenejte si souhrn výsledků a pokuste se zobecnit, jak se za jakých podmínek sítě učí (typ sítě, architektura, parametry, typ dat, apod.). Příklad klasifikace dat (po ukončení klasifikace jsou obě třídy správně odděleny, viz obrázek—červené body vně, modré uvnitř oválné hranice): Program byl vytvořen v r. 2002 jako část diplomové práce bývalého studenta FI MU Mgr. Petra Marťana. Pro případné bližší zájemce: celá diplomová práce včetně software je (výhradně pro akademické účely v rámci FI) rovněž k dispozici na URL pana Marťana: http : //neuralnets.czweb.org