Skip to content


«
»

Simulace umělých neuronových sítí s programem NeuroSolutions

Tento článek i samotný program sice neosloví většinu uživatelů, naopak může oslovit studenty vysokých škol informatiky a všechny nadšence vědy, zejména tzv. umělých neuronových sítí, které spadají pod umělou inteligenci. Ta je obecně velmi progresivně se rozvíjející obor propojující spoustu dalších věd. Aplikace NeuroSolution je jedním ze zástupců softwarových simulátorů UNS, nabízí opravdu bohaté možnosti a dokonce i plug-in do Microsoft Excelu.

UNS jsou současným trendem pro nejrůznější aplikace, spadající do oblasti umělé inteligence. Mají za cíl co nejlépe se přiblížit skutečné biologické neuronové síti v mozku. Tyto sítě se snaží alespoň vzdáleným způsobem pracovat jako biologická neuronová síť v mozku a simulovat tak fyzikální a chemické procesy v mozku. Je nutno podoktnout, že tyto modely jsou stále velmi vzdáleny od té skutečné sítě v mozku, která obsahuje triliony neuronů. UNS je abstraktní výpočetní model, jehož základním prvkem jsou tzv. umělé neurony. A tyto umělé neurony, jednoduché výpočetní jednotky se propojují do sítí dle různých pravidel a tak vznikají UNS. Umělý neuron příjímá vstupy od jiných a signál opět šíří různými algoritmy dále k ostatním, podobně jako v biologické síti fungují synapse.

UNS je dynamický systém, jenž se vyvíjí v čase a jeho práce se odvíjí od daného úkolu. V současnosti se UNS používají k mnohým praktickým aplikacím v oblasti rozpoznání obrazu, predikce a shlukování dat, v medicíně, ke klasifikaci dat, vícerozměrné analýze a dalších. Základní motivace je v biologii, to je nutné si uvědomit. Nebudeme zde rozebírat poměrně složitou teorii UNS, stačí vědět, že UNS prostě mají základní cíl simulovat biologickou neuronovou síť v mozku pomocí matematických metod učení.

Zatím nemáme k dispozici neuropočítač, který by efektivně simuloval neuronové sítě a místo s klasickým procesorem pracoval s neuroprocesorem. I když existují nějaké prototypy, stále se musíme spokojit se softwarovými simulátory UNS. A právě jedním z nich je propracovaný, leč placený, NeuroSolutions. Je to graficky orientované vývojové prostředí pro simulace UNS různých typů. V podstatě můžeme UNS tvořit několika cestami. Buď si sami navrhneme celou síť, nebo využijeme jeden z průvodců NeuralExpert či NeuralBuilder. NeuralExpert sestavuje síť dle řešeného problému a NeuralBuilder dle typu sítě. Podívejme se nyní na základní obrazovku NeuroSolutions s prázdnou plochou, na které se graficky simuluje síť:

Základní prostředí NeuroSolutions s prázdnou plochou k sestavování UNS

Základní prostředí NeuroSolutions s prázdnou plochou k sestavování UNS

Na panelu nástrojů jsou tlačítka pro oba zmíněné průvodce. Můžeme začít síť postupně tvořit od začátku přidáváním jednotlivých prvků (neurony, spoje, vstupy, vrstvy, atd.) či použít již zmíněné průvodce nebo využít některé přednastavené makra sítí, například jednu z nejužívanějších sítí MLP (Multi-Layer Perceptron) neboli vícevrstvá síť. Je nejužívanějším typem UNS spolu s učením backpropagation, které je založeno na srovnávání chyby vstupu sítě a požadovaného výstupu a minimalizace této chyby. V NeuroSolutions vypadá základní model MLP takto:

Základní model MLP v NeuroSolutions

Základní model MLP v NeuroSolutions

Tento grafický model je modelem UNS s potřebnými parametry. Grafy v neuronech (oranžové prvky) jsou aktivační funkce neuronu, sloužící k aktivaci neuronu dle různých pravidel. Takových funkcí existuje mnoho. Další prvky sítě jsou znázorněny formou různých ikonek – vstupy, výstupy, učení, zdrojová data, atd. Každý prvek je možno upravovat pomocí Inspectoru, např. úpravu vstupu, který je dán ASCII souborem:

