Umělá neuronová síť (ANN) nebo obyčejně jen neuronová síť (NN) je propojená skupina umělých neuronů, která používá matematický model nebo výpočetní model pro zpracování informací založený na konektionistickém přístupu k výpočtům. Ve většině případů je ANN adaptivní systém, který mění svou strukturu na základě externích nebo interních informací, které proudí sítí.
(Termín „neuronová síť“ může znamenat i systémy biologického typu.)
Praktičtěji řečeno, neuronové sítě jsou nelineární nástroje pro modelování statistických dat. Mohou být použity k modelování složitých vztahů mezi vstupy a výstupy nebo k hledání vzorů v datech.
Neuronová síť je propojená skupina uzlů, podobná rozsáhlé síti neuronů v lidském mozku.
Složitější neuronové sítě se často používají v paralelním distribuovaném zpracování.
Mezi výzkumníky neexistuje přesná dohodnutá definice toho, co je neuronová síť, ale většina by souhlasila s tím, že zahrnuje síť jednoduchých zpracovatelských prvků (neuronů), které mohou vykazovat komplexní globální chování, určené spojeními mezi zpracovatelskými prvky a parametry prvku. Původní inspirace pro tuto techniku byla zkoumáním centrálního nervového systému a neuronů (a jejich axonů, dendritů a synapsí), které tvoří jeden z jeho nejvýznamnějších prvků zpracování informací (viz Neurověda). V modelu neuronové sítě jsou jednoduché uzly (nazývané různě „neurony“, „neurody“, „PEs“ („zpracovatelské prvky“) nebo „jednotky“) spojeny do sítě uzlů – odtud termín „neuronová síť“. Zatímco neuronová síť nemusí být sama o sobě adaptivní, její praktické využití přichází s algoritmy navrženými tak, aby měnily sílu (váhy) spojení v síti a vytvářely požadovaný tok signálu.
Tyto sítě jsou také podobné biologickým neuronovým sítím v tom smyslu, že funkce jsou vykonávány společně a paralelně jednotkami, spíše než že by existovalo jasné vymezení dílčích úkolů, kterým jsou přiřazeny různé jednotky (viz také konektionismus). V současné době se termín ANN většinou vztahuje k modelům neuronových sítí používaným ve statistice a umělé inteligenci. Modely neuronových sítí navržené s ohledem na emulaci centrálního nervového systému (CNS) jsou předmětem teoretické neurovědy.
V moderních softwarových implementacích umělých neuronových sítí byl přístup inspirovaný biologií víceméně opuštěn pro praktičtější přístup založený na statistice a zpracování signálů. V některých z těchto systémů jsou neuronové sítě nebo části neuronových sítí (jako jsou umělé neurony) používány jako komponenty ve větších systémech, které kombinují adaptivní i nepřizpůsobivé prvky. Obecnější přístup takových adaptivních systémů je sice vhodnější pro řešení problémů v reálném světě, ale daleko méně souvisí s tradičními konektionistickými modely umělé inteligence. Co však mají společné, je princip nelineárního, distribuovaného, paralelního a lokálního zpracování a přizpůsobení.
Modely neuronových sítí v umělé inteligenci se obvykle označují jako umělé neuronové sítě (ANN); jedná se v podstatě o jednoduché matematické modely definující funkci . Každý typ modelu ANN odpovídá třídě takových funkcí.
Síť v umělé neuronové síti
Slovo síť v termínu ‚umělá neuronová síť‘ vzniká proto, že funkce je definována jako kompozice jiných funkcí , které mohou být dále definovány jako kompozice jiných funkcí. To může být příhodně reprezentováno jako síťová struktura, s šipkami znázorňujícími závislosti mezi proměnnými. Široce používaným typem kompozice je nelineární vážený součet, kde , Kde je nějaká předdefinovaná funkce, jako je hyperbolický tangens. Pro níže uvedené bude výhodné označovat kolekci funkcí jednoduše jako vektor .
Toto číslo znázorňuje takové rozložení , Se závislostí mezi proměnnými označené šipkami. Ty mohou být interpretovány dvěma způsoby.
Prvním pohledem je funkční pohled: vstup je transformován do 3-rozměrného vektoru , který je pak transformován do 2-rozměrného vektoru , který je nakonec transformován do . S tímto pohledem se nejčastěji setkáváme v souvislosti s optimalizací.
Druhým pohledem je pravděpodobnostní pohled: náhodná veličina závisí na náhodné veličině , Která závisí na , Která závisí na náhodné veličině . S tímto pohledem se nejčastěji setkáváme v kontextu grafických modelů.
Oba pohledy jsou do značné míry rovnocenné. V obou případech jsou pro tuto konkrétní síťovou architekturu komponenty jednotlivých vrstev na sobě nezávislé (např. komponenty jsou na sobě nezávislé vzhledem k jejich vstupu ). To přirozeně umožňuje určitý stupeň paralelismu v implementaci.
Opakující se graf závislosti ANN
Sítě, jako je ta předchozí, se běžně nazývají feedforward, protože jejich graf je řízený acyklický graf. Sítě s cykly se běžně nazývají recurrent. Takové sítě se běžně zobrazují způsobem znázorněným nahoře na obrázku výše, kde je znázorněno, že jsou závislé samy na sobě. Existuje však implikovaná časová závislost, která není znázorněna. V praxi to ve skutečnosti znamená, že hodnota v určitém okamžiku závisí na hodnotách v nule nebo v jednom či více jiných bodech v čase. Grafický model v dolní části obrázku ilustruje případ: hodnota v čase závisí pouze na jeho poslední hodnotě. Modely jako tyto, které nemají v budoucnosti žádné závislosti, se nazývají kauzální modely.
Jakkoliv mohou být takové funkce samy o sobě zajímavé, největší zájem o neuronové sítě vzbudila možnost učení, což v praxi znamená následující:
Vzhledem k tomu, konkrétní úkol k řešení, a třídy funkcí, učení znamená použití sady pozorování, aby se zjistilo, který řeší úkol v optimálním smyslu.
To znamená definovat funkci nákladů tak, aby pro optimální řešení , (žádné řešení má náklady nižší než náklady optimálního řešení).
Nákladová funkce je důležitý pojem v učení, protože je měřítkem toho, jak daleko jsme od optimálního řešení problému, který chceme vyřešit. Učící se algoritmy hledají v prostoru řešení, aby našly funkci, která má nejmenší možné náklady.
U aplikací, kde je řešení závislé na nějakých datech, musí být náklady nutně funkcí pozorování, jinak bychom nemodelovali nic, co souvisí s daty. Často je definována jako statistika, ke které lze provádět pouze aproximace. Jako jednoduchý příklad si vezměme problém nalezení modelu, který minimalizuje , pro datové páry čerpané z nějakého rozložení . V praktických situacích bychom měli pouze vzorky z a tedy, pro výše uvedený příklad, bychom pouze minimalizovali . Tedy, náklady jsou minimalizovány přes vzorek dat spíše než skutečné rozložení dat.
Když je třeba použít nějakou formu on-line učení, kde jsou náklady částečně minimalizovány s tím, jak je vidět každý nový příklad. Zatímco on-line učení se často používá, když je pevně dané, je nejužitečnější v případě, kdy se rozložení mění pomalu v průběhu času. V metodách neuronových sítí se některá forma on-line učení často používá také pro konečné datové soubory.
I když je možné libovolně definovat nějakou ad hoc nákladovou funkci, často se konkrétní náklad použije buď proto, že má žádoucí vlastnosti (například konvexnost), nebo proto, že přirozeně vyplývá z konkrétní formulace problému (tj. V pravděpodobnostní formulaci lze použít zadní pravděpodobnost modelu jako inverzní náklad). V konečném důsledku bude nákladová funkce záviset na úkolu, který chceme provést. Tři hlavní kategorie výukových úkolů jsou uvedeny níže.
Existují tři hlavní vzdělávací paradigmata, z nichž každé odpovídá určitému abstraktnímu učebnímu úkolu. Jedná se o učení pod dohledem, učení bez dohledu a posilování. Obvykle lze v kterémkoli z těchto úkolů použít libovolný typ síťové architektury.
V učení pod dohledem dostáváme sadu ukázkových dvojic a cílem je najít funkci f v povolené třídě funkcí, která odpovídá příkladům. Jinými slovy, chceme odvodit mapování implikované daty; nákladová funkce souvisí s nesouladem mezi naším mapováním a daty a implicitně obsahuje předchozí znalosti o problémové doméně.
Běžně používaným nákladem je střední kvadratická chyba, která se snaží minimalizovat průměrnou chybu mezi výstupem sítě, f(x), a cílovou hodnotou y nad všemi příkladovými páry. Když se někdo snaží minimalizovat tyto náklady pomocí gradientního sestupu pro třídu neuronových sítí zvaných Multi-Layer Perceptrons, získá známý algoritmus backpropagation pro trénink neuronových sítí.
Úkoly, které spadají do paradigmatu učení pod dohledem, jsou rozpoznávání vzorů (známé také jako klasifikace) a regrese (známé také jako aproximace funkcí). Paradigma učení pod dohledem je také použitelné pro sekvenční data (např. pro rozpoznávání řeči a gest).
V bez dozoru učení jsme dostali některé údaje , a funkce nákladů, které mají být minimalizovány může být jakákoli funkce dat a výstupem sítě, .
Nákladová funkce je závislá na úkolu (co se snažíme modelovat) a našich a priori předpokladech (implicitní vlastnosti našeho modelu, jeho parametry a sledované proměnné).
Jako triviální příklad si vezměme model , kde je konstanta a náklady . Minimalizace těchto nákladů nám dá hodnotu, která se rovná průměru dat. Nákladová funkce může být mnohem složitější. Její forma závisí na aplikaci: Například v kompresi by to mohlo souviset se vzájemnou informací mezi x a y. Ve statistickém modelování by to mohlo souviset s posteriorní pravděpodobností daného modelu vzhledem k datům. (Všimněte si, že v obou těchto příkladech by tyto veličiny byly spíše maximalizovány než minimalizovány)
Úkoly, které spadají do paradigmatu nekontrolovaného učení, jsou obecně problémy s odhadem; aplikace zahrnují shlukování, odhad statistického rozdělení, kompresi a filtrování.
Při výuce výztuží se data obvykle neuvádějí, ale generují se interakcí agenta s prostředím. V každém okamžiku provede agent akci a prostředí generuje pozorování a okamžité náklady , podle nějaké (obvykle neznámé) dynamiky. Cílem je objevit politiku pro výběr akcí, která minimalizuje nějakou míru dlouhodobých nákladů, tj. očekávaných kumulativních nákladů. Dynamika prostředí a dlouhodobé náklady pro každou politiku jsou obvykle neznámé, ale lze je odhadnout.
Formálněji je prostředí modelováno jako Markovův rozhodovací proces (MDP) se stavy a akcemi s následujícími rozloženími pravděpodobnosti: rozložením okamžitých nákladů , rozložením pozorování a přechodem , zatímco politika je definována jako podmíněné rozložení akcí daných pozorováním. Dohromady obě definují Markovův řetězec (MC). Cílem je objevit politiku, která minimalizuje náklady, tj. MC, u kterého jsou náklady minimální.
ANN jsou často používány při výuce výztuží jako součást celkového algoritmu.
Úkoly, které spadají do paradigmatu posilovacího učení, jsou problémy s ovládáním, hry a další sekvenční rozhodovací úkoly.
Výcvik modelu neuronové sítě v podstatě znamená výběr jednoho modelu ze sady povolených modelů (nebo v bayesovském rámci určení rozložení přes sadu povolených modelů), který minimalizuje nákladové kritérium. Pro výcvik modelů neuronové sítě je k dispozici mnoho algoritmů; většinu z nich lze považovat za přímočarou aplikaci teorie optimalizace a statistického odhadu.
Většina algoritmů používaných při tréninku umělých neuronových sítí využívá nějakou formu gradientového sestupu. Toho se dosáhne jednoduchým odvozením nákladové funkce vzhledem k parametrům sítě a následnou změnou těchto parametrů ve směru souvisejícím s gradientem.
Využívání umělých neuronových sítí
Snad největší výhodou ANN je jejich schopnost být používán jako mechanismus pro přibližování libovolných funkcí, který se „učí“ z pozorovaných dat. Jejich používání však není tak jednoduché a zásadní je poměrně dobré pochopení základní teorie.
Při správné implementaci lze ANN přirozeně používat v online učení a velkých datasetových aplikacích. Jejich jednoduchá implementace a existence převážně lokálních závislostí vystavených ve struktuře umožňuje rychlé, paralelní implementace v hardwaru.
Užitečnost umělých modelů neuronových sítí spočívá v tom, že mohou být použity k odvození funkce z pozorování. To je zvláště užitečné v aplikacích, kde složitost dat nebo úlohy činí návrh takové funkce ručně nepraktickým.
Oblasti použití zahrnují identifikaci a ovládání systému (ovládání vozidla, řízení procesů), hraní her a rozhodování (vrhcáby, šachy, závody), rozpoznávání vzorů (radarové systémy, identifikace obličeje, rozpoznávání objektů a další), rozpoznávání sekvencí (gesto, řeč, ručně psaný text), lékařskou diagnózu, finanční aplikace, dolování dat (nebo objevování znalostí v databázích, „KDD“), vizualizaci a filtrování e-mailového spamu.
Hlavní článek: Software pro neuronové sítě
Software pro neuronové sítě se používá k simulaci, výzkumu, vývoji a aplikaci umělých neuronových sítí, biologických neuronových sítí a v některých případech širšího spektra adaptivních systémů.
Nervová síť Feedforward
Směrem ke vstupním neuronovým sítím je první a pravděpodobně nejjednodušší typ umělých neuronových sítí. V této síti se informace pohybuje pouze jedním směrem, dopředu, od vstupních uzlů, přes skryté uzly (pokud existují) a k výstupním uzlům. V síti nejsou žádné cykly nebo smyčky.
Nejstarší druh neuronové sítě je jednovrstvá perceptronová síť, která se skládá z jedné vrstvy výstupních uzlů; vstupy jsou přiváděny přímo k výstupům prostřednictvím řady závaží. Tímto způsobem ji lze považovat za nejjednodušší druh feed-forward sítě. Součet součinů závaží a vstupů se vypočítá v každém uzlu, a pokud je hodnota nad nějakou prahovou hodnotou (typicky 0), neuron vystřelí a převezme aktivovanou hodnotu (typicky 1); jinak převezme deaktivovanou hodnotu (typicky -1). Neurony s tímto druhem aktivační funkce se také nazývají McCulloch-Pittsovy neurony nebo prahové neurony. V literatuře termín perceptron často označuje sítě sestávající pouze z jedné z těchto jednotek. Popsali je Warren McCulloch a Walter Pitts ve 40. letech 20. století.
perceptron může být vytvořen pomocí libovolných hodnot pro aktivované a deaktivované stavy, pokud prahová hodnota leží mezi těmito dvěma stavy. Většina perceptronů má výstupy 1 nebo -1 s prahovou hodnotou 0 a existují určité důkazy, že takové sítě mohou být trénovány rychleji než sítě vytvořené z uzlů s různými hodnotami aktivace a deaktivace.
Perceptrony mohou být trénovány jednoduchým učícím se algoritmem, který se obvykle nazývá pravidlo delta. Počítá chyby mezi vypočteným výstupem a výstupními daty vzorku a používá je k vytvoření úpravy vah, čímž se zavádí forma sestupu gradientu.
Jednojednotkové perceptrony jsou schopny učit se pouze lineárně oddělitelné vzorce; v roce 1969 ve slavné monografii s názvem Perceptrons Marvin Minsky a Seymour Papert ukázali, že je nemožné, aby se jednovrstvá perceptronová síť naučila funkci XOR. Domnívali se (nesprávně), že podobný výsledek by platil pro vícevrstvou perceptronovou síť. Ačkoli je jednovrstvá prahová jednotka poměrně omezená ve svém výpočetním výkonu, bylo prokázáno, že sítě paralelních prahových jednotek mohou aproximovat jakoukoliv spojitou funkci z kompaktního intervalu reálných čísel do intervalu [-1,1]. Tento velmi nedávný výsledek lze nalézt v [Auer, Burgsteiner, Maass: The p-delta learning rule for parallel perceptrons, 2001 (state Jan 2003: submitted for publication)].
Jednovrstvá neuronová síť může vypočítat spojitý výstup místo krokové funkce. Běžnou volbou je tzv. logistická funkce:
Při této volbě je jednovrstvá síť totožná s logistickým regresním modelem, široce používaným při statistickém modelování. Logistická funkce je také známá jako sigmoidova funkce. Má spojitou derivaci, která umožňuje její použití při zpětném šíření. Tato funkce je také preferována, protože její derivace je snadno vypočítatelná:
Dvouvrstvá neuronová síť schopná vypočítat XOR. Čísla uvnitř neuronů představují explicitní práh každého neuronu (který lze rozložit tak, aby všechny neurony měly stejný práh, obvykle 1). Čísla, která anotují šipky, představují váhu vstupů. Tato síť předpokládá, že pokud není dosaženo prahu, je výstupem nula (ne -1). Všimněte si, že spodní vrstva vstupů není vždy považována za skutečnou neuronovou síťovou vrstvu
Tato třída sítí se skládá z více vrstev výpočetních jednotek, které jsou obvykle vzájemně propojeny způsobem „feed-forward“. Každý neuron v jedné vrstvě má směrovaná spojení s neurony následující vrstvy. V mnoha aplikacích jednotky těchto sítí aplikují funkci sigmoid jako aktivační funkci.
Univerzální aproximační věta pro neuronové sítě uvádí, že každá spojitá funkce, která mapuje intervaly reálných čísel na nějaký výstupní interval reálných čísel, může být libovolně aproximována vícevrstvým perceptronem pouze s jednou skrytou vrstvou. Tento výsledek platí pouze pro omezené třídy aktivačních funkcí, např. pro sigmoidní funkce.
Vícevrstvé sítě používají celou řadu učebních technik, nejpopulárnější je zpětné šíření. Zde jsou výstupní hodnoty porovnány se správnou odpovědí pro výpočet hodnoty některé předdefinované chybové funkce. Různými technikami je pak chyba přiváděna zpět přes síť. Pomocí této informace algoritmus upravuje váhy každého spojení tak, aby se hodnota chybové funkce snížila o nějakou malou částku. Po opakování tohoto procesu po dostatečně velký počet tréninkových cyklů se síť obvykle přiblíží k nějakému stavu, kdy je chyba výpočtů malá. V tomto případě se říká, že se síť naučila určitou cílovou funkci. Pro správné nastavení vah se používá obecná metoda pro nelineární optimalizační úlohu, která se nazývá gradient descent. Za tímto účelem se vypočítá derivace chybové funkce vzhledem k síťovým vahám a váhy se pak změní tak, aby se chyba zmenšila (tedy šla z kopce po povrchu chybové funkce). Z tohoto důvodu lze zpětné šíření aplikovat pouze na sítě s diferencovatelnými aktivačními funkcemi.
Obecně je problém s výukou sítě k dobrému výkonu, a to i na vzorcích, které nebyly použity jako vzorky pro výcvik, poměrně nenápadnou záležitostí, která vyžaduje další techniky. To je důležité zejména v případech, kdy je k dispozici jen velmi omezený počet vzorků pro výcvik. Nebezpečí spočívá v tom, že síť přeplňuje data pro výcvik a nezachycuje skutečný statistický proces, který data generuje. Teorie výpočetního učení se týká klasifikátorů pro výcvik na omezeném množství dat. V kontextu neuronových sítí často jednoduchá heuristika, nazývaná předčasné zastavení, zajišťuje, že se síť dobře zobecní na příklady, které nejsou v souboru pro výcvik.
Dalšími typickými problémy algoritmu zpětného šíření jsou rychlost konvergence a možnost skončit v lokálním minimu chybové funkce. Dnes existují praktická řešení, která činí zpětné šíření ve vícevrstvých perceptronech řešením volby pro mnoho úloh strojového učení.
Adaptivní lineární neuron nebo později nazývaný Adaptivní lineární prvek. Byl vyvinut profesorem Bernardem Widrowem a jeho postgraduálním studentem Tedem Hoffem na Stanfordově univerzitě v roce 1960. Je založen na McCullochově-Pittsově modelu. Skládá se ze závaží, zkreslení a sumační funkce.
Jeho přizpůsobení je definováno pomocí nákladové funkce (chybové metriky) zbytkového, kde je požadovaný vstup. S chybovou metrikou MSE se přizpůsobená váha a zkreslení stanou:
a
Zatímco Adaline je prostřednictvím tohoto schopen jednoduché lineární regrese, to má omezené praktické využití.
Existuje rozšíření Adaline, nazývané Multiple Adaline (MADALINE), které se skládá ze dvou nebo více adalinů sériově připojených.
Radiální bazická funkce (RBF)
Radiální bázové funkce jsou mocné techniky pro interpolaci v multidimenzionálním prostoru. RBF je funkce, která je zabudována do kritéria vzdálenosti vzhledem ke středu. Radiální bázové funkce byly použity v oblasti neuronových sítí, kde mohou být použity jako náhrada za znakovou charakteristiku skrytého přenosu vrstev ve vícevrstvých perceptronech. RBF sítě mají 2 vrstvy zpracování: V první je vstup mapován na každý RBF ve ‚skryté‘ vrstvě. Zvolený RBF je obvykle Gaussův. V regresních problémech je pak výstupní vrstva lineární kombinací skrytých hodnot vrstev představujících střední predikovaný výstup. Interpretace této hodnoty výstupní vrstvy je stejná jako regresní model ve statistice. V klasifikačních problémech je výstupní vrstva typicky sigmoidní funkcí lineární kombinace skrytých hodnot vrstev, představujících zadní pravděpodobnost. Výkon je v obou případech často zlepšen zmenšovacími technikami, známými v klasické statistice jako ridge regrese a známými, že odpovídají předchozí víře v malé hodnoty parametrů (a tedy hladké výstupní funkce) v bayesovském rámci.
Sítě RBF mají tu výhodu, že netrpí lokálními minimy stejně jako vícevrstvé perceptrony. Je to proto, že jediné parametry, které se v procesu učení upravují, jsou lineární mapování od skryté vrstvy k výstupní vrstvě. Linearita zajišťuje, že povrch chyby je kvadratický, a proto má jedno snadno nalezené minimum. V regresních problémech to lze nalézt v jedné maticové operaci. V klasifikačních problémech je fixní nelinearita zavedená výstupní funkcí sigmoid nejefektivněji řešena pomocí iterovaných přetočených nejmenších čtverců.
Přidružení každého vstupního data k RBF vede přirozeně k metodám jádra, jako jsou Support Vector Machines a Gaussovy procesy (RBF je funkce jádra). Všechny tři přístupy používají nelineární funkci jádra k promítnutí vstupních dat do prostoru, kde může být problém učení vyřešen pomocí lineárního modelu. Stejně jako Gaussovy procesy, a na rozdíl od SVM, jsou RBF sítě obvykle trénovány v rámci Maximální pravděpodobnosti maximalizací pravděpodobnosti (minimalizací chyby) dat pod modelem. SVM mají jiný přístup k zamezení nadměrného vybavení maximalizací místo marže. RBF sítě jsou překonány ve většině klasifikačních aplikací SVM. V regresních aplikacích mohou být konkurenceschopné, když je rozměrnost vstupního prostoru relativně malá.
Samoorganizační síť Kohonen
Samoorganizační mapa (SOM), kterou vynalezl Teuvo Kohonen, využívá formu nekontrolovaného učení. Sada umělých neuronů se učí mapovat body ve vstupním prostoru na souřadnice ve výstupním prostoru. Vstupní prostor může mít jiné rozměry a topologii než výstupní prostor a SOM se bude snažit je zachovat.
Oproti feedforward sítím jsou rekurentní neuronové sítě (RNs) modely s obousměrným tokem dat. Zatímco feedforward síť šíří data lineárně od vstupu k výstupu, RNs také šíří data z pozdějších fází zpracování do dřívějších fází.
Jednoduchá rekurentní síť (SRN) je variací na vícevrstvý perceptron, někdy nazývaný „Elmanova síť“ kvůli jeho vynálezu Jeffem Elmanem. Používá se třívrstvá síť s přidáním sady „kontextových jednotek“ ve vstupní vrstvě. Existují spojení ze střední (skryté) vrstvy k těmto kontextovým jednotkám fixovaným s váhou jedné. V každém časovém kroku je vstup šířen standardním způsobem předávání a pak je aplikováno učící se pravidlo (obvykle zpětné šíření). Fixní zpětná spojení mají za následek, že kontextové jednotky vždy udržují kopii předchozích hodnot skrytých jednotek (protože se šíří po spojeních před tím, než je učící se pravidlo aplikováno). Síť tak může udržovat jakýsi stav, který jí umožňuje provádět takové úlohy, jako je sekvenční predikce, které jsou mimo možnosti standardního vícevrstvého perceptronu.
V plně rekurentní síti přijímá každý neuron vstupy od každého druhého neuronu v síti. Tyto sítě nejsou uspořádány ve vrstvách. Obvykle pouze podmnožina neuronů přijímá externí vstupy kromě vstupů od všech ostatních neuronů a další disjunktní podmnožina neuronů hlásí svůj výstup externě a také jej posílá všem neuronům. Tyto charakteristické vstupy a výstupy plní funkci vstupních a výstupních vrstev přenosové nebo jednoduché rekurentní sítě a také se připojují ke všem ostatním neuronům v rekurentním zpracování.
Síť Hopfield je rekurentní neuronová síť, ve které jsou všechna spojení symetrická. Tato síť, kterou vynalezl John Hopfield v roce 1982, zaručuje, že se její dynamika bude sbližovat. Pokud jsou spojení trénována pomocí Hebbianova učení, pak může síť Hopfield fungovat jako robustní obsahově adresovatelná paměť, odolná vůči změně spojení.
Stochastické neuronové sítě
Stochastická neuronová síť se od běžné neuronové sítě liší tím, že do sítě zavádí náhodné variace. V pravděpodobnostním pohledu na neuronové sítě lze na takové náhodné variace pohlížet jako na formu statistického odběru vzorků, jako je odběr vzorků v Monte Carlu.
Boltzmannův stroj lze považovat za hlučnou Hopfieldovu síť. Boltzmannův stroj vynalezli Geoff Hinton a Terry Sejnowski v roce 1985, je důležitý, protože je to jedna z prvních neuronových sítí, která demonstruje učení latentních proměnných (skrytých jednotek). Boltzmannovo strojové učení bylo zpočátku pomalé při simulaci, ale kontrastní divergentní algoritmus Geoffa Hintona (cca 2000) umožňuje modelům, jako jsou Boltzmannovy stroje a produkty expertů, trénovat mnohem rychleji.
Biologické studie ukázaly, že lidský mozek nefunguje jako jediná masivní síť, ale jako soubor malých sítí. Toto poznání dalo vzniknout konceptu modulárních neuronových sítí, v nichž několik malých sítí spolupracuje nebo soutěží v řešení problémů.
Výbor strojů (CoM) je kolekce různých neuronových sítí, které společně „hlasují“ o daném příkladu. To obecně dává mnohem lepší výsledek ve srovnání s jinými modely neuronových sítí. Ve skutečnosti v mnoha případech, počínaje stejnou architekturou a tréninkem, ale s použitím různých počátečních náhodných vah, dává diametrálně odlišné sítě. CoM má tendenci stabilizovat výsledek.
CoM je podobná obecné metodě strojového učení bagging, s tím rozdílem, že potřebná rozmanitost strojů ve výboru se získává tréninkem z různých náhodných startovních vah, spíše než tréninkem na různých náhodně vybraných podmnožinách tréninkových dat.
Asociativní neuronová síť (ASNN)
ASNN je rozšířením výboru strojů, který přesahuje jednoduchý/vážený průměr různých modelů. ASNN představuje kombinaci souboru neuronových sítí typu feed-forward a techniky k-nearest neighbour (kNN). Používá korelaci mezi odpověďmi souboru jako měřítko vzdálenosti mezi analyzovanými případy pro kNN. Tím se koriguje zkreslení souboru neuronové sítě. Asociativní neuronová síť má paměť, která se může shodovat s tréninkovou sadou. Pokud jsou k dispozici nová data, síť okamžitě zlepšuje svou prediktivní schopnost a poskytuje aproximaci dat (self-learn the data) bez nutnosti přeškolování souboru. Další důležitou vlastností ASNN je možnost interpretovat výsledky neuronové sítě analýzou korelací mezi datovými případy v prostoru modelů. Metoda je demonstrována na www.vcclab.org, kde ji můžete buď použít online, nebo si ji stáhnout.
Tyto speciální sítě se nevejdou do žádné z předchozích kategorií.
Holografická asociativní paměť
Holografická asociativní paměť představuje rodinu analogových asociativních pamětí založených na korelaci, kde jsou informace mapovány na fázovou orientaci komplexních čísel operujících. Tyto modely vykazují některé pozoruhodné vlastnosti, jako je generalizace, rozpoznávání vzorů s okamžitě proměnlivou pozorností a schopnost získávat velmi malé vzory.
Okamžitě vyškolené sítě
Okamžitě trénované neuronové sítě (ITNN) se také nazývají „Kakovy sítě“ podle jejich vynálezce Subhaše Kaka. Inspirovaly se fenoménem krátkodobého učení, které se zdá nastat okamžitě. V těchto sítích jsou hmotnosti skrytých a výstupních vrstev mapovány přímo z tréninkových vektorových dat. Běžně pracují s binárními daty, ale k dispozici jsou i verze pro kontinuální data, která vyžadují malé dodatečné zpracování.
Spikingové (nebo pulsní) neuronové sítě (SNN) jsou modely, které výslovně berou v úvahu časování vstupů. Síťový vstup a výstup jsou obvykle reprezentovány jako série hrotů (funkce delta nebo složitější tvary). SNN mají výhodu v tom, že mohou nepřetržitě zpracovávat informace. Často jsou implementovány jako rekurentní sítě.
Sítě špičatých neuronů — a časové korelace neurálních sestav v těchto sítích — byly použity k modelování oddělování postavy/země a propojení oblastí ve vizuálním systému (viz např. Reitboeck et al.in Haken and Stadler: Synergetics of the Brain. Berlin, 1989).
Gerstner a Kistler mají volně dostupnou online učebnici Spiking Neuron Models.
Spikující neuronové sítě se zpožděním axonálního vedení vykazují polychronizaci, a tudíž by mohly mít potenciálně neomezenou kapacitu paměti.
V červnu 2005 IBM oznámila výstavbu superpočítače Blue Gene věnovaného simulaci velké rekurentní hrotící neuronové sítě .
Dynamické neuronové sítě se nezabývají pouze nelineárním multivariatním chováním, ale zahrnují také (učení) chování závislé na čase, jako jsou různé přechodné jevy a zpožďovací efekty. Meijer má doktorskou práci online, kde jsou pravidelné feedforward percentuální sítě zobecněny diferenciálními rovnicemi, s využitím algoritmů proměnného časového kroku pro učení v časové oblasti a včetně algoritmů pro učení ve frekvenční oblasti (v tomto případě linearizované kolem sady statických bias bodů).
Cascade-Correlation je architektura a algoritmus pro učení pod dohledem vyvinutý Scottem Fahlmanem.
Místo pouhého nastavení závaží v síti pevné topologie, Kaskáda-Korelace začíná
minimální síť, pak automaticky vlaky a přidává nové skryté jednotky jeden po druhém, vytváří vícevrstvý
strukturu. Jakmile je do sítě přidána nová skrytá jednotka, její vstupní závaží se zmrazí. Tato jednotka
pak se stává permanentním detektorem v síti, který je k dispozici pro výrobu výstupů nebo pro tvorbu
jiné, složitější detektory funkcí. Architektura Cascade-Correlation má několik výhod
stávající algoritmy: učí se velmi rychle, síť si určuje vlastní velikost a topologii, zachovává si
struktury, které vybudoval, i když se tréninková sada změní, a nevyžaduje zpětné šíření chybových signálů
prostřednictvím připojení sítě.
Neuro-fuzzy síť je fuzzy inferenční systém v těle umělé neuronové sítě. V závislosti na typu FIS existuje několik vrstev, které simulují procesy podílející se na fuzzy inferenci, jako je fuzzifikace, inference, agregace a defuzzifikace. Vložení FIS do obecné struktury ANN má tu výhodu, že se k nalezení parametrů fuzzy systému používají dostupné tréninkové metody ANN.
Modely umělých neuronových sítí mají vlastnost zvanou ‚kapacita‘, která zhruba odpovídá jejich schopnosti modelovat libovolnou danou funkci. Souvisí s množstvím informací, které mohou být uloženy v síti, a s pojmem složitosti.
Obecně nelze říci nic o konvergenci, protože závisí na řadě faktorů. Za prvé, může existovat mnoho lokálních minim. To závisí na nákladové funkci a modelu. Za druhé, použitá optimalizační metoda nemusí mít zaručenou konvergenci, když je daleko od lokálního minima. Za třetí, pro velmi velké množství dat nebo parametrů se některé metody stávají nepraktickými. Obecně bylo zjištěno, že teoretické záruky týkající se konvergence nejsou vždy velmi spolehlivým vodítkem pro praktické použití.
Generalizace a statistika
Analýza spolehlivosti neuronové sítě
Dohlížené neuronové sítě, které používají nákladovou funkci MSE, mohou použít formální statistické metody k určení spolehlivosti trénovaného modelu. MSE na validační sadě mohou být použity jako odhad rozptylu. Tuto hodnotu pak lze použít k výpočtu intervalu spolehlivosti výstupu sítě za předpokladu normálního rozdělení. Takto provedená analýza spolehlivosti je statisticky platná, pokud rozdělení pravděpodobnosti výstupu zůstane stejné a síť se nezmění.
Přiřazením aktivační funkce softmax na výstupní vrstvě neuronové sítě (nebo komponenty softmax v neuronové síti založené na komponentách) pro kategorické cílové proměnné lze výstupy interpretovat jako zadní pravděpodobnosti. To je velmi užitečné při klasifikaci, protože to dává jistotu míry klasifikace.
Funkce aktivace softmax:
Různé techniky původně vyvinuté pro studium neuspořádaných magnetických systémů (spinové brýle) byly úspěšně aplikovány na jednoduché neuronové síťové architektury, jako je perceptron. Vlivná práce E. Gardnera a B. Derridy odhalila mnoho zajímavých vlastností o perceptronech s reálně oceňovanými synaptickými vahami, zatímco pozdější práce W. Krautha a M. Mezarda rozšířila tyto principy na binárně oceňované synapse.
„Zařízení s integrovaným obvodem neuronové sítě se samoorganizující funkcí“. 8. března 1994.