Stručná odpoveď
Neurónová sieť je matematický model zložený z vrstiev parametrických transformácií. Počas tréningu upravuje váhy tak, aby znižovala definovanú chybu. Jej kvalita závisí od dát, architektúry, cieľovej funkcie, validácie a prevádzkového dohľadu, nie iba od počtu vrstiev alebo parametrov.
Neurónové siete patria medzi najvýznamnejšie modelové rodiny súčasnej umelej inteligencie. Umožnili zásadný pokrok v rozpoznávaní obrazu a reči, spracovaní prirodzeného jazyka, predikcii časových radov aj tvorbe generatívnych systémov. Ich popularita však vytvorila aj nepresný obraz, podľa ktorého stačí pridať vrstvy, dáta a výpočtový výkon a model automaticky pochopí problém. V skutočnosti neurónová sieť zostáva matematickým modelom, ktorého správanie závisí od zvolenej architektúry, tréningových dát, stratovej funkcie, optimalizácie a kontrolných mechanizmov.
Čo sú neurónové siete
Neurónová sieť je funkcia zložená z vrstiev parametrických transformácií. Vstupný vektor prechádza cez jednu alebo viac skrytých vrstiev a výsledkom je výstup, napríklad pravdepodobnosť triedy, číselná predikcia, reprezentácia textu alebo ďalší token. Parametre siete, najmä váhy a biasy, sa počas tréningu upravujú tak, aby sa znižovala chyba voči definovanému cieľu.
Najjednoduchšiu výpočtovú jednotku možno zapísať ako z = Σ(wᵢxᵢ) + b a a = φ(z). Symbol x označuje vstupy, w váhy, b bias a φ aktivačnú funkciu. Váha vyjadruje, ako silno konkrétny vstup ovplyvňuje výpočet. Bias posúva rozhodovaciu hranicu a aktivácia vnáša nelinearitu. Bez nelineárnych aktivácií by sa aj viac vrstiev zložilo na jedinú lineárnu transformáciu a sieť by nedokázala reprezentovať zložité nelineárne vzťahy.
Dôležitá hranica biologickej analógie Názov neurón vznikol historickou inšpiráciou biologickým nervovým systémom. Umelý neurón však nepopisuje elektrochemické správanie biologickej bunky. Je to výpočtová operácia nad číslami. Analógia pomáha pri pomenovaní siete a spojení, no nemá sa používať ako dôkaz, že model myslí, cíti alebo chápe rovnakým spôsobom ako človek.
Architektúra neurónovej siete a úloha vrstiev
Architektúra určuje, ako sú výpočtové jednotky prepojené, aké operácie jednotlivé vrstvy vykonávajú a kadiaľ môže prúdiť informácia. Pri feedforward sieti postupuje informácia od vstupu k výstupu bez spätných cyklov. Pri rekurentnej sieti sa stav prenáša medzi krokmi sekvencie. Pri konvolučnej sieti sa rovnaký filter aplikuje na viaceré lokálne oblasti. Transformer vytvára vzťahy medzi prvkami sekvencie pomocou mechanizmu attention.
Vstupná vrstva preberá reprezentáciu údajov. Pri obraze môže ísť o hodnoty pixelov, pri tabuľkových dátach o normalizované znaky, pri texte o identifikátory tokenov prevedené na vektory. Skryté vrstvy postupne transformujú reprezentáciu. Výstupná vrstva musí zodpovedať typu úlohy. Regresia môže používať jeden lineárny výstup, binárna klasifikácia sigmoid a viacnásobná klasifikácia softmax rozdelenie nad triedami.
Pojem parameter označuje hodnotu, ktorú sa sieť učí, napríklad váhu alebo bias. Aktivácia je medzivýsledok vytvorený pri konkrétnom vstupe. Hyperparameter sa zvyčajne nenaučí rovnakým spôsobom a nastavuje sa pred alebo počas experimentu. Patrí sem počet vrstiev, šírka vrstiev, learning rate, batch size, regularizácia alebo voľba optimalizátora. Toto rozlíšenie je praktické, pretože model môže mať milióny parametrov, no zlyhať kvôli niekoľkým zle zvoleným hyperparametrom alebo nekvalitnému rozdeleniu dát.

