Neurónové siete sú čiernou skrinkou

7. 5. 2003
Doba čtení: 6 minut

Sdílet

Technológia umelých neurónových sietí je relatívne mladá. Neurónovým sieťam (ďalej len NS) sa venuje tzv. subsymbolická umelá inteligencia alebo tiež výpočtová inteligencia (angl. computational intelligence).

Kým symbolická (klasická) umelá inteligencia sa snaží modelovať kognitívne procesy na najvyššej úrovni (odvodzovanie, plánovanie, vnímanie situácie apod.), subsymbolická umelá inteligencia a špeciálne jej časť nazývaná konekcionizmus používa úplne opačný prístup: modeluje kognitívne procesy na elementárnej úrovni; pri NS sú to procesy prebiehajúce v ľudskom mozgu na úrovni signálov prechádzajúcich medzi neurónmi a na vytváraní a zanikaní spojení medzi nimi.

Definícia

Ak by sme chceli byť trochu viac formálni, môžeme NS definovať ako masívne paralelný výpočtový systém, ktorý má schopnosť uchovávania informácií a umožňuje ich ďalšie spracovanie, pričom napodobňuje ľudský mozog v zbieraní poznatkov v procese učenia a uchovávaní týchto poznatkov s využitím medzineurónových spojení.

Ak sa na uchovávanie údajov v sieti používajú aj iné parametre ako medzineurónové (tzv. synaptické) spojenia (napr. prahové koeficienty alebo parametre prechodových funkcií neurónov), hovoríme o adaptívnych sieťach. Spomínané paralelné procesy prebiehajúce v NS sa v ich programových implementáciách musia simulovať; skutočne paralelné sú zväčša iba pri hardwarovej implementácii NS.

Základným prvkom NS je neurón. Vo všeobecnosti má niekoľko vstupov od iných nerónov alebo z okolitého prostredia a jeden výstup. Operácia, ktorou neurón transformuje svoje vstupy na výstup je spravidla veľmi jednoduchá. Zložitá činnosť NS spočíva v spojení mnohých takýchto jednoduchých elementov do celku.

V prevažnej väčšine sietí sú neuróny usporiadané do vrstiev (angl. layers). Tento prístup značne uľahčuje programovú implementáciu a umožňuje matematický popis činnosti NS. Opäť tu možno nájsť aj podobnosť s ľudským mozgom: „vrstvy“ neurónov sa nachádzajú aj v niektorých jeho častiach. Profesor Kunihiko Fukushima na základe podrobného štúdia ľudského vizuálneho kortexu navrhol NS nazývanú neokognitrón na rozpoznávanie rukou písaných znakov. Usporiadanie neurónov do vrstiev však nie je nevyhnutnou podmienkou, ako uvidíme neskôr pri Hopfieldových NS.

Rozdelenie

Podľa smeru, ktorým sa šíria signály v NS ich rozdeľujeme do dvoch hlavných skupín. Dopredné (angl. feed-forward) NS sú také, v ktorých sa signál šíri iba od vstupných neurónov (neuróny, ktorých vstupmi sú signály z prostredia) cez skryté neuróny (neuróny, ktoré sú vstupmi aj výstupmi spojené s inými neurónmi; tieto sa v niektorých typoch NS nemusia vôbec nachádzať) k výstupným neurónom (neuróny, ktorých výstup vedie do prostredia).

Rekurentné NS sú také, v ktorých sa signál môže pohybovať aj smerom od výstupov ku skrytým častiam alebo dokonca až k vstupom. Je zrejmé, že rekurentné NS sú zložitejšie ako dopredné.

Ako bolo uvedené v definícii, jednou zo základných vlastností NS je schopnosť učiť sa. Podľa toho, na akom princípe je táto schopnosť v NS realizovaná, rozoznávame dva typy učenia sa NS. Kontrolované učenie (angl. supervised learning) je založené na tom, že sieť má pri svojom učení k dispozícii množinu vstupov a k nim požadovaných výstupov.

V procese učenia sa upravujú parametre siete (tzv. váhy spojení) tak, aby sa minimalizoval rozdiel medzi obdržanou odozvou siete na dané vstupy a výstupmi požadovanými pre tieto vstupy. Nekontrolované učenie (angl. unsupervised learning) je také, pri ktorom má sieť k dispozícii iba vstupy; k nim prislúchajúce výstupy sieť generuje na základe vlastností samotných vstupných údajov. Tieto výstupy nie sú vopred známe.

Uvedené delenia vymedzujú štyri základné typy NS. V ďalšom si tieto typy NS popíšeme a uvedieme príklady ich použitia.

Dopredné NS s kontrolovaným učením sú veľmi často používané pre ich ľahkú implementovateľnosť a všestrannosť ich použitia. Používajú sa pri klasifikácii údajov, aproximácii funkcií, predikcii alebo identifikácii a modelovaní neznámych systémov. Najbežnejšie používaným typom doprednej NS s kontrolovaným učením je viacvrstvový perceptrón (MLP – multi-layer perceptron; viď obrázok). Neuróny sú usporiadané v jednej vstupnej, jednej výstupnej a jednej alebo viacerých skrytých vrstvách.