Úprava vlastností jednotlivých prvků modelu UNS

Úprava vlastností jednotlivých prvků modelu UNS

Podívejme se nyní ještě na zmíněné průvodce Neural Builder

NeuralBuilder sestavuje síť podle typu sítě

NeuralBuilder sestavuje síť podle typu sítě

a NeuralExpert…

NeuralExpert sestavuje UNS dle řešeného problému

NeuralExpert sestavuje UNS dle řešeného problému

NeuralBuilder obsahuje mnoho typů sítí, s učením s učitelem i bez učitele. Učení s učitelem znamená, že pro každý vstup známe odpovídající výstup a chceme tak minimalizovat chybu (MLP a backpropagation, PCA a další sítě) a bez učitele znamená, že neznáme výstupy, ty si UNS vytváří sama – praktickou aplikací jsou SOM (Self-Organizing Maps) sítě například pro problém clusteringu dat (shlukování do tříd), predikce či klasifikace. Tedy, máme n vstupu hromadu dat a z nich chceme vytvořit nějaké třídy či je jinak klasifikovat. Nebo pomocí predikce můžeme předvídat vývoj časových řad a jiných aplikací. K tomu všemu a mnohem více v praxi slouží UNS, které se snaží simulovat naše myšlení pomocí matematických algoritmů. Například po výběru Clustering v NeuralExpert budeme dotázáni na vstupní soubor s daty:

Nahrání vstupního souboru s daty v NeuralExpert

Nahrání vstupního souboru s daty v NeuralExpert

Jak vidíme z obrázku, nabízí se pouze textové typy dat. Tedy, vstupní i výstupní data jsou textová. Přesto dokáže NeuroSolutions omezeně pracovat i s obrázky, např. v síti PCA, resp. PCNN (Principal Component Analysis, Principal Component Neural Network), jak je vidět z následujícího obrázku, kdy na vstupu je obraz (ikonka lodičky):

Obrazový vstup i výstup v síti PCNN

Obrazový vstup i výstup v síti PCNN

Tento model je hybridním typem sítě s učením s učitelem a bez učitele. Ve fázi bez učitele se aplikuje Sangerovo učící pravidlo (dle ikonky Sang), na vstupu i výstupu je obraz ve formě matice, tedy i obrazu pixelů.Metoda PCA je založena na statistice a maticovém počtu. V obecnosti se PCA dá definovat jako metoda sloužící pro redukci mnohodimenzionálních dat do méně rozměrů. Její užití je velmi široké, jednou z oblastí, kde se užívá, jsou právě umělé neuronové sítě a zpracování obrazu. V této oblasti se jedná o klasifikaci, tedy extrakci hlavních komponent jako klasifikačních příznaků. Čili se tato UNS používá ke klasifikaci a rozpoznání charakteristických příznaků obrazu.

Použití NeuroSolutions je velmi široké, nabízí hodně druhů sítí dle řešeného problému i rozličné modely sítí dle učení a dalších parametrů. Vše je graficky vizualizováno, což pomáhá k daleko lepší představě o funkčnosti sítě a můžeme ihned veškeré parametry sítě měnit. NeuroSolutions je velmi propracovaným SW simulátorem UNS. Skrývá však ještě další možnosti. Jednou z nejlepších cest, jak pochopit principy jednotlivých sítí a jejich funkčnosti, je podívat na demo ukázky se skutečnými již připravenými funkčními modely. Navíc je možno tyto modely měnit dle potřeby. Můžeme tak snadno vyjít z existujícího modelu a upravovat vlastnosti. Tyto ukázky jsou k dispozici z nabídky HelpDemos.

Ukázky a principy jednotlivých modelů UNS

Ukázky a principy jednotlivých modelů UNS

Tyto praktické ukázky UNS na praktických problémech vysvětlí a usnadní pochopení principů jednotlivých modelů UNS. Klikneme-li na odkaz More Demos, zpřístupní se další modely sítí. Podívejme se na praktickou ukázku SOM sítě, již zmíněného příkladu UNS s učením bez učitele ke klasifikaci dat. Zmíněný příklad je ilustrován na obrázku a je možno měnit počet neuronů a vzdálenost sousednosti, což znamená, kolik neuronů je považováno za sousední. SOM sítě jsou topologicky vyjádřeny ve 2-D rovině s různým uspořádáním.

