Stáhněte si program pro neuronové sítě v ruštině. SwiftKey a další klávesnice. Co jsou to neuronové sítě

Prisma samozřejmě není zdaleka jediná a od té doby mají mnoho konkurentů. Facebook koupil aplikaci s názvem MSQRD, která do vašich videí přidává animované masky. Na rozdíl od Prizmy je zde kladen důraz na rozpoznávání tváří a aplikaci filtrů na ně.

SwiftKey a další klávesnice

Většina moderní klávesnice pro mobilní telefony se již dlouhou dobu nepoužívají vlastní slovníky, jako je T9. Pokud napíšete frázi, pak je pravděpodobně zapojena neuronová síť. Někteří vývojáři jdou ještě dál. Společnost SwiftKey vydala beta verzi klávesnice, která je zcela založena na práci neuronové sítě. Díky tomu klávesnice jednoduše nenahrazuje nejčastěji psané fráze, ale vychází z kontextu.

Nová technologie je aktuálně dostupná pro omezený počet jazyků a je ve fázi beta. Ale také veřejná verze SwiftKey je založen na Big Data. Například uživatelské slovníky jsou dostupné všem, kteří si nainstalovali klávesnici. Samozřejmě s výjimkou osobních údajů.

Snapchat a jeho filtry jsou další z nejznámějších aplikací neuronových sítí. Pro zjednodušení tohoto komplexu používá aplikace počítačové rozpoznávání obličeje k identifikaci výrazů obličeje a bodů pohybu svalů. A teprve poté na ně aplikuje vlastní filtry.

Shazam a SoundHound

Tihle dva populární aplikace rozpoznat hudbu, která hraje vedle nás, a poté tento fragment porovnat s obsazením v jejich „knihovně“. Zní to jednoduše, ale aplikace k tomu využívá neuronové sítě. Zde musíme vyřešit několik složitých problémů, a to nejen při hledání shod, ale také při odstraňování nadměrného šumu během rozpoznávání.

Google Assistant a Siri

Mluvit jen o Google Assistant nebo Siri nebude úplně správná. Současnost moderní služby Google a bez Apple to nejde Velká data a neuronové sítě. Jakýkoli vývoj od těchto dvou společností, tak či onak, využívá neuronové sítě. Automatické návrhy vyhledávání, zobrazování reklam, čištění pošty od spamu a mnoho dalšího. A přesto je pro nás nejzřejmější aplikace hlasové asistenty. Smartphone rozpozná náš požadavek a provede úkol v závislosti nejen na kontextu fráze, ale také na naší poloze.

Karát

Některé aplikace jsou naopak zaměřeny na provedení pouze jednoho úkolu. Například Carat na základě údajů o používání smartphonu (analýza spotřeby baterie) označí aplikace, které spotřebovávají nejvíce baterie. Tyto programy můžete odstranit nebo omezit používání těchto programů a pomoci telefonu „přežít“, než se dostane do zásuvky.

Netflix, YouTube, Apple a Google Music... Všechny tyto služby nabízejí hudbu a videa podle vašich preferencí. Za posledních pár let šel tento trend ještě o něco dále a nyní jsou nám nabízeny celé chytré prostěradla, které jsou vhodné pro naše povolání nebo denní dobu.

Big Data a neuronové sítě nám mohou nejen prodávat reklamu, léčit naše nemoci nebo ovládat naši mysl. Většinu vývoje si všimneme pouze tehdy, když je nám prezentován zábavnou formou nebo když nám zlepší naše nejjednodušší každodenní úkoly. Kvůli tomu často zapomínáme, že neuronová síť není jen kotěcí mops v našem telefonu.

Příklad programu neuronové sítě s zdrojový kód v C++.

O neuronové sítě dobře napsané a podrobné. Zkusme přijít na to, jak programovat neuronové sítě, a Jak to funguje. Jedním z problémů, které neuronové sítě řeší, je problém klasifikace. Program demonstruje fungování neuronové sítě, která klasifikuje barvu.

Počítač používá třísložkový model reprezentace barev RGB, přičemž každé součásti je přidělen jeden bajt. plná barva je zastoupena ve 24 bitech, výsledkem je 16 milionů odstínů. Osoba může přiřadit kterýkoli z těchto odstínů jedné z pojmenovaných barev. Takže úkol:

Poskytuje InColor - RGB barva(24 bitů)