MLP - multi-layer perceptron


Neuronová sieť typu MLP. Neuróny sú usporiadané vo vstupnej vrstve (zelená), skrytých vrstvách (modrá) a výstupnej vrstve (červená). Výstup každého neurónu vstupnej a skrytých vrstiev je privedený na vstup všetkých neurónov nasledujúcej vrstvy; tento typ spojenia sa označuje ako full-konektivita. Topológia takejto siete sa stručne vyjadruje postupnosťou čísel vyjadrujúcich počty neurónov v jednotlivých vrstvách – pre sieť na obrázku je to 2–4–3–1.

Z rekurentných NS s kontrolovaným učením je potrebné spomenúť Hopfieldove NS. Spôsob spojenia neurónov (tzv. topológia siete) v tomto type NS je veľmi zvláštny: každý z neurónov je vstupný a zároveň výstupný (tzv. duálne neuróny) a je spojený so všetkými ostatnými neurónmi. Siete tohto typu sa používajú na realizáciu pamäte. Za zmienku možno stojí aj fakt, že Hopfieldovou NS je možné riešiť aj tzv. problém obchodného cestujúceho (bližšie).

Hopfieldova NS


Topológia Hopfieldovej NS: každý neurón je zároveň vstupný aj výstupný a je spojený so všetkými ostatnými neurónmi. Táto NS nemá skryté neuróny a neuróny tejto siete nie sú organizované vo vrstvách.

Medzi dopredné NS s nekontrolovaným učením patria najmä Kohonenove samoorganizújce sa mapy. Topologicky sú veľmi jednoduché: obsahujú iba jednu vstupnú a jednu výstupnú vrstvu neurónov; skryté neuróny neobsahujú. Samoorganizujúce sa mapy je však možné hierarchicky usporiadať, a vtedy sa stávajú veľmi silným nástrojom divízneho zhlukovania údajov. Ich využiteľnosť môže ďalej vzrásť, ak sú spojené s fuzzy množinami.

Kohonenova NS


Kohonenova NS obsahuje iba vstupnú a výstupnú vrstvu. V hierarchických samoorganizujúcich sa mapách môže byť jeden alebo niekoľko neurónov výstupnej vrstvy zároveň vstupnými neurónmi inej samoorganizujúcej sa mapy.

Posledným typom NS sú rekurentné siete s nekontrolovaným učením. Topológia spojenia neurónov a spôsob učenia týchto sietí je spravidla založený na Adaptive Resonance Theory (ART). Tento spôsob učenia umožňuje naučiť sieť správne reagovať na nové vzory bez toho, aby „zabudla“ vedomosti naučené v minulosti (pri iných typoch sietí je zvyčajne potrebné sieť znova učiť predchádzajúce vzory spolu s novými).

Záver

Hlavnou výhodou neurónových sietí je schopnosť učiť sa. Sú modelom kybernetickej čiernej skrinky, ktorá dokáže dávať na vstupné signály adekvátne výstupy bez ohľadu na jej vnútornú štruktúru.

Pomocou NS je možné popísať aj zložité vysokodimenzionálne dáta, ktoré nie je možné popísať jednoduchými pravidlami alebo zákonitosti platiace v množine týchto dát nie je ľahké objaviť napr. štatistickými metódami.

Modelovanie systémov pomocou NS je vysoko abstraktné: tá istá sieť môže byť bez zmeny štruktúry modelom pre rôzne systémy, ak sa na učenie tejto siete použijú rôzne údaje. Táto vysoká miera abstrakcie je na druhej strane aj nevýhodou NS, pretože znalosti obsiahnuté v naučenej NS sú rozptýlené v jej parametroch – váhach medzineurónových spojení – a nie je možné ich zo siete získať v explicitnom tvare, ako je tomu napr. pri expertných systémoch, v ktorých sú znalosti reprezentované pomocou IF-THEN pravidiel zrozumiteľných pre človeka. Tento handicap NS sa však darí eliminovať pomocou kombinácie NS a iných systémov, napr. fuzzy regulátorov.
Čitateľom, ktorí majú záujem dozvedieť sa o NS niečo viac, môžem odporučiť napr. adresu www.ai-cit.sk/sk/publi­kacie/knihy.html.

neurony

bitcoin_skoleni


Súčasná výpočtová technika je schopná simulovať neurón s mnohonásobne rýchlejšou odozvou ako dosahujú neuróny v ľudskom mozgu. Nie je však zatiaľ možné umelo vytvoriť tak masívne paralelný systém, ako je náš mozog. Keby sme každú nervovú bunku v ľudskom mozgu reprezentovali v umelej neurónovej sieti jediným bajtom, potrebovali by sme približne 1 TB pamäte. Pritom počet nervových spojení medzi neurónmi v mozgu je približne o štyri rády väčší ako počet neurónov.

Zkrácená verze tohoto článku vyšla v Computerworldu 15/2003.

Autor článku