Schéma 1: Feedforward neurónová sieť. Dopredný prechod vytvára predikciu, spätné šírenie počíta gradienty potrebné na úpravu parametrov.
Ako sa neurónová sieť učí
Tréning siete je opakovaný cyklus štyroch krokov. Najprv prebehne dopredný výpočet, pri ktorom sa z aktuálnych parametrov vytvorí predikcia. Potom stratová funkcia vyčísli rozdiel medzi predikciou a cieľom. Backpropagation vypočíta gradienty, teda citlivosť chyby na zmenu jednotlivých parametrov. Optimalizátor napokon upraví parametre v smere, ktorý má stratu znížiť.
Dopredný prechod a stratová funkcia
Pri doprednom prechode sa vstup násobí váhami, dopĺňa biasom a prechádza aktivačnými funkciami. Tento postup sa opakuje vrstvu po vrstve. Výstup sa porovná s cieľom pomocou stratovej funkcie. Pri regresii môže ísť o strednú kvadratickú chybu, pri klasifikácii často o cross-entropy. Voľba straty nie je kozmetická. Definuje, čo model počas učenia považuje za chybu a aké kompromisy bude optimalizovať.
Strata na tréningovej množine nie je to isté ako kvalita v praxi. Sieť môže minimalizovať zvolenú funkciu a zároveň zlyhávať na zriedkavých prípadoch, na novej populácii alebo pri zmene procesu. Preto sa už pri návrhu musí oddeliť tréningová strata, validačné metriky a prevádzkové ukazovatele, napríklad cena falošného poplachu, čas reakcie alebo bezpečnostný dopad chyby.
Backpropagation a reťazové pravidlo
Backpropagation nie je samostatný typ siete. Je to efektívny postup na výpočet derivácií zloženej funkcie. Využíva reťazové pravidlo diferenciálneho počtu a postupuje od výstupnej chyby smerom k skorším vrstvám. Každý parameter dostane gradient, ktorý vyjadruje, ako by malá zmena parametra ovplyvnila stratu. Vplyvný článok Rumelharta, Hintona a Williamsa z roku 1986 opísal postup, pri ktorom sa váhy opakovane upravujú tak, aby sa minimalizoval rozdiel medzi skutočným a požadovaným výstupom. Skryté jednotky sa tým môžu naučiť vnútorné reprezentácie relevantné pre úlohu [2].
Backpropagation možno prirovnať k technickému rozpisu zodpovednosti za odchýlku vo viacstupňovom procese. Konečná chyba sa rozdelí podľa toho, ako jednotlivé operácie prispeli k výsledku. Analógia sa však končí pri myšlienke rozpisu. Gradient nevyjadruje ľudskú vinu ani kauzalitu, iba lokálnu matematickú citlivosť stratovej funkcie.
Optimalizátor, learning rate a batch
Gradient určuje smer zmeny, no samotnú aktualizáciu vykonáva optimalizátor. Základný gradient descent používa gradient celej množiny. V praxi sa často pracuje s minibatchmi, teda menšími skupinami príkladov. To znižuje pamäťové nároky a prináša šum, ktorý môže pomôcť pri hľadaní použiteľného riešenia. Learning rate určuje veľkosť kroku. Príliš vysoká hodnota môže tréning rozkolísať, príliš nízka ho výrazne spomalí alebo uviazne v nevhodnej oblasti.
Jedna epocha znamená, že tréningový proces spracoval všetky tréningové príklady. Viac epoch neznamená automaticky lepší model. Po určitom bode môže tréningová strata ďalej klesať, zatiaľ čo validačný výkon sa zhoršuje. Tento rozdiel je typickým prejavom overfittingu.
Aktivačné funkcie, prečo sieť potrebuje nelinearitu
Aktivačná funkcia určuje, ako sa lineárna kombinácia vstupov zmení na výstup jednotky. Sigmoid mapuje hodnoty do intervalu od 0 do 1 a je vhodný napríklad na výstup binárnej pravdepodobnosti. Funkcia tanh mapuje do intervalu od mínus 1 do 1. ReLU vracia nulu pre záporné vstupy a kladnú hodnotu ponecháva. GELU vstup plynulo váži a používa sa v mnohých transformerových modeloch.
Sigmoid a tanh sa pri veľkých absolútnych hodnotách saturujú, ich derivácie sú malé a gradient sa môže pri prechode cez veľa vrstiev strácať. ReLU pomohla zjednodušiť tréning hlbších sietí a práca Glorota, Bordesa a Bengia z roku 2011 ukázala výhody hlbokých sietí s rectifier jednotkami [3]. ReLU má však vlastné riziko, jednotka môže zostať dlhodobo neaktívna, ak sa jej vstup dostane do zápornej oblasti. Výber aktivácie preto závisí od vrstvy, architektúry a cieľa, nie od jedného univerzálneho pravidla.