klasifikovat barvu, tzn. přiřaďte mu jednu z barev určených množinou M = (Černá, Červená, Zelená, Žlutá, Modrá, Fialová, Světle modrá, Bílá).

OutColor - barva ze sady M

Řešení číslo 1. (digitální)

Vytvořte pole 16777216 prvků

Řešení číslo 2. (analogové)

napíšeme funkci jako

Int8 GetColor (barva DWORD)
{
dvojitá červená = (double(((Barva>>16)&0xFF)))/255*100;
dvojitá zelená = (double(((Barva>>8)&0xFF)))/255*100;
dvojitá modrá = (double((Color&0xFF)))/255*100;
dvojitá úroveň = červená;
if (Zelená > Úroveň)
Úroveň = Zelená;
if (Modrá > Úroveň)
Úroveň = Modrá;
Úroveň = Úroveň * 0,7;
int8 OutColor = 0;
if (Červená > Úroveň)
OutColor |= 1;
if (Zelená > Úroveň)
OutColor |= 2;
if (Modrá > Úroveň)
OutColor |= 4;
vrátit OutColor;
}

To bude fungovat, pokud lze problém popsat jednoduchými rovnicemi, ale pokud je funkce tak složitá, že ji nelze popsat. nepůjčuje, právě zde přicházejí na pomoc neuronové sítě.

Řešení číslo 3. (neuronová síť)

Nejjednodušší neuronová síť. Jednovrstvý perceptron.

Vše neurální je uzavřeno ve třídě CNeuroNet

Každý neuron má 3 vstupy, kde jsou dodávány intenzity barevných složek. (R,G,B) v rozsahu (0 - 1).

Celkem je 8 neuronů, podle počtu barev ve výstupní sadě. V důsledku provozu sítě je na výstupu každého neuronu generován signál v rozsahu (0 - 1), což znamená pravděpodobnost, že tato barva je na vstupu. Vybereme maximum a dostaneme odpověď. Neurony mají funkci aktivace sigmatu, ActiveSigm() . Funkce ActiveSigmPro(), odvozená od sigmoidní aktivační funkce, se používá k trénování neuronové sítě pomocí.

zpětné šíření První řádek zobrazuje intenzitu barev. Níže je tabulka váhových koeficientů (4 ks). Poslední sloupec obsahuje hodnotu výstupu neuronů. Změňte barvu, vyberte správnou odpověď ze seznamu pomocí tlačítka Učit zavolejte funkci tréninku. AutoTeach

1000x zavolá proceduru automatického učení, náhodnou barvu určí vzorec z řešení číslo 2 a zavolá se funkce učení.

Neuronové sítě. Jako příklad byly vytvořeny komponenty, které implementují dvě paradigmata neuronové sítě: rekurentní neuronová síť, v našem případě Hopfieldova síť, a vícevrstvá neuronová síť trénovaná pomocí algoritmu zpětného šíření. Hlavním účelem knihovny je integrace neuronových sítí do informační systémy , rozšířit analytické schopnosti systémů. Implementace neuronových sítí ve formě komponent, dostupnost open source

umožňuje snadnou integraci do jiných programů. Objektově orientované provádění poskytuje zvláštní flexibilitu, stačí přepsat několik metod a můžete získat komponentu optimalizovanou pro vaše úkoly.

Hierarchie tříd Existují tři základní třídy TNeuron, TLayer, TneuralNet. Všechny ostatní jsou odvozeny od nich. Obrázek 1 ukazuje hierarchii tříd, plné čáry

Dědičnost je zobrazena (potomek je označen šipkou), tečkovanými čarami, ve kterých třídách jsou použity. TNeuron

je základní třída pro neurony, nese všechny základní funkce, má indexovanou vlastnost Weights, která představuje váhové koeficienty (synapse), vlastnost Output, což je výstup neuronu (výsledek výpočtů) a sčítačku, roli z toho se provádí metodou ComputeOut. TNeuronHopf , potomek TNeuronu, implementuje neuron používaný v Hopfieldově neuronové síti, jediný rozdíl od, je použití aktivační funkce v přepsané metodě ComputeOut.

