Neurónové siete: Príklad, definícia, hodnota, rozsah

Umelá inteligencia a neurónové siete sú neuveriteľne vzrušujúce a silné metódy založené na strojovom učení, ktoré sa používajú na riešenie mnohých skutočných problémov. Najjednoduchším príkladom neurónovej siete je štúdium interpunkcie a gramatiky na automatické vytvorenie úplne nového textu s implementáciou všetkých pravopisných pravidiel.

História neurónovej siete

Vedci v oblasti počítačovej techniky sa už dávno snažili simulovať ľudský mozog. V roku 1943 vyvinuli Warren S. McCullough a Walter Pitts prvý koncepčný model umelých neurónových sietí. V článku "Logický počet myšlienok súvisiacich s nervovou aktivitou" opisujú príklad neurónovej siete, pojem neurón - jedna bunka žijúca vo všeobecnej sieti, prijíma vstupné dáta, spracováva ich a generuje výstupné signály.


Ich práca, podobne ako mnohí ďalší vedci, nebola určená na presné popísanie práce biologického mozgu. Umelá neurónová sieť bola vyvinutá ako výpočtový model, ktorý pracuje na princípe funkcie mozgu pri riešení širokého rozsahu úloh. Je zrejmé, že existujú cvičenia, ktoré sa dajú ľahko vyriešiť pre počítač, ale ťažko pre človeka, napríklad extrahovanie odmocniny od desaťmiestneho čísla. Tento príklad vypočíta neurónovú sieť za menej ako milisekúnd a osoba potrebuje minúty. Na druhej strane existujú tie, ktoré sú neuveriteľne ľahko vyriešiť osobu, ale nie pod mocou počítača, napríklad, aby si vybral obrázok na pozadí.
Vedci strávili veľa času skúmaním a implementáciou komplexných riešení. Najčastejším príkladom neurónovej siete v oblasti výpočtovej techniky je rozpoznávanie vzorov. Rozsah sa líši od optického rozpoznávania znakov a tlače fotografií alebo ručne písaných naskenovaní na digitálne rozpoznanie textu.


Biologické kalkulačky

Ľudský mozog je mimoriadne zložitý a najsilnejší zo známych počítačov. Jeho interná práca je modelovaná okolo pojmu neurónov a ich sietí, známych ako biologické neurónové siete. Mozog obsahuje okolo 100 miliárd neurónov, ktoré sú prepojené týmito sieťami. Na vysokej úrovni interagujú navzájom prostredníctvom rozhrania pozostávajúceho z terminálov axónov spojených s dendritmi cez priestorovú synapsiu. Keď hovoríme jednoduchým jazykom, prostredníctvom tohto rozhrania sa vysiela správa inej, ak súčet vážených vstupov z jedného alebo viacerých neurónov presahuje prah, ktorý spustí prenos. Aktivácia sa nazýva prekročením prahu a správa sa prenáša na ďalší neurón. Súhrnný proces môže byť matematicky zložitý. Vstupný signál je váženou kombináciou týchto signálov a váženie každého z nich znamená, že tento vstup môže mať iný vplyv na následné výpočty a konečný výstup siete.

Prvky neurónového modelu

Hlbšie učenie je termín používaný pre komplexné neurónové siete pozostávajúce z niekoľkých vrstiev. Vrstvy pozostávajú z uzlov. Uzol je len miestoexistuje výpočet, ktorý funguje, keď čelí dostatočným stimulom. Uzol integruje vstupné dáta zo súboru koeficientov alebo závaží, ktoré zosilňujú alebo oslabujú tento signál, čím určujú význam pre úlohu.
Siete s hlbším vzdelávaním sa odlišujú od spoločných neurónov s jednou skrytou vrstvou. Príklad vzdelávania neurónových sietí - sieť Kohonen.
V sieťach s hlbším vzdelaním každá vrstva rozpozná danú sadu funkcií založenú na pôvodných informáciách predchádzajúcej úrovne. Ďalší pohyb do neurónovej siete, ťažšie objekty, ktoré môžu uznať uzly, pretože kombinujú a rekombinujú objekty z predchádzajúcej úrovne. Network-hĺbkové štúdie uskutočnenej automaticky vyňať prvky bez zásahu človeka, na rozdiel od väčšiny tradičných algoritmov a koncové línie logicky alebo softmax triedič, ktorý priraďuje pravdepodobnosť určitého výsledku a nazýva prognózu.

Black Box ANN