Graf 1: Presné matematické priebehy vybraných aktivačných funkcií. Graf nepredstavuje experimentálne meranie, ale vizualizáciu definovaných funkcií.
Prečo hĺbka pomáha a prečo môže škodiť
Hlboká sieť skladá viac transformácií. V obraze môžu skoršie vrstvy reagovať na lokálne hrany a textúry, stredné vrstvy na časti objektov a neskoršie vrstvy na kombinácie užitočné pre klasifikáciu. Toto vysvetlenie je užitočné ako zjednodušený obraz hierarchie reprezentácií, nie ako pravidlo, že každá jednotka má ľahko pomenovateľný význam. Reprezentácie sú často distribuované medzi veľa parametrov a aktivácií.
Väčšia hĺbka zvyšuje kapacitu, ale aj nároky na dáta, optimalizáciu, pamäť, energiu a kontrolu. Gradient môže miznúť alebo explodovať, model sa môže preučiť, tréning môže byť nestabilný a výsledok môže byť citlivý na inicializáciu. Praktické riešenia zahŕňajú vhodné aktivácie, inicializáciu, normalizáciu, reziduálne spojenia, gradient clipping, regularizáciu a dôslednú validáciu. Žiadna z týchto techník nenahrádza správne definovaný cieľ a reprezentatívne dáta.
CNN, konvolučné neurónové siete
Konvolučná neurónová sieť je špecializovaná na dáta s mriežkovou štruktúrou, najmä obrazy, ale aj jednorozmerné signály a časové rady. Základom je konvolučný filter, malá matica parametrov, ktorá sa posúva po vstupe a vytvára mapu príznakov. Rovnaké váhy sa používajú na viacerých miestach, čím sa znižuje počet parametrov a model sa učí detegovať podobný lokálny vzor bez ohľadu na jeho presnú polohu [1].
Typická CNN kombinuje konvolúcie, aktivačné funkcie a operácie, ktoré zmenšujú priestorové rozlíšenie alebo menia počet kanálov. Pooling bol historicky častý spôsob redukcie rozmerov, dnešné architektúry môžu používať aj konvolúcie so stride. V hlbších vrstvách sa receptive field zväčšuje, takže jednotka reaguje na väčšiu časť obrazu.
Práca LeCuna a spoluautorov z roku 1998 ukázala gradientové učenie konvolučných sietí pri rozpoznávaní dokumentov [4]. AlexNet v roku 2012 priniesol výrazný posun v klasifikácii ImageNet. Autori trénovali sieť na približne 1,3 milióna obrázkov v 1000 triedach, model mal približne 60 miliónov parametrov, päť konvolučných a dve plne prepojené vrstvy a dosiahol top-5 testovaciu chybu 18,9 percenta [5]. Historický význam výsledku nespočíva iba v jednom skóre. Ukázal silu kombinácie hlbšej CNN, veľkého datasetu, GPU výpočtov, ReLU a regularizácie.
CNN dáva zmysel pri vizuálnej kontrole, segmentácii, lokalizácii objektov, analýze medicínskych snímok alebo spracovaní signálov. Nestačí však natrénovať model na pekných laboratórnych obrázkoch. Výkon môže klesnúť pri inom osvetlení, kamere, rozlíšení, materiáli alebo populácii. Pri bezpečnostne citlivom použití treba validovať model na dátach z reálneho pracoviska a sledovať zmenu vstupov po nasadení.
RNN, rekurentné siete pre sekvencie
Rekurentná neurónová sieť spracúva sekvenciu po krokoch a prenáša skrytý stav. Stav h(t) vzniká z predchádzajúceho stavu h(t-1) a aktuálneho vstupu x(t). Rovnaké parametre sa používajú vo viacerých časových krokoch. Vďaka tomu môže model pracovať so sekvenciami rôznej dĺžky a zdieľať naučené pravidlá naprieč pozíciami. Učebnica Deep Learning opisuje stav RNN ako stratovú sumarizáciu relevantných informácií z doterajšej sekvencie [1].
RNN sa používali pri modelovaní jazyka, rozpoznávaní reči, časových radoch a sekvenčnej klasifikácii. Základná rekurencia však trpí problémom miznúcich a explodujúcich gradientov. Pri spätnom šírení cez veľa krokov sa gradient opakovane násobí. Môže sa zmenšiť takmer na nulu, takže model sa nenaučí vzdialené závislosti, alebo nekontrolovane narásť a destabilizovať tréning.
RNN nie je automaticky najlepšou voľbou pre každý časový rad. Ak rozhoduje krátke lokálne okno, môže postačovať konvolučný alebo klasický štatistický model. Ak je celý kontext dostupný naraz a potrebujeme efektívne paralelné spracovanie, transformer môže byť vhodnejší. Výber má vychádzať z dĺžky sekvencie, dostupnosti budúceho kontextu, latency, výpočtových nákladov a množstva dát.
LSTM a riadený tok informácií
Long short-term memory, LSTM, vznikla ako odpoveď na problém nedostatočného spätného toku chyby pri dlhých časových závislostiach. Hochreiter a Schmidhuber v roku 1997 predstavili bunky s mechanizmami, ktoré umožňujú udržiavať tok informácie a učiť sa dlhšie oneskorenia [6]. Neskoršie rozšírenie pridalo forget gate, ktorá sa učí, kedy má stav uvoľniť alebo zabudnúť [7].
LSTM bunka pracuje s bunkovým stavom a bránami. Input gate riadi zápis novej informácie, forget gate určuje, čo sa má oslabiť, a output gate ovplyvňuje, čo sa prenesie do výstupného skrytého stavu. Brány nie sú vedomé rozhodnutia. Sú to parametrické funkcie, ktorých hodnoty sa učia gradientom.
LSTM dokáže lepšie než jednoduchá RNN zachytiť dlhšie závislosti, no nie je bez limitov. Spracovanie zostáva prevažne sekvenčné, tréning môže byť pomalší a stav s pevnou veľkosťou stále predstavuje kompresiu minulosti. Pri veľmi dlhom kontexte alebo pri úlohách, kde treba porovnávať veľa vzdialených prvkov naraz, môže byť výhodnejšia attention architektúra.
Transformery a mechanizmus attention
Transformer je neurónová architektúra založená na attention. Pôvodná práca Vaswaniho a spoluautorov z roku 2017 navrhla model bez rekurencie a konvolúcie v hlavnom sekvenčnom bloku. Autori zdôraznili vyššiu paralelizovateľnosť a úspech v strojovom preklade [8]. Transformery sa neskôr stali základom veľkých jazykových modelov, no architektúra sa používa aj pri obraze, zvuku, biológii a multimodálnych dátach.
Self-attention vytvára pre každý prvok tri reprezentácie, query, key a value. Kompatibilita query s keys určuje váhy, ktorými sa kombinujú values. Prakticky to umožňuje, aby sa reprezentácia slova, obrazového patchu alebo iného prvku vytvorila s ohľadom na ostatné relevantné prvky v kontexte. Multi-head attention používa viac paralelných projekcií, aby model mohol zachytiť rozdielne typy vzťahov.
Attention nie je ľudská pozornosť a attention váha nie je automaticky vysvetlením rozhodnutia. Mechanizmus ukazuje, ako model počas výpočtu mieša reprezentácie, nie nevyhnutne kauzálny dôvod konečného výstupu. Transformery tiež prinášajú vysoké nároky na pamäť a výpočty, najmä pri dlhých sekvenciách, pretože štandardná self-attention porovnáva veľa dvojíc prvkov.
Historické míľniky, ktoré menili architektúry
| Rok | Práca alebo architektúra | Čo priniesla | Praktický význam |
|---|---|---|---|
| 1986 | Backpropagation, Rumelhart, Hinton, Williams | Efektívne učenie viacvrstvových sietí pomocou gradientov | Skryté vrstvy sa mohli učiť vnútorné reprezentácie |
| 1997 | LSTM | Riadený tok informácie a gradientu cez dlhšie sekvencie | Lepšie modelovanie dlhších časových závislostí |
| 1998 | LeNet a gradientové CNN | Konvolúcie, zdieľanie váh a učenie vizuálnych príznakov | Praktické rozpoznávanie dokumentov a obrazu |
| 2012 | AlexNet | Hlbšia CNN, GPU, ReLU, dropout a veľký obrazový dataset | Výrazný návrat hlbokých sietí do hlavného prúdu počítačového videnia |
| 2017 | Transformer | Self-attention bez rekurencie v hlavnom sekvenčnom bloku | Paralelné spracovanie sekvencií a základ mnohých dnešných modelov |
Tabuľka 1: Vybrané míľniky, ktoré pomáhajú pochopiť vývoj dnešných neurónových architektúr.
Kedy použiť CNN, RNN, LSTM alebo Transformer
Názov architektúry nemá byť východiskom projektu. Najprv treba určiť štruktúru dát, dĺžku závislostí, dostupnosť kontextu, požiadavku na latency, veľkosť datasetu a cenu chyby. Nasledujúca tabuľka ukazuje typické použitie, nie absolútne pravidlo. Moderné systémy často kombinujú viac architektúr.
| Architektúra | Silná stránka | Typické dáta | Príklad | Hlavný limit |
|---|---|---|---|---|
| MLP alebo dense sieť | Všeobecná nelineárna aproximácia pri pevnom vstupe | Tabuľkové znaky, embeddingy, kombinované vstupy | Skórovanie alebo predikcia z pevného vektora | Neberie prirodzene do úvahy priestorovú ani sekvenčnú štruktúru |
| CNN | Lokálne vzory a zdieľanie váh | Obraz, signál, časové okná | Kontrola povrchu výrobku | Citlivosť na zmenu domény a obmedzený globálny kontext bez ďalších vrstiev |
| RNN | Sekvenčný stav a zdieľanie parametrov v čase | Text, signál, udalosti | Sekvenčná klasifikácia | Miznúce gradienty a prevažne sekvenčný výpočet |
| LSTM alebo GRU | Lepšie udržanie relevantnej informácie | Dlhšie časové rady a sekvencie | Predikcia z časového priebehu | Vyššia zložitosť a stále komprimovaný stav |
| Transformer | Vzťahy medzi prvkami a paralelné spracovanie | Text, obrazové patche, multimodálne dáta | Preklad, vyhľadávanie, generovanie | Pamäťová a výpočtová náročnosť pri dlhom kontexte |
Tabuľka 2: Praktické porovnanie architektúr. Skutočný výber má potvrdiť experiment s baseline modelmi a validačnými dátami.
Praktické príklady neurónových sietí
Vizuálna kontrola kvality vo výrobe
CNN môže z obrazu odhadnúť, či je výrobok poškodený, kde sa chyba nachádza a aký má typ. Hodnota nevzniká iba presnosťou modelu. Potrebný je stabilný obrazový proces, definované osvetlenie, reprezentatívne príklady chýb a spôsob, ako pracovník preverí neisté prípady. Pri zmene kamery alebo materiálu treba kontrolovať posun dát. Model, ktorý dosahoval vysoké skóre v laboratóriu, môže v prevádzke zlyhať na odleskoch, nečistotách alebo novom type defektu.
Analýza reči a zvuku
Neurónové siete môžu prevádzať reč na text, klasifikovať zvukové udalosti alebo odhadovať stav zariadenia zo zvukového signálu. CNN pracuje s časovo-frekvenčnou reprezentáciou, RNN alebo transformer modelujú sekvenčné vzťahy. Kritické sú šum, mikrofón, dialekt, jazyk, vzdialenosť a prostredie. Pri nasadení v slovenčine nestačí výsledok z anglického benchmarku. Potrebné sú lokálne dáta a testovanie na reálnych používateľoch.
Predikcia časových radov
LSTM, temporal CNN alebo transformer môžu pracovať so spotrebou, senzormi, objednávkami alebo prevádzkovými ukazovateľmi. Sieť sa však nesmie hodnotiť iba podľa náhodného rozdelenia riadkov. Časový test musí rešpektovať poradie. Tréning používa minulosť a test simuluje budúcnosť. Inak môže model získať informáciu, ktorá v čase predikcie ešte neexistovala, a výsledok bude umelo optimistický.
Spracovanie textu a jazykové modely
Text sa najprv rozdelí na tokeny a prevedie na vektorové reprezentácie. Transformer potom modeluje vzťahy v kontexte a vytvára ďalšie reprezentácie alebo predikcie tokenov. Jazyková plynulosť neznamená faktickú správnosť. Model optimalizovaný na pravdepodobné pokračovanie môže vytvoriť presvedčivú, ale nepravdivú odpoveď. Pri odbornom použití preto potrebuje zdroje, retrieval, kontrolu citácií, obmedzenie nástrojov a ľudské schválenie podľa rizika.
Odporúčacie a multimodálne systémy
Neurónové siete dokážu vytvárať embeddingy používateľov, produktov, textov a obrazov v spoločnom priestore. Systém potom vyhľadáva podobnosť alebo predikuje interakciu. Multimodálny model môže prepájať text s obrazom, zvukom alebo videom. Najväčšou pascou je nesprávny cieľ. Ak model optimalizuje kliknutie, môže podporovať krátkodobú pozornosť namiesto spokojnosti, bezpečnosti alebo dlhodobej hodnoty. Technická metrika musí byť prepojená s reálnym účelom.
Najčastejšie zlyhania a čo s nimi robiť
| Prejav | Možná príčina | Ako ho odhaliť | Primeraná reakcia |
|---|---|---|---|
| Tréningová chyba klesá, validačná rastie | Overfitting | Krivky tréningu a výkon na nezávislých dátach | Skoré zastavenie, regularizácia, viac relevantných dát, jednoduchšia sieť |
| Model sa takmer neučí | Miznúce gradienty, nevhodná aktivácia alebo škálovanie | Veľkosť gradientov a aktivácií po vrstvách | ReLU alebo príbuzná aktivácia, normalizácia, reziduálne spojenia, lepšia inicializácia |
| Strata prudko rastie alebo vzniká NaN | Explodujúce gradienty alebo príliš vysoký learning rate | Logovanie gradientov a numerických hodnôt | Gradient clipping, nižší learning rate, kontrola dát a numeriky |
| Skvelý test, slabá prevádzka | Data leakage, nereprezentatívny split alebo posun domény | Časový alebo doménový holdout a audit pipeline | Nové rozdelenie dát, odstránenie leakage, monitoring po nasadení |
| Výkon sa líši medzi skupinami | Nerovnomerné dáta alebo skreslený cieľ | Metriky podľa relevantných skupín a typov chýb | Doplnenie dát, zmena cieľa, prahy podľa rizika, ľudský dohľad |
| Model je presvedčivý, no neistý | Zlá kalibrácia alebo neznáme vstupy | Reliability diagram, OOD testy, intervaly neistoty | Kalibrácia, abstention, fallback proces a jasné označenie neistoty |
Tabuľka 3: Typické prejavy problémov pri tréningu a nasadení neurónových sietí.
Regularizácia, dropout a generalizácia
Regularizácia obmedzuje schopnosť modelu prispôsobiť sa nepodstatným detailom tréningových dát. Môže mať podobu penalizácie veľkosti váh, augmentácie dát, skorého zastavenia, zníženia kapacity alebo dropout. Dropout počas tréningu náhodne vypína časť jednotiek, čím bráni prílišnej závislosti na konkrétnej konfigurácii. Pôvodná práca Srivastavu a spoluautorov ho predstavila ako spôsob znižovania overfittingu vo veľkých neurónových sieťach [9].
Regularizácia nie je univerzálny liek. Príliš silná regularizácia vedie k underfittingu. Augmentácia musí zachovať význam cieľa, inak model učíme na nesprávnych príkladoch. Pri medicínskom obraze, priemyselnej kontrole alebo bezpečnosti nemožno automaticky aplikovať ľubovoľné rotácie, orezania alebo syntetické zmeny bez odbornej kontroly.
Interpretovateľnosť a vysvetliteľnosť
Neurónové siete môžu mať milióny alebo miliardy parametrov. To sťažuje jednoduché vysvetlenie, prečo vznikla konkrétna predikcia. Metódy ako saliency mapy, feature attribution, konceptové testy alebo analýza reprezentácií môžu poskytnúť užitočné indície. Nemajú sa však zamieňať s úplným kauzálnym vysvetlením. Vysvetlenie môže byť nestabilné, citlivé na metódu alebo presvedčivé aj pri chybnom modeli.
Primeraná úroveň vysvetlenia závisí od použitia. Pri filtrovaní interných dokumentov môže stačiť overiteľný zdroj a skóre. Pri rozhodovaní o človeku je potrebná výrazne vyššia transparentnosť, proces námietky a zodpovednosť. Ak organizácia nedokáže vysvetliť účel, vstupy, metriky, limity a ľudský dohľad, problém nevyrieši pekná vizualizácia jednej aktivácie.
Ako rozhodnúť, či neurónová sieť dáva zmysel
Neurónová sieť dáva zmysel najmä vtedy, keď problém obsahuje zložité vzory, existuje dostatok relevantných dát a výkon jednoduchších modelov nestačí. Pri obraze, zvuku, texte a multimodálnych dátach býva jej induktívna štruktúra mimoriadne užitočná. Pri malom tabuľkovom datasete však môže byť jednoduchší model presnejší, lacnejší a ľahšie auditovateľný.
Rozhodnutie má začať baseline modelom. Najprv treba vytvoriť jednoduché riešenie, zmerať jeho výkon a cenu chýb. Až potom sa porovná neurónová sieť. Hodnotiť sa musí nielen presnosť, ale aj latency, pamäť, náklady na tréning, dostupnosť ľudí, monitoring, vysvetliteľnosť a právne riziko. Sieť, ktorá zlepší jednu metriku o malú hodnotu, nemusí byť lepším systémom, ak výrazne zvýši prevádzkovú zložitosť.
Rozhodovací test pre prax Použite neurónovú sieť až vtedy, keď viete pomenovať merateľný cieľ, máte reprezentatívne dáta, správne oddelený test, porovnanie s jednoduchším baseline, jasnú cenu chýb a proces monitoringu. Bez týchto prvkov je väčšia architektúra skôr väčším zdrojom neistoty než dôkazom pokroku.
Najčastejšie otázky o neurónových sieťach
Ako funguje neurónová sieť jednoducho
Vstup prechádza cez vrstvy. Každá vrstva vytvorí váženú kombináciu hodnôt, pridá bias a aplikuje aktiváciu. Výstup sa porovná s cieľom a backpropagation vypočíta, ako upraviť parametre. Tento cyklus sa opakuje nad dátami, kým model nedosiahne prijateľný výkon na validačných a testovacích prípadoch.
Aký je rozdiel medzi neurónovou sieťou a deep learningom
Neurónová sieť môže mať aj jednu skrytú vrstvu. Deep learning označuje prístupy s hlbšími architektúrami a viacúrovňovým učením reprezentácií. Hranica počtu vrstiev nie je univerzálne pevná. Podstatná je kompozícia viacerých transformačných stupňov.
Je CNN vhodná iba na obrázky
Nie. Konvolúcia sa používa aj na jednorozmerné signály, časové rady, zvuk a ďalšie dáta s lokálnou štruktúrou. Pri obraze je prirodzená dvojrozmerná mriežka pixelov, preto je CNN s počítačovým videním najsilnejšie spojená.
Prečo LSTM nezmizla po nástupe transformerov
Transformery dominujú mnohým úlohám s veľkým kontextom a dostupným výpočtovým výkonom. LSTM môže stále dávať zmysel pri menších sekvenčných úlohách, streamovaní, obmedzenom hardvéri alebo existujúcich systémoch. Výber závisí od dát, latency a nákladov, nie od popularity architektúry.
Znamená viac parametrov automaticky lepší model
Nie. Väčšia kapacita môže pomôcť, ak sú dáta, tréning a cieľ primerané. Môže však zvýšiť overfitting, náklady, latency a riziko nepredvídateľného správania. Kvalita sa musí overiť na nezávislých dátach a v reálnom procese.
Záver
Neurónové siete sú mimoriadne schopná rodina modelov, pretože dokážu skladať jednoduché transformácie do zložitých reprezentácií. CNN využíva lokálnu štruktúru a zdieľanie váh, RNN prenáša stav sekvenciou, LSTM riadi tok informácie pomocou brán a transformer prepája prvky cez attention. Každá architektúra rieši určitý typ problému, no každá zároveň prináša vlastné limity.
Najdôležitejšou otázkou nie je, koľko vrstiev má model. Dôležitejšie je, čo presne optimalizuje, z akých dát sa učí, ako bol testovaný, aké chyby robí a kto zodpovedá za výsledok. Hlboká sieť môže byť najlepším nástrojom pre obraz, jazyk alebo signál. Môže byť však aj zbytočne drahým riešením problému, ktorý spoľahlivejšie vyrieši jednoduchší model. Odborná práca s neurónovými sieťami preto nezačína obdivom k architektúre, ale disciplinovaným porovnaním cieľa, dát, baseline, rizík a prevádzky.
Použité zdroje
[1] Goodfellow, I., Bengio, Y., Courville, A. Deep Learning. MIT Press, 2016. Kapitoly 6, 9 a 10. https://www.deeplearningbook.org/
[2] Rumelhart, D. E., Hinton, G. E., Williams, R. J. Learning representations by back-propagating errors. Nature 323, 533 až 536, 1986. https://doi.org/10.1038/323533a0
[3] Glorot, X., Bordes, A., Bengio, Y. Deep Sparse Rectifier Neural Networks. AISTATS, 2011. https://proceedings.mlr.press/v15/glorot11a.html
[4] LeCun, Y. a kol. Gradient-Based Learning Applied to Document Recognition. Proceedings of the IEEE, 1998. https://ieeexplore.ieee.org/document/726791
[5] Krizhevsky, A., Sutskever, I., Hinton, G. E. ImageNet Classification with Deep Convolutional Neural Networks. NeurIPS, 2012. https://proceedings.neurips.cc/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html
[6] Hochreiter, S., Schmidhuber, J. Long Short-Term Memory. Neural Computation 9(8), 1735 až 1780, 1997. https://doi.org/10.1162/neco.1997.9.8.1735
[7] Gers, F. A., Schmidhuber, J., Cummins, F. Learning to Forget: Continual Prediction with LSTM. Neural Computation 12(10), 2451 až 2471, 2000. https://doi.org/10.1162/089976600300015015
[8] Vaswani, A. a kol. Attention Is All You Need. NeurIPS, 2017. https://arxiv.org/abs/1706.03762
[9] Srivastava, N. a kol. Dropout: A Simple Way to Prevent Neural Networks from Overfitting. Journal of Machine Learning Research 15, 1929 až 1958, 2014. https://www.jmlr.org/papers/v15/srivastava14a.html