Další vygenerovaná třída je TNeuronBP zaměstnanec pro implementace softwaru vícevrstvé neuronové sítě. Zkratka BP v názvu třídy by vás neměla zmást, že neuron tohoto typu se používá výhradně v sítích trénovaných pomocí algoritmu backpropagation, tím jsme ještě jednou chtěli zdůraznit, že v našem případě je neuronová síť trénována pomocí tohoto algoritmu.
Metoda ComputeOut byla přepsána pro použití nelineární aktivační funkce, která je implementována jako indexovaná vlastnost procedurálního typu OnActivationF. Navíc přibyly dvě důležité vlastnosti, Delta – obsahující lokální chyba a indexovaná vlastnost PrevUpdate – obsahující míru korekce váhových koeficientů o předchozí krok výuková síť.

Hlavní účel základní třídy Vrstva a jeho potomků TLayerHopf A TLayerBP je spojit neurony do vrstvy pro zjednodušení práce s neurony.

Komponent TneuralNet základní komponenta pro všechny typy neuronových sítí. TneuralNet poskytuje nezbytnou funkčnost pro odvozené komponenty. Tato komponenta podporuje metody pro práci se síťovými vrstvami (AddLayer, DeleteLayer) a metody pro manipulaci se zdrojovými daty (AddPattern, DeletePattern, ResetPatterns). Metoda Init se používá k vybudování neuronové sítě. Většina metod uvedených v sekci veřejnost v základní komponentě a jejích potomcích - virtuálních, což usnadňuje jejich překrývání.
Komponenta TneuralNetHopf implementuje Hopfieldovu neuronovou síť.

Navíc jsou zahrnuty následující metody: InitWeights - ukládá prezentované vzorky do obrazové matice a metoda Calc - vypočítává výstup Hopfieldovy sítě.

Komponent TneuralNetBP implementuje vícevrstvou neuronovou síť trénovanou pomocí algoritmu backpropagation.

Dále jsou zahrnuty následující metody: Compute – vypočítá výstup neuronové sítě, který se používá po trénování sítě; TeachOffLine – trénuje neuronovou síť.

Komponenta umožňuje navrhnout neuronovou síť v režimu návrhu, v okně Object Inspector, přidáním nebo odebráním vrstev a neuronů v síti. Chcete-li to provést, použijte editor vlastností NeuronsInLayer, který vypadá takto:

Kompatibilní s Neural Network Wizard Další složkou je odvozený od TneuralNetBP, který poskytuje plnou kompatibilitu s průvodcem neuronovou sítí. Navíc jsou zahrnuty následující metody: pro zápis (LoadPhase1, LoadPhase2, LoadPhase4, LoadNetwork) a čtení (SavePhase1, SavePhase2, SavePhase4, SaveNetwork) trénované neuronové sítě ve formátu *.nnw; LoadDataFrom – načte data z textový soubor, stejně jako metoda NormalizeData pro normalizaci vstupních a výstupních dat; Train – pro trénování neuronové sítě; ComputeUnPrepData – pro výpočet síťového výstupu, který se používá, pokud vaše vstupní hodnoty nejsou normalizované.

Komponenta umožňuje vybrat požadovaná pole v režimu návrhu, v okně Object Inspector, a také nastavit typ normalizace pole. Pro tyto účely se používá editor vlastností, který vypadá takto:

Komponenta TneuralNetExtented je jednou z nejvýkonnějších v knihovně NeuralBase. Pomocí této komponenty můžete získat hotovou, plně funkční aplikaci během několika minut.

Demo programy

Jako demonstrační příklady jsou uvedeny tři programy, které ukazují možnosti navrhovaných komponent.

Naprogramovat Uznání pomocí komponenty TneuralNetHopf implementuje Hopfieldovu neuronovou síť. Program řeší problém rozpoznávání vzorů. Na vstup sítě je přiveden určitý obraz, případně zkreslený nebo neúplný a neuronová síť obraz obnoví, tzn. přiřadí prezentovaný obrázek k jednomu z obrázků uložených sítí nebo v případě selhání problémy nový obrázek, někdy nazývaná „chiméra“.

Naprogramovat XOR_Problém, implementuje funkci XOR, což je standardní test od slavného díla Minskyho a Paperta „Perceptrony“. Program je založen na komponentě TneuralNetBP.

Naprogramovat EasyNNW, využívající komponentu TneuralNetExtented, je analogem programu, jediný rozdíl od NNW je poněkud „odlehčené“ rozhraní. Tento příklad ukazuje, jak snadné a rychlé je vytvářet programy, které implementují neuronové sítě s poměrně dobrou funkčností na základě knihovny komponent NeuralBase.

Co jsou to neuronové sítě