Umelé neurónové siete (SNN) sú štatistické modely, ktoré sú čiastočne modelované na biologických neurónových sieťach. Sú schopní narábať s nelineárnym vzťahom medzi vstupmi a výstupmi paralelne. Charakterizovaný prítomnosťou takéhoto modelu adaptívnych závažia pozdĺž dráh medzi neurónmi, ktoré možno prispôsobiť učenia algoritmus pre zlepšenie celý model.
Jednoduchým príkladom neurónovej siete je architektonicky umelá neurónová sieť ANN, kde:
  • Vstupná vrstva je vstupná vrstva.
  • Skrytá vrstva je skrytá vrstva.
  • Výstupná vrstva - výstupná vrstva.
  • Tento návrh je postavený s použitím vrstvy umelej neuróny alebo výpočtových jednotiek, ktoré môžu prijímať prichádzajúce dáta a používajú aktiváciu s prahom pre určenie, či je správa prenášaná.
    V jednoduchom modeli je prvou vrstvou vstup, ktorý by mal byť skrytý a nakoniec výstup. Každý z nich môže obsahovať jeden alebo viac neurónov. Modely môže skomplikovať väčšie možnosti abstrakcie a riešenie problémov, na počet skrytých vrstiev, počet neurónov prítomných v každej vrstve a počet stôp medzi nimi. Modely architektúra a konfigurácie sú hlavné súčasti spôsobu ANN okrem najviac učenia algoritmov. Sú extrémne silný a sú považované za čierne skrinky algoritmy, čo znamená, že ich vnútorné pracovné veľmi ťažké pochopiť a vysvetliť.

    Hlboké algoritmy učenia

    Hlboký learning - koncept znie celkom nahlas, v skutočnosti je termín, ktorý opisuje určité typy neurónových sietí a pridružených algoritmov konzumujú surové vstupných dát cez mnoho vrstiev nelineárnych transformáciou pre výpočet cieľový výstup Nepríťažlivou vlastnosťou je aj oblasť, v ktorej hlboké učenie prekračuje všetky očakávania. Príklad vyučovania neurónových sietí - SKIL.
    Tradične vedec alebo programátor bude atribúty zodpovedá výkon proces extrakcia dát väčšinu iných strojového učenia prístupy, spolu s výberom funkcií a dizajnu.

    Optimálne parametre algoritmu

    Algoritmylearningové funkcie autorizuje stroj, aby sa naučil konkrétnu úlohu s využitím konečného súboru možností učenia. Inými slovami, učia sa študovať. Tento princíp sa úspešne používa v mnohých aplikáciách a je považovaný za jednu z pokročilých metód umelej inteligencie. Vhodné algoritmy sa často používajú na riadené, nekontrolovateľné a čiastočne kontrolované úlohy. V modeloch založených na neurónovej sieti je počet vrstiev vyšší ako v povrchových tréningových algoritmoch. Malé algoritmy sú menej zložité a vyžadujú hlbšie znalosti o optimálnych funkciách, ktoré zahŕňajú výber a vývoj. Naopak algoritmy hlbokého učenia sa opierajú skôr o optimálnu voľbu modelu a jeho optimalizáciu prostredníctvom prispôsobenia. Sú lepšie vhodné na riešenie problémov, keď je predchádzajúca znalosť funkcií menej vhodná alebo potrebná a pevné údaje nie sú k dispozícii alebo nie sú potrebné na použitie. Vstupné dáta sa konvertujú na všetky vrstvy pomocou umelých neurónov alebo procesorových blokov. Príklad kódu neurónovej siete sa nazýva CAP.

    Hodnota CAP

    CAP sa používa na meranie architektúry hlbokého vzdelávacieho modelu. Väčšina vedcov v tejto oblasti súhlasí s tým, že pre SPP má viac ako dve nelineárne vrstvy, zatiaľ čo niektorí veria, že SPP, ktorá má viac ako desať vrstiev, si vyžaduje príliš veľa školení.
    Podrobná diskusia o mnohých rôznych architektúrach modelov a algoritmov tohto druhu výcviku je veľmi priestorová a kontroverzná. Najviac študované sú:
  • Priameneurónové siete.
  • Rekurentná neurónová sieť.
  • Viacvrstvový Perceptron (MLP).
  • Rolling Neural Networks.
  • Rekurzívne neurónové siete.
  • Hlboké siete viery.
  • Vlnová sieť hlbokých odsúdení.
  • Samorozbalovacie mapy.
  • Hlboké autá spoločnosti Boltzmann.
  • Zložené auto-kódovače vyžarujúce hluk.
  • Špičkové moderné architektúry

    Perceptrony sú považované za prvej generácie neurónových sietí, výpočtových modelov jedného neurónu. Vyrobili ich v roku 1956 Frank Rosenblatt v "Perceptron: Predvídateľný model skladovania a organizácie informácií v mozgu". Perceptron, nazývaný aj sieť priameho spojenia, prenáša informácie z jeho prednej strany do zadnej časti.
    Opakujúce sa neurónové siete RNN konvertujú vstupnú sekvenciu na výstup, ktorý je v inej oblasti, napríklad mení sériu zvukových tlakov do poradia identifikátorov slov. John Hopfield uviedol Hopfield Net v článku z roku 1982 "Neurónové siete a fyzické systémy s vynárajúcimi sa kolektívnymi výpočtovými schopnosťami". V sieti Hopfielda (HN) je každý neurón spojený s iným neurónom. Učí sa nastavením ich hodnoty na požadovanú schému, po ktorej môžeme vypočítať koeficienty hmotnosti.
    ​​Stroj spoločnosti Boltzmann je typom stochastického opakujúceho sa neurónového systému, ktorý možno považovať za analóg sieťov Hopfielda. Bola to jedna z prvých variantov na štúdium interných reprezentácií, ktoré riešili zložité kombinatorické problémy.Prichádzajúce neuróny sa zobrazia na konci úplnej aktualizácie. Generatívne konkurenčné Ian Goodfellow Network (GAN) sa skladá z dvoch sietí. Často ide o kombináciu posunu vpred a konvolučných nervových sietí. Jeden generuje obsah genericky a druhý by mal obsah diskriminačne hodnotiť.

    SKIL Začíname s Python

    hlboko neurónové siete príprava podľa príkladu Python porovnáva vstupy a výstupy z korelácia. On je známy ako univerzálny approksymator, pretože to môže naučiť pristupovať neznámu funkciu f (x) = y medzi akýmkoľvek vstupom «x» a každé uvoľnenie «y», čo naznačuje, že sa vzťah alebo príčinnú BC súvisiace , yazkom. V učení správny «f», alebo spôsob, ako previesť «x», «y», či už f (x) = 3x + 12 alebo f (x) = 9x - 01. Úlohou klasifikáciu údajov spojených s neurónových sietí vykonala koreláciu medzi označeniami a údajmi. Známe kontrolované vzdelávanie týchto typov:
  • uznanie jednotlivcov;
  • Identifikácia osôb na obrázkoch;
  • určenie výrazu tváre: nahnevaný, radostný;
  • identifikácia objektov v obrazu, stopky, chodci, značky pruhy;
  • rozpoznávanie gest vo videu;
  • určovanie hlasu reproduktorov;
  • klasifikácia spamového textu.
  • Príklad svertochnoy neurónové siete

    Svertochnaya neurónové siete ako perceptronových siete. Hlavným rozdielom je to, že CNN skúma, ako je štruktúrovaná a na aký účel sa používa. Inšpiráciou pre CNN boli biologické procesy. Ich štruktúra má vzhľad vizuálneho kôra prítomného v zvierati.Používajú sa v oblasti počítačového videnia a úspešných úspechov modernej úrovne produktivity v rôznych oblastiach výskumu. Predtým, ako začnú kódovať CNN, sa k modelu použije knižnica, napríklad Keras s backendom Tensorflow. Najskôr vykonajte nevyhnutný import. Knižnica pomáha vybudovať konvolučnú neurónovú sieť. Prevezmite množinu údajov mnist cez keras. Importujte sériový model keras, ktorý môže pridať vrstvy slučiek a zlúčené husté vrstvy, ktoré sa používajú na predpovedanie štítkov. Spádová vrstva redukuje opätovné vybavenie a vyrovnanie transformuje trojrozmerný vektor na jednorozmerný. Nakoniec importovať numpy pre maticové operácie:
  • Y = 2 # hodnota 2 znamená, že obrázok má číslicu 2;
  • Y = [0,0,1,0,0,0,0,0,0,0] # Tretia poloha vo vektore je 1;
  • # Tu sa hodnota triedy prevedie na maticu binárnych tried.
  • Konštrukčný algoritmus:
  • Pridajte k sekvenčnému modelu presné vrstvy maximálneho fondu.
  • Pridajte medzi nimi vrstie kvapiek. Rozbaľovací zoznam náhodne odpojí niektoré neuróny v sieti, čo núti údaje nájsť nové cesty a znižuje opätovné vybavenie.
  • Pridajte tesné vrstvy, ktoré sa používajú na predpovedanie triedy (0-9).
  • Zostavte model s kategorickou stratou krížovej entropie, optimalizátorom Adadelta a metrikou presnosti.
  • Po tréningu vyhodnotiť stratu a presnosť modelu podľa údajov o skúške a vytlačiť ho.
  • Modelovanie v Matlaye

    Tu je jednoduchý príklad Neutrálnych sietí modelovania Matlabu. Za predpokladu,že model "a" má tri vstupy "a", "b" a "c" a generuje výstup "y".
    Na účely generovania údajov: = 5a + bc + 7s. Najprv napíšte malý skript na generovanie údajov:
  • a = Rand (11000);
  • b = pláž (11000);
  • s Random (11 000);
  • n = Rand (11 000) * 005;
  • , y = a * b + 5 + 7 * s * y + N,
  • , pričom n - hluk je špecificky pridaný tak, aby vyzeral ako reálnych dát. Hodnota šumu je 01 a je jednotná. To znamená, že vstup - sada "a", "b" a "c", a dospel k záveru ,:
  • I = [A; b; c];
  • O = y.
  • Potom použite vstavanú funkciu matlab newff na generovanie modelu.

    Príklady neurónových sietí

    Najprv sa vytvorí matica 3 * R 2. Prvý stĺpec ukazuje minimálne tri vstupy, a druhá - maximálne tri vstupy. V tomto prípade sú tri vstupy v rozsahu od 0 do 1 pre: R = [0 1; 0 1; 0 1]. Teraz vytvorte maticu veľkosti, ktorá má v-veľkosť všetkých vrstiev: S = . Teraz volá newff nasledovne: net = newff ([0 1 0 1 0 1], S, { 'tansig', 'purelin'}). Neurónový model {'tansig', 'purelin'} zobrazuje funkciu zobrazovania dvoch vrstiev. Naučte to s údajmi, ktoré boli vytvorené skôr: net = vlak (net, I, O). Sieť je vyškolená, keď sa naučí, môžete vidieť krivku produktivity.
    Teraz opätovne ju simulujte na rovnaké dáta a porovnajte zdrojové dáta: O1 = sim (net, I); graf (1: 10000, 1: 10000). To znamená, že vstupné matica bude:
  • net.IW {1}
  • -05 402 -036840,0308
  • 046400,234005875
  • 19 569 -168871,5403
  • 111.381,084102439
  • net.LW {21}
  • -10006 -09138 -1.119.909,4589
  • programy umelej inteligencie

    Príklady realizácie neurónových sietí zahŕňajú online riešenia samoobslužné pre vytvorenie aspoľahlivé pracovné postupy. Existujú modely hlbokého vzdelávania, ktoré sa používajú pri chatovacích robotoch, pretože sa naďalej vyvíjajú, možno očakávať, že táto oblasť bude viac využívaná širokou škálou podnikov. Oblasti použitia:
  • Automatický strojový preklad. Nie je to niečo nové, hlboké vzdelávanie pomáha zlepšiť automatický preklad textu pomocou komplexných sietí a umožňuje prekladať obrázok.
  • Jednoduchý príklad používania neurónových sietí - pridávanie farieb na čierne a biele obrázky a videá. Môže sa to automaticky vykonať pomocou modelov hĺbkových štúdií.
  • Stroje skúmajú interpunkciu, gramatiku a štýl textu a môžu použiť model, ktorý vytvorili, aby automaticky vytvorili úplne nový text s riadnym hláskovaním, gramatikou a štýlom textu.
  • ANN umelé neurónové siete a sofistikovanejšie techniky hlbšieho učenia sú jedným z najpokročilejších nástrojov na riešenie zložitých úloh. Hoci je aplikácia boomu v blízkej budúcnosti nepravdepodobná, vývoj technológie a aplikácií umelej inteligencie bude určite fascinujúci. Napriek tomu, že dedukčné zdôvodnenie, logické závery a rozhodovanie s pomocou počítača dnes sú ešte ďaleko od dokonalosti, značný pokrok sa dosiahol pri aplikácii metód umelej inteligencie a súvisiacich algoritmov.

    Súvisiace publikácie