{"id":30028,"date":"2019-10-31T21:33:18","date_gmt":"2019-10-31T18:33:18","guid":{"rendered":"https:\/\/prohoster.info\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki\/"},"modified":"2019-10-31T21:33:18","modified_gmt":"2019-10-31T18:33:18","slug":"rabotaem-s-nejrosetyami-chek-list-dlya-otladki","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki","title":{"rendered":"Pracujeme s neur\u00f3nov\u00fdmi sie\u0165ami: kontroln\u00fd zoznam na ladenie","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Pracujeme s neur\u00f3nov\u00fdmi sie\u0165ami: kontroln\u00fd zoznam na ladenie\" src=\"\/wp-content\/uploads\/2019\/03\/8ce45093bfe44092cb25d947c32bb0b5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nK\u00f3d softv\u00e9rov\u00fdch produktov pre strojov\u00e9 u\u010denie b\u00fdva \u010dasto zlo\u017eit\u00fd a dos\u0165 m\u00e4t\u00faci. Odha\u013eovanie a odstr\u00e1nenie ch\u00fdb v \u0148om je n\u00e1ro\u010dn\u00e1 \u00faloha. Aj tie najjednoduch\u0161ie <noindex><a rel=\"nofollow\" href=\"https:\/\/cs.stanford.edu\/people\/eroberts\/courses\/soco\/projects\/neural-networks\/Architecture\/feedforward.html\">neuronov\u00e9 siete s priamou v\u00e4zbou<\/a><\/noindex> vy\u017eaduj\u00fa v\u00e1\u017eny pr\u00edstup k sie\u0165ovej architekt\u00fare, inicializ\u00e1cii v\u00e1h, optimaliz\u00e1cii siete. Mal\u00e1 chyba m\u00f4\u017ee vies\u0165 k nepr\u00edjemn\u00fdm probl\u00e9mom.<\/p>\n<p>Tento \u010dl\u00e1nok je venovan\u00fd algoritmu ladenia va\u0161ich neur\u00f3nov\u00fdch siet\u00ed.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<blockquote><p><b>Skillbox odpor\u00fa\u010da:<\/b> Praktick\u00fd kurz <noindex><a rel=\"nofollow\" href=\"https:\/\/skillbox.ru\/python\/?utm_source=skillbox.media&amp;utm_medium=habr.com&amp;utm_campaign=PTNDEV&amp;utm_content=articles&amp;utm_term=neuronet\">Python v\u00fdvoj\u00e1r od nuly<\/a><\/noindex>.<\/p>\n<p><b>Pripom\u00edname:<\/b> <i>pre v\u0161etk\u00fdch \u010ditate\u013eov \u201eHabr\u201c \u2014 z\u013eava 10 000 rub\u013eov pri zap\u00edsan\u00ed na ak\u00fdko\u013evek kurz Skillbox s promo k\u00f3dom \u201eHabr\u201c.<\/i><\/p><\/blockquote>\n<p><\/p>\n<h3>Algoritmus pozost\u00e1va z piatich et\u00e1p:<\/h3>\n<p><\/p>\n<ul>\n<li>jednoduch\u00fd \u0161tart;<\/li>\n<li>potvrdenie str\u00e1t;<\/li>\n<li>kontrola medziv\u00fdsledkov a spojen\u00ed;<\/li>\n<li>diagnostika parametrov;<\/li>\n<li>sledovanie \u010dinnosti.<\/li>\n<\/ul>\n<p>\nAk v\u00e1m nie\u010do pripad\u00e1 zauj\u00edmavej\u0161ie ako ostatn\u00e9, m\u00f4\u017eete okam\u017eite prejs\u0165 k t\u00fdmto sekci\u00e1m. <\/p>\n<h3>Jednoduch\u00fd \u0161tart<\/h3>\n<p>\nLadenie neur\u00f3novej siete so zlo\u017eitou architekt\u00farou, regulariz\u00e1ciou a pl\u00e1nova\u010dom r\u00fdchlosti u\u010denia je zlo\u017eitej\u0161ie ako be\u017enej. Trochu klameme, preto\u017ee tento bod m\u00e1 nepriamy vz\u0165ah k ladenie, ale je to aj tak d\u00f4le\u017eit\u00e1 rada.<\/p>\n<p>Jednoduch\u00fd \u0161tart spo\u010d\u00edva vo vytvoren\u00ed zjednodu\u0161en\u00e9ho modelu a jeho natr\u00e9novan\u00ed na jednom s\u00fabore (bode) d\u00e1t.<\/p>\n<p><b>Najprv vytvor\u00edme zjednodu\u0161en\u00fd model<\/b><\/p>\n<p>Pre r\u00fdchly \u0161tart vytvor\u00edme mal\u00fa sie\u0165 s jedinou skrytou vrstvou a over\u00edme, \u017ee v\u0161etko funguje spr\u00e1vne. Potom postupne zlo\u017eit\u00e9 model a kontrolujeme ka\u017ed\u00fd nov\u00fd aspekt jeho \u0161trukt\u00fary (\u010fal\u0161ej vrstvy, parametra at\u010f.), a ideme \u010falej.<\/p>\n<p><b>Natr\u00e9nujeme model na jedinom s\u00fabore (bode) d\u00e1t<\/b><\/p>\n<p>Ako r\u00fdchlu kontrolu funk\u010dnosti v\u00e1\u0161ho projektu m\u00f4\u017eete na u\u010denie pou\u017ei\u0165 jeden alebo dva d\u00e1ta, aby ste potvrdili, \u010di syst\u00e9m funguje spr\u00e1vne. Neur\u00f3nov\u00e1 sie\u0165 by mala uk\u00e1za\u0165 100% presnos\u0165 u\u010denia a testovania. Ak nie, model je pr\u00edli\u0161 mal\u00fd alebo u\u017e m\u00e1te chybu.<\/p>\n<p>Aj ke\u010f je v\u0161etko v poriadku, pripravte model na absolvovanie jednej alebo nieko\u013ek\u00fdch ep\u00f4ch pred t\u00fdm, ne\u017e p\u00f4jdete \u010falej.<\/p>\n<h3>Hodnotenie str\u00e1t<\/h3>\n<p>\nHodnotenie str\u00e1t je z\u00e1kladn\u00fd sp\u00f4sob, ako doladi\u0165 v\u00fdkonnos\u0165 modelu. Mus\u00edte sa uisti\u0165, \u017ee strata zodpoved\u00e1 \u00falohe a funkcie str\u00e1t s\u00fa hodnoten\u00e9 na spr\u00e1vnej \u0161k\u00e1le. Ak pou\u017e\u00edvate viac ako jeden typ straty, uistite sa, \u017ee v\u0161etky s\u00fa v jednom porad\u00ed a spr\u00e1vne \u0161k\u00e1lovan\u00e9.<\/p>\n<p>Je d\u00f4le\u017eit\u00e9 venova\u0165 pozornos\u0165 po\u010diato\u010dn\u00fdm strat\u00e1m. Skontrolujte, ako bl\u00edzko je skuto\u010dn\u00fd v\u00fdsledok k o\u010dak\u00e1van\u00e9mu, ak model za\u010dal s n\u00e1hodn\u00fdm predpokladom. V <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/#baby\">pr\u00e1ci Andreja Karpatia sa navrhuje nasleduj\u00face<\/a><\/noindex>: \u201eUistite sa, \u017ee dosahujete v\u00fdsledok, ktor\u00fd o\u010dak\u00e1vate pri za\u010dat\u00ed pr\u00e1ce s mal\u00fdm po\u010dtom parametrov. Je lep\u0161ie ihne\u010f skontrolova\u0165 stratu \u00fadajov (s nastavovan\u00edm stup\u0148a regulariz\u00e1cie na nulu). Napr\u00edklad, pre CIFAR-10 s klasifik\u00e1torom Softmax o\u010dak\u00e1vame, \u017ee po\u010diato\u010dn\u00e9 straty bud\u00fa 2.302, preto\u017ee o\u010dak\u00e1van\u00e1 dif\u00fazna pravdepodobnos\u0165 predstavuje 0,1 pre ka\u017ed\u00fa triedu (ke\u010f\u017ee existuje 10 tried), a strata Softmax je negat\u00edvnym logaritmom pravdepodobnosti spr\u00e1vnej triedy ako \u2013ln (0.1) = 2.302\u201c.<\/p>\n<p>Pre bin\u00e1rny pr\u00edklad sa jednoducho vykon\u00e1 anal\u00f3gov\u00fd v\u00fdpo\u010det pre ka\u017ed\u00fa z tried. Tu s\u00fa napr\u00edklad \u00fadaje: 20% 0&#8217;s a 80% 1&#8217;s. O\u010dak\u00e1van\u00e1 po\u010diato\u010dn\u00e1 strata bude a\u017e \u20130,2ln (0,5) \u20130,8ln (0,5) = 0,693147. Ak je v\u00fdsledok v\u00e4\u010d\u0161\u00ed ako 1, m\u00f4\u017ee to nazna\u010dova\u0165, \u017ee v\u00e1hy neur\u00f3novej siete nie s\u00fa spr\u00e1vne vyv\u00e1\u017een\u00e9 alebo \u00fadaje nie s\u00fa normalizovan\u00e9.<\/p>\n<h3>Kontrolujeme medzi v\u00fdsledky a prepojenia <\/h3>\n<p>\nNa odladenie neur\u00f3novej siete je potrebn\u00e9 pochopi\u0165 dynamiku procesov v jejn\u00fatri a \u00falohu jednotliv\u00fdch medzi vrstiev, preto\u017ee s\u00fa prepojen\u00e9. Tu s\u00fa typick\u00e9 chyby, s ktor\u00fdmi sa m\u00f4\u017eete stretn\u00fa\u0165:<\/p>\n<ul>\n<li>nespr\u00e1vne v\u00fdrazy pre aktualiz\u00e1cie gradientov;<\/li>\n<li>aktualiz\u00e1cie v\u00e1h sa neuplat\u0148uj\u00fa;<\/li>\n<li>mizn\u00face alebo exploduj\u00face gradienty (exploding gradients).<\/li>\n<\/ul>\n<p>\nAk s\u00fa hodnoty gradientu nulov\u00e9, znamen\u00e1 to, \u017ee r\u00fdchlos\u0165 u\u010denia v optimaliz\u00e1tore je pr\u00edli\u0161 mal\u00e1, alebo sa stret\u00e1vate s nespr\u00e1vnym v\u00fdrazom pre aktualiz\u00e1ciu gradientu.<\/p>\n<p>Okrem toho je potrebn\u00e9 sledova\u0165 hodnoty aktiva\u010dn\u00fdch funkci\u00ed, v\u00e1h a aktualiz\u00e1ci\u00ed ka\u017ed\u00e9ho z vrstiev. Napr\u00edklad, mno\u017estvo aktualiz\u00e1ci\u00ed parametrov (v\u00e1h a posunov) <noindex><a rel=\"nofollow\" href=\"https:\/\/cs231n.github.io\/neural-networks-3\/#summary\">by malo predstavova\u0165 1-e3<\/a><\/noindex>.<\/p>\n<p>Existuje jav, ktor\u00fd dostal n\u00e1zov \u201cDying ReLU\u201d alebo <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Vanishing_gradient_problem\">\u201eprobl\u00e9m mizn\u00faceho gradientu\u201c<\/a><\/noindex>, ke\u010f neur\u00f3ny ReLU vr\u00e1tia nulu po tom, \u010do sa nau\u010dili ve\u013ek\u00fa z\u00e1porn\u00fa hodnotu (bias) posunutia pre svoje v\u00e1hy. Tieto neur\u00f3ny sa u\u017e nikdy neaktivuj\u00fa nikde v \u00fadajoch.<\/p>\n<p>M\u00f4\u017eete pou\u017ei\u0165 overenie gradientu na identifik\u00e1ciu t\u00fdchto ch\u00fdb tak, \u017ee gradient pribl\u00ed\u017eite pomocou numerick\u00e9ho pr\u00edstupu. Ak je bl\u00edzko k vypo\u010d\u00edtan\u00fdm gradientom, n\u00e1sledn\u00e9 \u0161\u00edrenie bolo realizovan\u00e9 spr\u00e1vne. Na vytvorenie overenia gradientu sa obozn\u00e1mte s t\u00fdmito skvel\u00fdmi zdrojmi z CS231 <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/#gradcheck\">tu<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/optimization-1\/#gradcompute\">tu<\/a><\/noindex>, ako aj s <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=P6EtCVrvYPU\">lekciou<\/a><\/noindex> Andrews Ng (Andrew Nga) na t\u00fato t\u00e9mu.<\/p>\n<p><noindex>Faizan Sheikh<\/noindex> uv\u00e1dza tri hlavn\u00e9 met\u00f3dy vizualiz\u00e1cie neur\u00f3nov\u00fdch siet\u00ed:<\/p>\n<ul>\n<li>Predbe\u017en\u00e9 \u2014 jednoduch\u00e9 met\u00f3dy, ktor\u00e9 n\u00e1m ukazuj\u00fa celkov\u00fa \u0161trukt\u00faru tr\u00e9novan\u00e9ho modelu. Tieto maj\u00fa zahrnut\u00e9 v\u00fdstupy tvarov alebo filtrov jednotliv\u00fdch vrstiev neur\u00f3novej siete a parametre v ka\u017edej vrstve.<\/li>\n<li> Zalo\u017een\u00e9 na aktiv\u00e1ci\u00e1ch. V t\u00fdchto vizualizujeme aktiv\u00e1cie jednotliv\u00fdch neur\u00f3nov alebo skup\u00edn neur\u00f3nov, aby sme pochopili ich funkcie.<\/li>\n<li> Zalo\u017een\u00e9 na gradientoch. Tieto met\u00f3dy maj\u00fa tendenciu manipulova\u0165 s gradientmi, ktor\u00e9 vznikaj\u00fa po\u010das dopredu a dozadu pri tr\u00e9novan\u00ed modelu (vr\u00e1tane m\u00e1p v\u00fdznamu a m\u00e1p aktiv\u00e1cie triedy).<\/li>\n<\/ul>\n<p>\nExistuje nieko\u013eko u\u017eito\u010dn\u00fdch n\u00e1strojov na vizualiz\u00e1ciu aktiv\u00e1ci\u00ed a pripojen\u00ed jednotliv\u00fdch vrstiev, ako s\u00fa <noindex><a rel=\"nofollow\" href=\"https:\/\/conx.readthedocs.io\/en\/latest\/Getting%20Started%20with%20conx.html#What-is-ConX?\">ConX<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.tensorflow.org\/guide\/tensorboard_histograms\">Tensorboard<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Pracujeme s neur\u00f3nov\u00fdmi sie\u0165ami: kontroln\u00fd zoznam na ladenie\" src=\"\/wp-content\/uploads\/2019\/03\/56e7e88983d6772ef482bc8396dd52a2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <\/p>\n<h3>Diagnostika parametrov<\/h3>\n<p>\nNeur\u00f3nov\u00e9 siete maj\u00fa mno\u017estvo parametrov, ktor\u00e9 navz\u00e1jom interaguj\u00fa, \u010do komplikuje optimaliz\u00e1ciu. Tento oddiel je predmetom akt\u00edvneho v\u00fdskumu odborn\u00edkov, tak\u017ee ni\u017e\u0161ie uveden\u00e9 n\u00e1vrhy by mali by\u0165 pova\u017eovan\u00e9 len za rady, v\u00fdchodiskov\u00e9 body, od ktor\u00fdch sa m\u00f4\u017eete odrazi\u0165.<\/p>\n<p><b>Ve\u013ekos\u0165 d\u00e1vky<\/b> (batch size) \u2014 je potrebn\u00e9, aby bol dostato\u010dne ve\u013ek\u00fd na z\u00edskanie presn\u00fdch odhadov gradientu chyby, ale dostato\u010dne mal\u00fd, aby stochastick\u00fd gradientn\u00fd zostup (SGD) mohol usporiada\u0165 va\u0161u sie\u0165. Mal\u00e9 ve\u013ekosti d\u00e1vok poved\u00fa k r\u00fdchlemu konvergencii v\u010faka \u0161umu v procese u\u010denia a nesk\u00f4r k \u0165a\u017ekostiam s optimaliz\u00e1ciou. Viac o tom je pop\u00edsan\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1609.04836\">tu<\/a><\/noindex>.<\/p>\n<p><b>R\u00fdchlos\u0165 u\u010denia<\/b> \u2014 pr\u00edli\u0161 n\u00edzka povedie k pomalej konvergencii alebo riziku zahn\u00fa\u0165 sa v lok\u00e1lnych minim\u00e1ch. Z\u00e1rove\u0148 vysok\u00e1 r\u00fdchlos\u0165 u\u010denia sp\u00f4sob\u00ed rozl\u00ed\u0161enie optimaliz\u00e1cie, ke\u010f\u017ee riskujete \u201esko\u010di\u0165\u201c cez hlbok\u00fa, ale \u00fazku \u010das\u0165 funkcie straty. Sk\u00faste pou\u017ei\u0165 pl\u00e1novanie r\u00fdchlosti na jej zn\u00ed\u017eenie v procese u\u010denia neur\u00f3novej siete. V kurze CS231n <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/\">existuje ve\u013ek\u00e1 sekcia venovan\u00e1 tejto problematike<\/a><\/noindex>.<\/p>\n<p><b>Orez\u00e1vanie gradientov<\/b>\u2014 orez\u00e1vanie gradientov parametrov po\u010das sp\u00e4tn\u00e9ho \u0161\u00edrenia na maxim\u00e1lnu hodnotu alebo limitn\u00fa normu. Je to u\u017eito\u010dn\u00e9 na rie\u0161enie probl\u00e9mov s ak\u00fdmiko\u013evek exploduj\u00facimi gradientmi, na ktor\u00e9 m\u00f4\u017eete narazi\u0165 v tre\u0165om bode.<\/p>\n<p><b>Batched normaliz\u00e1cia<\/b> \u2014 sa pou\u017e\u00edva na normaliz\u00e1ciu vstupn\u00fdch d\u00e1t ka\u017ed\u00e9ho layeru, \u010do pom\u00e1ha rie\u0161i\u0165 probl\u00e9m vn\u00fatorn\u00e9ho kova\u0165atn\u00e9ho posunu. Ak pou\u017e\u00edvate Dropout a Batch Norm spolu, <noindex><a rel=\"nofollow\" href=\"https:\/\/towardsdatascience.com\/pitfalls-of-batch-norm-in-tensorflow-and-sanity-checks-for-training-networks-e86c207548c8\">pozrite sa na tento \u010dl\u00e1nok<\/a><\/noindex>.<\/p>\n<p><b>Stochastick\u00fd gradientn\u00fd zostup (SGD)<\/b> \u2014 existuje nieko\u013eko vari\u00e1nt SGD, ktor\u00e9 pou\u017e\u00edvaj\u00fa impulz, adapt\u00edvne r\u00fdchlosti u\u010denia a Nesterov\u00fa met\u00f3du. Pri tom ani jedna z nich nem\u00e1 zjavn\u00e9 v\u00fdhody, pokia\u013e ide o efekt\u00edvnos\u0165 u\u010denia alebo generaliz\u00e1ciu (<noindex><a rel=\"nofollow\" href=\"http:\/\/ruder.io\/optimizing-gradient-descent\/\">podrobnosti tu<\/a><\/noindex>).<\/p>\n<p><b>Regulariz\u00e1cia<\/b> \u2014 je k\u013e\u00fa\u010dov\u00e9 pre vytv\u00e1ranie generalizovate\u013en\u00e9ho modelu, preto\u017ee prid\u00e1va pokutu za zlo\u017eitosti modelu alebo extr\u00e9mne hodnoty parametrov. Je to sp\u00f4sob, ako zn\u00ed\u017ei\u0165 variabilitu modelu bez podstatn\u00e9ho zv\u00fd\u0161enia jeho skreslenia. Viac <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/#ratio\">podrobnosti s\u00fa tu<\/a><\/noindex>.<\/p>\n<p>Aby ste si to sami pos\u00fadili, mus\u00edte vypn\u00fa\u0165 regulariz\u00e1ciu a skontrolova\u0165 gradient straty sami.<\/p>\n<p><b>Dropout <\/b>\u2014 \u010fal\u0161ia met\u00f3da usporiadania va\u0161ej siete, aby sa predi\u0161lo pre\u0165a\u017eeniu. Po\u010das u\u010denia sa dropout realizuje iba udr\u017ean\u00edm aktivity neur\u00f3nu s ur\u010dit\u00fdm pravdepodobnos\u0165ou p (hyperparameter) alebo jeho nastaven\u00edm na nulu v opa\u010dnom pr\u00edpade. V\u00fdsledkom je, \u017ee sie\u0165 mus\u00ed pou\u017ei\u0165 in\u00fd podmno\u017eok parametrov pre ka\u017ed\u00fd tr\u00e9ningov\u00fd batch, \u010do zni\u017euje zmeny ur\u010dit\u00fdch parametrov, ktor\u00e9 sa st\u00e1vaj\u00fa dominantn\u00fdmi.<\/p>\n<p>D\u00f4le\u017eit\u00e9: Ak pou\u017e\u00edvate ako dropout, tak aj batched norm, bu\u010fte opatrn\u00ed s porad\u00edm t\u00fdchto oper\u00e1ci\u00ed alebo aj s ich spolo\u010dn\u00fdm pou\u017eit\u00edm. V\u0161etko toto sa e\u0161te akt\u00edvne diskutuje a dop\u013a\u0148a. Tu s\u00fa dve d\u00f4le\u017eit\u00e9 diskusie na t\u00fato t\u00e9mu <noindex><a rel=\"nofollow\" href=\"https:\/\/stackoverflow.com\/questions\/39691902\/ordering-of-batch-normalization-and-dropout\">na Stackoverflow<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1801.05134\">Arxiv<\/a><\/noindex>.<\/p>\n<h3>Kontrola pr\u00e1ce<\/h3>\n<p>\nIde o dokumentovanie pracovn\u00fdch procesov a experimentov. Ak ni\u010d nedokumentujete, m\u00f4\u017eete zabudn\u00fa\u0165, ak\u00fa r\u00fdchlos\u0165 u\u010denia alebo v\u00e1hu tried pou\u017e\u00edvate. V\u010faka kontrole je mo\u017en\u00e9 bez probl\u00e9mov prezera\u0165 a reprodukova\u0165 predch\u00e1dzaj\u00face experimenty. To umo\u017e\u0148uje zn\u00ed\u017ei\u0165 po\u010det duplicitn\u00fdch experimentov.<\/p>\n<p>Pravda, ru\u010dn\u00e9 dokumentovanie sa m\u00f4\u017ee sta\u0165 n\u00e1ro\u010dnou \u00falohou v pr\u00edpade ve\u013ek\u00e9ho objemu pr\u00e1ce. Tu prich\u00e1dzaj\u00fa na pomoc tak\u00e9 n\u00e1stroje, ako je Comet.ml, ktor\u00e9 pom\u00e1haj\u00fa automaticky logova\u0165 d\u00e1tov\u00e9 sady, zmeny k\u00f3du, hist\u00f3riu experimentov a v\u00fdrobn\u00fdch modelov, vr\u00e1tane k\u013e\u00fa\u010dov\u00fdch inform\u00e1ci\u00ed o va\u0161om modeli (hyperparametre, v\u00fdkon modelu a inform\u00e1cie o prostred\u00ed).<\/p>\n<p>Neur\u00f3nov\u00e1 sie\u0165 m\u00f4\u017ee by\u0165 dos\u0165 citliv\u00e1 na mal\u00e9 zmeny, \u010do m\u00f4\u017ee vies\u0165 k poklesu v\u00fdkonu modelu. Sledovanie a dokumentovanie pr\u00e1ce je prv\u00fd krok, ktor\u00fd by ste mali podnikn\u00fa\u0165 na \u0161tandardiz\u00e1ciu prostredia a modelovania.<\/p>\n<p><img decoding=\"async\" alt=\"Pracujeme s neur\u00f3nov\u00fdmi sie\u0165ami: kontroln\u00fd zoznam na ladenie\" src=\"\/wp-content\/uploads\/2019\/03\/37b3e4ef97ea39a3d28ffca5c1dbf1e5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nD\u00fafam, \u017ee tento pr\u00edspevok m\u00f4\u017ee by\u0165 v\u00fdchodiskov\u00fdm bodom, od ktor\u00e9ho za\u010dnete ladenie va\u0161ej neur\u00f3novej siete.<\/p>\n<blockquote><p><b>Skillbox odpor\u00fa\u010da:<\/b><\/p>\n<ul>\n<li>Dvojro\u010dn\u00fd praktick\u00fd kurz <noindex><a rel=\"nofollow\" href=\"https:\/\/iamwebdev.skillbox.ru\/?utm_source=skillbox.media&amp;utm_medium=habr.com&amp;utm_campaign=WEBDEVPRO&amp;utm_content=articles&amp;utm_term=neuronet\">\u201eSom webov\u00fd v\u00fdvoj\u00e1r PRO\u201c<\/a><\/noindex>.<\/li>\n<li>Online kurz <noindex><a rel=\"nofollow\" href=\"https:\/\/skillbox.ru\/c-sharp\/?utm_source=skillbox.media&amp;utm_medium=habr.com&amp;utm_campaign=CSHDEV&amp;utm_content=articles&amp;utm_term=neuronet\">C# v\u00fdvoj\u00e1r od z\u00e1kladov<\/a><\/noindex>.<\/li>\n<li>Praktick\u00fd ro\u010dn\u00fd kurz <noindex><a rel=\"nofollow\" href=\"https:\/\/skillbox.ru\/php\/?utm_source=skillbox.media&amp;utm_medium=habr.com&amp;utm_campaign=PHPDEV&amp;utm_content=articles&amp;utm_term=neuronet\">\u201ePHP v\u00fdvoj\u00e1r od 0 do PRO\u201c<\/a><\/noindex>.\n<\/li>\n<\/ul>\n<\/blockquote>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/skillbox\/blog\/444684\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0434\u043b\u044f \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e \u0431\u044b\u0432\u0430\u0435\u0442 \u0441\u043b\u043e\u0436\u043d\u044b\u043c \u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u043c. \u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0438 \u043b\u0438\u043a\u0432\u0438\u0434\u0430\u0446\u0438\u044f \u0431\u0430\u0433\u043e\u0432 \u0432 \u043d\u0435\u043c \u2014 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0435\u043c\u043a\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430. \u0414\u0430\u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0435 \u043d\u0435\u0439\u0440\u043e\u0441\u0435\u0442\u0438 \u0441 \u043f\u0440\u044f\u043c\u043e\u0439 \u0441\u0432\u044f\u0437\u044c\u044e \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435, \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0435\u0441\u043e\u0432, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0435\u0442\u0438. \u041d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c. \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0432\u0430\u0448\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439. Skillbox \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442: [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-30028","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0434\u043b\u044f \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441 \u043d\u0435\u0439\u0440\u043e\u0441\u0435\u0442\u044f\u043c\u0438: \u0447\u0435\u043a-\u043b\u0438\u0441\u0442 \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0434\u043b\u044f \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:33:18+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:33:18+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Pracujeme s neur\u00f3nov\u00fdmi sie\u0165ami: kontroln\u00fd zoznam pre ladenie | ProHoster","description":"K\u00f3d softv\u00e9rov\u00fdch produktov pre strojov\u00e9 u\u010denie.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441 \u043d\u0435\u0439\u0440\u043e\u0441\u0435\u0442\u044f\u043c\u0438: \u0447\u0435\u043a-\u043b\u0438\u0441\u0442 \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 | ProHoster","og:description":"\u041a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0434\u043b\u044f \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e.","og:url":"https:\/\/prohoster.info\/sk\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:33:18+00:00","article:modified_time":"2019-10-31T18:33:18+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30028","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-20 23:28:27","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:43:15","updated":"2026-01-20 23:28:27","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/30028","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=30028"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/30028\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=30028"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=30028"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=30028"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}