Tak tomu říkají výpočetní modely spolu se softwarem a hardwarem pro jejich implementaci. Neuronové sítě se objevily na přelomu 50. a 60. let 20. století a od té doby zaznamenaly několik vývojových skoků, po nichž následovaly klidové režimy. Současná etapa vývoje začala přibližně před deseti lety, kdy výpočetní výkon počítače se rozrostly a vědci zlepšili principy trénování hlubokých (vícevrstvých) neuronových sítí.

Schopnost učit se - klíčová vlastnost neuronové sítě. Pravidelný program funguje striktně podle zavedených algoritmů - v podstatě to podrobné pokyny u problémů, jejichž řešení bylo předem promyšleno. A neuronové sítě se do jisté míry podobají lidský mozek a sami hledají způsob, jak se s problémem vyrovnat. Na základě vstupních a výstupních informací najdou vzory a v podobné situaci pak hledají odpověď. Pokud například nahrajete tisíce fotografií koček do správně nakonfigurované neuronové sítě, ta časem pochopí, co určuje vzhled tohoto zvířete, a na nových obrázcích nebo videích mazlíčka pozná. Rozpoznávání obrazu však není zdaleka jedinou oblastí použití.

Jak fungují a proč jsou potřeba

Neuronové sítě se skládají z jednoduchých procesních jednotek strukturovaných jako mozkové buňky. Jak neurony přijímají a přenášejí elektrický impuls a procesory přijímají a následně předávají signál (může to být fotografie nebo jiná nestrukturovaná informace).

Pravidelný počítačové programy zabývat se dlouhými sekvencemi výpočtů a ne tím nejlepším možným způsobem vyrovnat se s paralelními proudy. Naopak v neuronových sítích jsou řetězce výpočtů krátké, ale je jich hodně a zpracovávají se současně – stejně jako v mozku, kde pár buněk provádí mnoho jednoduchých operací.

Neuronové sítě si lépe poradí s úlohami, ve kterých je potřeba rozpoznávat vzorce, vzorce – obecně tam, kde člověk resp známé aplikace obvykle vzdát. Používají se v různých druzích předpovědí (od akciových trhů po počasí), rozpoznávání řeči, obrázků, tváří, rukopisu, diagnostice nemocí, překladu z jazyka do jazyka, analýze textu, řízení rizik a dalších oblastech. V budoucnu vědci a nadšenci doufají, že přijdou univerzální architektura zpracovávat jakákoli data. Mezitím se staví speciální sítě v závislosti na úkolu, někdy vtipné nebo prostě vtipné.

7 nejzábavnějších použití neuronových sítí

Norský programátor Lars Eidnes se rozhodl dodat počítači kreativní jiskru. Nejprve pomocí neuronové sítě napsal chytlavé internetové titulky v duchu „Sedm tajemství dlouhověkosti, o kterých tibetští lamové mlčí“. Za tímto účelem si stáhl přibližně 2 miliony příkladů ze stránek, které jsou významnými osobnostmi tohoto žánru: BuzzFeed, Gawker, Jezebel, The Huffington Post a Upworthy. Po školení začala síť produkovat titulky, z nichž většina měla správnou gramatiku a na některých místech byl dokonce náznak významu. Poté Eidnes spustil , napsaný výhradně neuronovými sítěmi. Nové poznámky se na něm objevují každých 20 minut a domovskou stránku se tvoří na základě zobrazení článku a hlasování čtenářů. Dnes Click-o-Tron uvádí, že James Cameron brání možné problémy s gayi dovršila Miley Cyrus 13 let a navíc nabízí k přečtení 16 nejvhodnějších měst pro restauraci v kuchyni.

Něco podobného udělal Aaron Suppouris, novinář technologického webu Engadget. Použil bota založeného na stejné neuronové síti, jakou měl Eidnes, a nahrál tam texty Engadgetu. Ve třetí verzi se robot naučil kopírovat styl autorů webu a produkoval více či méně srozumitelné poznámky. Pravda, Suppouris věří, že bez úžasných inovací neuronové sítě nikdy nenahradí žijícího novináře, ale budou užitečné jako pohodlný pomocný nástroj.