Praktické demo SOM sítě

Praktické demo SOM sítě

Takto si můžeme v praxi síť vyzkoušet a samozřejmě ji použít pro řešený problém. Další možností je použití nápovědy k programu. Ta skýtá jak nápovědu k NeuroSolutions, tak také průvodce teorií UNS, viz obrázek níže.

V nápovědě k programu najdeme také teorii UNS

V nápovědě k programu najdeme také teorii UNS

NeuroSolution nabízí více forem nápovědy – Getting Started (stručný úvod k NeuroSolutions) a Interactive Book, což je kniha o jednotlivých modelech UNS a praktickém použití. Kniha je placená, ale v rámci nápovědy je k dispozici celá první kapitola Data Fitting and Linear Models, viz níže ukázka křivky učení k minimalizaci chyby v rámci výkladu.

Výklad křivky učení v Interactive Book

Výklad křivky učení v Interactive Book

Samozřejmě že pochopení výkladu vyžaduje poměrně dobrou znalost angličtiny, ale vzhledem k zaměření celého programu to není zas takovou překážkou. Komu by ani tato nápověda nestačila, na webu výrobce programu, společnosti NeuroDimension, je k dispozici více než 1000 stranová kniha v PDF formátu zahrnující teorii i praxi k NeuroSolutions.

Celkově je NeuroSolutions opravdu komplexním programem pro simulace UNS, přesto že mu chybí například lepší podpora obrazových vstupů. Obsahuje spoustu modelů UNS, průvodce tvorbou sítí, možnosti grafické vizualizace a spoustu dalšího. Propracovaný systém nápovědy, ukázek a interaktivní knihy umožní lépe pochopit teoretickou i praktickou rovinu UNS v souvislostech a naučit se efektivně používat UNS k daným problémům.

V rámci NeuroSolutions dostaneme také plug-in do aplikace Microsoft Excel, který funguje od verze 2007. Je určen k analýze dat v Excelu pomocí UNS, což se hodí, máte-li excelovská data a nemusíte je tak převádět do TXT či CSV souborů.

NeuroSolutions for Excel nabízí mnoho nástrojů k analýze dat s tvorbou UNS

NeuroSolutions for Excel nabízí mnoho nástrojů k analýze dat s tvorbou UNS

Doplněk se načte jako plug-in (doplněk) do aplikace MS Excel a slouží k pokročilé analýze dat, clusteringu a samozřejmě tvorbě UNS, které opět budou vytvořeny v prostředí NeuroSolutions. Výhodou doplňku je přímá práce s daty v Excelu bez nutnosti jejich načítání externě.

Pro extrémně náročné výpočty lze dokoupit doplněk NeuroSolutions CUDA využívající technologii NVidia CUDA pro plnou podporu akcelerace pomcí GPU a dalších výpočetně náročných funkcí. Tento doplněk je součástí vyšších verzí NeuroSolutions. Další volitelnou součástí je NeuroSolutions for MATLAB. Jedná se o propojení výpočetního prostředí MATLAB a NeuroSolutions. Zastupuje a doplňuje možnosti Neural Network Toolbox pro MATLAB a nabízí 16 modelů UNS a 6 učících algoritmů pro praktické použití v prostředí MATLAB.

NeuroSolutions si můžeme stáhnout jako trial verzi na 90 dní po registraci e-mailu. Tato verze má některá omezení, zejména na velikost sítí a trénovací data. Přesto i v této verzi lze efektivně využít všech funkcí programu. Více o programu NeuroSolutions včetně verzí, licencí, popisy jednotlivých součástí a knihy v PDF ke stažení je k dispozici na webu výrobce NeuroDimension.

Rubrika: Návody, Ostatní, Počítačové programy, Představení.

0 reakcí

Mějte přehled o nových komentářích, přihlašte se k odběru RSS kanálu komentářů tohoto příspěvku.

Některé HTML je povoleno

(vyžadováno)

(vyžadováno, nebude nikde zobrazeno)