Jiní experimentátoři si stanovili ještě mimořádnější cíle. Jedna neuronová síť psala projevy ve stylu Baracka Obamy – vždy si přála Boží požehnání. Další stáhl knihy o Harrym Potterovi a získal dobrodružství mladého čaroděje. Třetí síť je založena na romantických románech a řádcích z písní Taylor Swift, takže počítač dokáže obrázky na obrázcích správně popsat. Pikantní čtení jsou i výzkumníci Googlu, aby se naučila psát podobným stylem. Pravda, nedělali to pro zábavu, ale pro obchod: beletrie nízké úrovně by měla humanizovat jazyk hlasový asistent a e-mailového klienta.

Neuroepigon Egora Letova

Neuronové sítě složily hudbu více než jednou a mezi člověkem a strojem existuje mnohem méně tvůrčích spojení. Nejhlasitější z posledních je album semivirtuálního souboru „Neural Defense“. Na konci června analytik Yandex Ivan Yamshchikov a jeho přítel Alexey Tikhonov zveřejněno tucet písní, ke kterým počítač napsal texty.

Nejprve Tikhonov přišel s napodobovacím botem, který skládal v duchu Kharmse a Puškina - jeho přátelé chtěli s touto kreativitou něco udělat a nahráli poezii svého oblíbeného zpěváka Jegora Letova na síť, obdrželi stylově ověřené verše. , a pak je zazpíval s kytarou a bubnem. Album s názvem "404", . Soudě podle hodnocení byli fanoušci spokojeni.


Pokud neuronová síť umí psát, pak to nemusí být novinář, E. L. James nebo William Shakespeare. Takto zdůvodnil postgraduální student z University of Alabama a zveřejnil všechny známé mapy desková hra Magic: The Gathering. Počítač je zpracoval a začal vymýšlet vlastní. Mnohé z karet se ukázaly jako zbytečné, jiné byly nedokončené (např. akce je naznačena, ale bez podmínek použití). Síť se však postupem času dostala na kloub a trochu se zlepšila.

Brzy se o projektu dozvěděl uživatel Redditu pod pseudonymem Scfdivine. Pokus zopakoval, ale s kartami z podobného. V důsledku toho bylo méně karet a většina z nich narušila rovnováhu hry. Ačkoli se někteří odborníci shodli, že síť má příliš malý vzorek (Relativně nedávno se objevil Hearthstone) a počítač postrádal energii - jinak by byla zkušenost úspěšnější.


Programátor Robert Bond z Nvidia využívá neuronové sítě spolu s chytrými zařízeními. Předloňskou zimu se rozhodl pobavit svá vnoučata nízkoenergetickým laserem, mechanikami a zrcadly z tiskárny. Potom nahrál do neuronové sítě video mravenců, aby se počítač mohl naučit rozlišovat mezi těmito hmyzy, a naučil tuto techniku ​​všímat si hmyzu v kuchyni a nasměrovat na ně jasný paprsek – ne smrtící, ale otravný.

Bond nedávno zachránil své manželce vzácné květinové záhony. Programátor ukázal síťové obrázky koček, zabudoval senzory do zavlažovacího systému na dvoře a zavěsil kameru: jakmile se kočka přiblíží ke květinám, . Zvířata sousedů je podle Bonda už nenavštěvují.


Slavná služba FindFace vyhledává lidi pomocí profilových fotografií na VKontakte a tým vědců z řecké univerzity v Patrasu se naučil rozpoznávat opilé lidi z fotografií – nikoli běžných, ale infračervených. Vědci shromáždili 41 dobrovolníků, nalili jim víno, vyfotografovali je a... Nejprve několik neuronových sítí studovalo různé oblasti obličeje odděleně. Ukázalo se, že při pití se mění hlavně teplota čela. Dále se síť podívala na celé tváře. Díky tomu se naučila rozlišovat střízlivého od opilého. Vývoj se zdá kuriózní už jen na první pohled: pokud auta a veřejná prostranství vybavíte IR kamerami, můžete rychle identifikovat možné pachatele.

Video-Prisma

Sociální sítě byly donedávna zaplavovány podobnými fotografiemi, stylizovanými do obrazů velkých umělců, které používají Aplikace Prisma. Zpracované záběry vypadaly svěže, ale nápad samotný... Loni v létě publikovali vědci z univerzity v Tübingenu práci „Neural Algorithm for Artistic Style“, ve které nastínili svůj způsob transformace obrazu do stylu jiného obrazu. Výše zmíněná norská technologie Eidnes pro video. K tomu musel oklamat neuronovou síť tak, aby sousední snímky nezpracovávala odděleně a libovolně, ale podobným způsobem. Eidnes napsal kód pro měření optického toku mezi snímky – dokázal určit, jak se zachycené objekty pohybovaly, a neuronová síť při překreslování zohledňovala posun. Pro test byl vybrán videoklip skupiny The xx k písni Islands: nyní v něm lze hádat Pollocka, Matisse a malby ze starožitných amfor. Pravda, brzy si s programem hrát nebude možné: ani na mocná žláza jeden snímek se zpracovává celé tři minuty.

Algorithmia platforma, kde si to může vyzkoušet každý. Chcete-li fotografii vybarvit, uveďte na ni odkaz. Po zpracování je uživatel vyzván k porovnání originálu a barevné verze. Někdy nejsou výsledky příliš působivé, ale vývojáři slibují, že program v blízké budoucnosti vylepší.

Tentokrát jsem se rozhodl pro studium neuronových sítí. Během léta a podzimu 2015 se mi podařilo získat základní dovednosti v této věci. Základními dovednostmi mám na mysli, že si sám dokážu vytvořit jednoduchou neuronovou síť od nuly. Příklady najdete v mých repozitářích GitHub. V tomto článku podám některá vysvětlení a podělím se o zdroje, které se vám mohou hodit ve vaší studii.

Krok 1. Neurony a dopředná metoda

Co je tedy „neuronová síť“? Počkejme s tím a nejprve se vypořádejme s jedním neuronem.

Neuron je jako funkce: jako vstup přijímá několik hodnot a vrací jednu.

Kruh níže představuje umělý neuron. Přijme 5 a vrátí 1. Vstupem je součet tří synapsí připojených k neuronu (tři šipky vlevo).

Na levé straně obrázku vidíme 2 vstupní hodnoty ( zelený) a ofsetem (zvýrazněno hnědě).

Vstupní data mohou být numerická reprezentace dvou různé vlastnosti. Například při vytváření spamového filtru mohou znamenat přítomnost více než jednoho slova psaného VELKÝMI PÍSMENY a přítomnost slova „Viagra“.

Vstupní hodnoty jsou vynásobeny jejich takzvanými „váhy“, 7 a 3 (zvýrazněny modře).

Nyní sečteme výsledné hodnoty s offsetem a získáme číslo, v našem případě 5 (zvýrazněno červeně). Toto je vstup našeho umělého neuronu.

Poté neuron provede nějaký výpočet a výstupy výstupní hodnota. Máme 1, protože zaokrouhlená hodnota sigmatu v bodě 5 je 1 (o této funkci si povíme podrobněji později).

Pokud by se jednalo o spamový filtr, výstup 1 by znamenal, že text byl neuronem označen jako spam.

Ilustrace neuronové sítě z Wikipedie.

Pokud tyto neurony spojíte, získáte přímo se šířící neuronovou síť – proces jde od vstupu k výstupu, přes neurony propojené synapsemi, jako na obrázku vlevo.

Krok 2. Sigmoid

Poté, co zhlédnete lekce Welch Labs, je dobré podívat se na 4. týden kurzu strojového učení Coursera o neuronových sítích, který vám pomůže pochopit, jak fungují. Kurz jde hodně hluboko do matematiky a je založen na Octave, zatímco já preferuji Python. Kvůli tomu jsem vynechal cvičení a naučil se všechno potřebné znalosti z videa.

Sigmoid jednoduše mapuje vaši hodnotu (na vodorovné ose) do rozsahu od 0 do 1.

Mojí první prioritou bylo studovat sigmatu, protože figuruje v mnoha aspektech neuronových sítí. Něco jsem o tom věděl už od třetího týdne výše zmíněného kurzu, tak jsem se na video podíval odtamtud.

Jen s videi se ale daleko nedostanete. Pro úplné pochopení jsem se rozhodl kódovat sám. Začal jsem tedy psát implementaci algoritmu logistické regrese (který používá sigmoid).

Trvalo to celý den a výsledek byl stěží uspokojivý. Ale to je jedno, protože jsem přišel na to, jak všechno funguje. Kód lze vidět.

Nemusíte to dělat sami, protože to vyžaduje speciální znalosti - hlavní věc je, že rozumíte tomu, jak sigmoid funguje.

Krok 3. Metoda zpětného šíření

Pochopit, jak neuronová síť funguje od vstupu po výstup, není tak těžké. Je mnohem obtížnější pochopit, jak se neuronová síť učí z datových souborů. Princip, který jsem použil, se nazývá




Nahoru