{"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\/sq\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki","title":{"rendered":"Punojm\u00eb me rrjetet nervore: lista kontrolluese p\u00ebr debugimin","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Punojm\u00eb me rrjetet nervore: lista kontrolluese p\u00ebr debugimin\" src=\"\/wp-content\/uploads\/2019\/03\/8ce45093bfe44092cb25d947c32bb0b5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nKodi i produkteve t\u00eb programimit p\u00ebr t\u00eb m\u00ebsuar automatikisht shpesh \u00ebsht\u00eb i nd\u00ebrlikuar dhe mjaft konfuz. Identifikimi dhe eliminimi i defekteve n\u00eb t\u00eb \u00ebsht\u00eb nj\u00eb detyr\u00eb q\u00eb k\u00ebrkon shum\u00eb resurse. Edhe rrjetet m\u00eb t\u00eb thjeshta <noindex><a rel=\"nofollow\" href=\"https:\/\/cs.stanford.edu\/people\/eroberts\/courses\/soco\/projects\/neural-networks\/Architecture\/feedforward.html\">neurore me lidhje t\u00eb drejtp\u00ebrdrejta<\/a><\/noindex> k\u00ebrkojn\u00eb nj\u00eb qasje serioze ndaj arkitektur\u00ebs rrjetore, inicializimit t\u00eb peshave, optimizimit t\u00eb rrjetit. Nj\u00eb gabim i vog\u00ebl mund t\u00eb \u00e7oj\u00eb n\u00eb probleme t\u00eb pak\u00ebndshme.<\/p>\n<p>Ky artikull \u00ebsht\u00eb p\u00ebrkushtuar algoritmit p\u00ebr debuggimin e rrjeteve tuaja neurale.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<blockquote><p><b>Skillbox rekomandon:<\/b> Kurs praktik <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\">Programues Python nga fillimi<\/a><\/noindex>.<\/p>\n<p><b>Kujtojm\u00eb:<\/b> <i>p\u00ebr t\u00eb gjith\u00eb lexuesit e \"Habra\" \u2014 zbritje prej 10,000 rublej p\u00ebr regjistrimin n\u00eb \u00e7do kurs Skillbox me kodin promocional \"Habr\".<\/i><\/p><\/blockquote>\n<p><\/p>\n<h3>Algoritmi p\u00ebrb\u00ebhet nga pes\u00eb faza:<\/h3>\n<p><\/p>\n<ul>\n<li>start i thjesht\u00eb;<\/li>\n<li>konfirmimi i humbjeve;<\/li>\n<li>kontrollimi i rezultateve nd\u00ebrmjet dhe lidhjeve;<\/li>\n<li>diagnostikimi i parametrave;<\/li>\n<li>kontrollimi i funksionimit.<\/li>\n<\/ul>\n<p>\nN\u00ebse di\u00e7ka duket m\u00eb interesante se pjesa tjet\u00ebr, mund t\u00eb kaloni menj\u00ebher\u00eb n\u00eb k\u00ebto seksione. <\/p>\n<h3>Start i thjesht\u00eb<\/h3>\n<p>\nDebugging nj\u00eb rrjet neurali me arkitektur\u00eb t\u00eb nd\u00ebrlikuar, rregullimin dhe planifikuesin e shpejt\u00ebsis\u00eb s\u00eb m\u00ebsimit \u00ebsht\u00eb m\u00eb i v\u00ebshtir\u00eb se sa nj\u00eb i zakonsh\u00ebm. Po luajm\u00eb pak me k\u00ebt\u00eb, pasi pika e debuggimit ka nj\u00eb lidhje indirekte me k\u00ebt\u00eb, por \u00ebsht\u00eb gjithsesi nj\u00eb rekomandim i r\u00ebnd\u00ebsish\u00ebm.<\/p>\n<p>Starti i thjesht\u00eb p\u00ebrfshin krijimin e nj\u00eb modeli t\u00eb thjeshtuar dhe m\u00ebsimin e tij n\u00eb nj\u00eb set t\u00eb vet\u00ebm (pik\u00eb) t\u00eb dh\u00ebnash.<\/p>\n<p><b>S\u00eb pari krijojm\u00eb nj\u00eb model t\u00eb thjeshtuar<\/b><\/p>\n<p>P\u00ebr nj\u00eb start t\u00eb shpejt\u00eb krijojm\u00eb nj\u00eb rrjet t\u00eb vog\u00ebl me nj\u00eb shtres\u00eb t\u00eb vetme t\u00eb fshehur dhe kontrollojm\u00eb q\u00eb gjith\u00e7ka t\u00eb funksionoj\u00eb si\u00e7 duhet. Pastaj e komplikohemi gradualisht modelin, duke kontrolluar \u00e7do aspekt t\u00eb ri t\u00eb struktur\u00ebs s\u00eb saj (shtres\u00eb shtes\u00eb, parametrash etj.), dhe l\u00ebvizim p\u00ebrpara.<\/p>\n<p><b>M\u00ebsojm\u00eb modelin n\u00eb nj\u00eb set t\u00eb vet\u00ebm (pik\u00eb) t\u00eb dh\u00ebnash<\/b><\/p>\n<p>Si nj\u00eb kontroll i shpejt\u00eb p\u00ebr funksionimin e projektit tuaj mund t\u00eb p\u00ebrdorni nj\u00eb ose dy pika t\u00eb dh\u00ebnash p\u00ebr t'u siguruar se sistemi funksionon si duhet. Rrjeti neural duhet t\u00eb tregoj\u00eb 100% sakt\u00ebsi n\u00eb t\u00eb m\u00ebsuar dhe verifikim. N\u00ebse k\u00ebshtu nuk \u00ebsht\u00eb, modeli \u00ebsht\u00eb shum\u00eb i vog\u00ebl ose keni nj\u00eb defekt.<\/p>\n<p>Edhe n\u00ebse gjith\u00e7ka \u00ebsht\u00eb n\u00eb rregull, p\u00ebrgatitni modelin p\u00ebr nj\u00eb ose disa epoka para se t\u00eb vazhdoni m\u00eb tutje.<\/p>\n<h3>Vler\u00ebsimi i humbjeve<\/h3>\n<p>\nVler\u00ebsimi i humbjeve \u00ebsht\u00eb m\u00ebnyra kryesore p\u00ebr t\u00eb p\u00ebrmir\u00ebsuar performanc\u00ebn e modelit. Duhet t\u00eb siguroheni se humbja korrespondon me detyr\u00ebn dhe funksionet e humbjeve jan\u00eb vler\u00ebsuar n\u00eb nj\u00eb shkall\u00eb t\u00eb sakt\u00eb. N\u00ebse p\u00ebrdorni m\u00eb shum\u00eb se nj\u00eb tip humbjeje, kontrolloni q\u00eb t\u00eb gjitha t\u00eb jen\u00eb t\u00eb nj\u00eb rendi dhe t\u00eb skalitura si\u00e7 duhet.<\/p>\n<p>\u00cbsht\u00eb e r\u00ebnd\u00ebsishme t\u00eb jeni t\u00eb kujdessh\u00ebm ndaj humbjeve fillestare. Kontrolloni sa af\u00ebr \u00ebsht\u00eb rezultati real me at\u00eb q\u00eb pritej, n\u00ebse modeli ka nisur nga nj\u00eb supozim t\u00eb rast\u00ebsish\u00ebm. N\u00eb <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/#baby\">punimin e Andreit Karpatit propozohet si vijon<\/a><\/noindex>: \"Sigurohuni q\u00eb po merrni rezultatin q\u00eb pritet kur filloni pun\u00ebn me nj\u00eb num\u00ebr t\u00eb vog\u00ebl parametrash. M\u00eb mir\u00eb t\u00eb kontrolloni menj\u00ebher\u00eb humbjen e t\u00eb dh\u00ebnave (duke vendosur shkall\u00ebn e rregullimit n\u00eb zero). P\u00ebr shembull, p\u00ebr CIFAR-10 me klasifikuesin Softmax ne presim q\u00eb humbjet fillestare t\u00eb jen\u00eb 2.302, sepse probabiliteti i parashikuar \u00ebsht\u00eb 0,1 p\u00ebr \u00e7do klas\u00eb (pasi ekzistojn\u00eb 10 klas\u00eb), dhe humbja Softmax \u00ebsht\u00eb probabiliteti negativ logarithmik i klas\u00ebs s\u00eb sakt\u00eb si -ln (0.1) = 2.302\".<\/p>\n<p>P\u00ebr shembuj binar, thjesht b\u00ebhet nj\u00eb llogaritje e ngjashme p\u00ebr secil\u00ebn nga klasat. Ja, p\u00ebr shembull, t\u00eb dh\u00ebnat: 20% 0&#8217;s dhe 80% 1&#8217;s. Humbja e pritshme fillestare do arrij\u00eb deri n\u00eb \u20130,2ln (0,5) \u20130,8ln (0,5) = 0,693147. N\u00ebse rezultati \u00ebsht\u00eb m\u00eb i madh se 1, kjo mund t\u00eb tregoj\u00eb se peshat e rrjetit nervor nuk jan\u00eb balancuar si\u00e7 duhet ose t\u00eb dh\u00ebnat nuk jan\u00eb normalizuar.<\/p>\n<h3>Kontrollojm\u00eb rezultatet nd\u00ebrmjet dhe lidhjet <\/h3>\n<p>\nP\u00ebr t\u00eb debuggur rrjetin neural, \u00ebsht\u00eb e nevojshme t\u00eb kuptoni dinamik\u00ebn e proceseve brenda rrjetit dhe rolin e shtresave t\u00eb ve\u00e7anta nd\u00ebrmjet, pasi ato jan\u00eb t\u00eb lidhura. K\u00ebtu jan\u00eb disa gabime tipike me t\u00eb cilat mund t\u00eb p\u00ebrballeni:<\/p>\n<ul>\n<li>shprehje t\u00eb gabuara p\u00ebr p\u00ebrdit\u00ebsimet e gradientit;<\/li>\n<li>p\u00ebrdit\u00ebsimet e peshave nuk aplikohen;<\/li>\n<li>gradientet q\u00eb zhduken ose shp\u00ebrthejn\u00eb (exploding gradients).<\/li>\n<\/ul>\n<p>\nN\u00ebse vlerat e gradientit jan\u00eb zero, kjo tregon se shpejt\u00ebsia e m\u00ebsimit n\u00eb optimizues \u00ebsht\u00eb shum\u00eb e ul\u00ebt, ose se po hasni nj\u00eb shprehje t\u00eb gabuar p\u00ebr p\u00ebrdit\u00ebsimin e gradientit.<\/p>\n<p>P\u00ebrve\u00e7 k\u00ebsaj, \u00ebsht\u00eb e nevojshme t\u00eb monitoroni vlerat e funksioneve t\u00eb aktivizimit, peshave dhe p\u00ebrdit\u00ebsimeve t\u00eb \u00e7do shtrese. P\u00ebr shembull, sasia e p\u00ebrdit\u00ebsimeve t\u00eb parametrave (peshave dhe dispensiveve) <noindex><a rel=\"nofollow\" href=\"https:\/\/cs231n.github.io\/neural-networks-3\/#summary\">duhet t\u00eb jet\u00eb 1-e3<\/a><\/noindex>.<\/p>\n<p>Ekziston nj\u00eb fenomen q\u00eb quhet \u201cDying ReLU\u201d ose <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Vanishing_gradient_problem\">\"problemi i gradientit q\u00eb zhduket\"<\/a><\/noindex>, kur neuron\u00ebt ReLU do t\u00eb japin zero pas m\u00ebsimit t\u00eb nj\u00eb vlera t\u00eb madhe negative (bias) p\u00ebr peshat e tij. K\u00ebta neurone nuk aktivizohen m\u00eb kurr\u00eb n\u00eb asnj\u00eb nga t\u00eb dh\u00ebnat.<\/p>\n<p>Ju mund t\u00eb p\u00ebrdorni kontrollin e gradientit p\u00ebr t\u00eb zbuluar k\u00ebto gabime duke aproksimuar gradientin me nj\u00eb qasje numerike. N\u00ebse \u00ebsht\u00eb af\u00ebr gradient\u00ebve t\u00eb llogaritur, at\u00ebher\u00eb p\u00ebrhapja mbrapsht \u00ebsht\u00eb realizuar si duhet. P\u00ebr t\u00eb krijuar nj\u00eb verifikim t\u00eb gradientit, shikoni k\u00ebto burime t\u00eb shk\u00eblqyera nga CS231 <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/#gradcheck\">k\u00ebtu<\/a><\/noindex> dhe <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/optimization-1\/#gradcompute\">k\u00ebtu<\/a><\/noindex>, si dhe <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=P6EtCVrvYPU\">m\u00ebsimin<\/a><\/noindex> e Andrew Ng p\u00ebr k\u00ebt\u00eb tem\u00eb.<\/p>\n<p><noindex>Faizan Sheikh<\/noindex> tregon tre m\u00ebnyrat kryesore t\u00eb vizualizimit t\u00eb rrjeteve neurale:<\/p>\n<ul>\n<li>Paraprak\u00ebt \u2014 metoda t\u00eb thjeshta q\u00eb na tregojn\u00eb struktur\u00ebn e p\u00ebrgjithshme t\u00eb modelit t\u00eb trajnuar. Ato p\u00ebrfshijn\u00eb nxjerrjen e formave ose filtrave t\u00eb shtresave individuale t\u00eb rrjetit neural dhe parametrave n\u00eb secil\u00ebn shtres\u00eb.<\/li>\n<li> T\u00eb bazuara n\u00eb aktivizim. Ato dekodojn\u00eb aktivizimet e neuron\u00ebve individual\u00eb ose grupeve t\u00eb neuron\u00ebve p\u00ebr t\u00eb kuptuar funksionet e tyre.<\/li>\n<li> T\u00eb bazuara n\u00eb gradient\u00eb. K\u00ebto metoda kan\u00eb tendenc\u00eb t\u00eb manipulojn\u00eb gradient\u00ebt q\u00eb krijohen nga kalimi p\u00ebrpara dhe mbrapa gjat\u00eb trajnimit t\u00eb modelit (duke p\u00ebrfshir\u00eb hartat e r\u00ebnd\u00ebsis\u00eb dhe hartat e aktivizimit t\u00eb klas\u00ebs).<\/li>\n<\/ul>\n<p>\nEkzistojn\u00eb disa mjete t\u00eb dobishme p\u00ebr vizualizimin e aktivizimeve dhe lidhjeve t\u00eb shtresave individuale, si\u00e7 jan\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/conx.readthedocs.io\/en\/latest\/Getting%20Started%20with%20conx.html#What-is-ConX?\">ConX<\/a><\/noindex> dhe <noindex><a rel=\"nofollow\" href=\"https:\/\/www.tensorflow.org\/guide\/tensorboard_histograms\">Tensorboard<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Punojm\u00eb me rrjetet nervore: lista kontrolluese p\u00ebr debugimin\" src=\"\/wp-content\/uploads\/2019\/03\/56e7e88983d6772ef482bc8396dd52a2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <\/p>\n<h3>Diagnostikimi i parametrave<\/h3>\n<p>\nRrjetet neurale kan\u00eb shum\u00eb parametra q\u00eb nd\u00ebrveprojn\u00eb me nj\u00ebri-tjetrin, gj\u00eb q\u00eb e komplikon optimizimin. N\u00eb thelb, ky seksion \u00ebsht\u00eb nj\u00eb tem\u00eb e k\u00ebrkimeve aktive nga specialist\u00ebt, prandaj rekomandimet m\u00eb posht\u00eb duhet t\u00eb merren vet\u00ebm si k\u00ebshilla, pika fillestare nga t\u00eb cilat mund t\u00eb niseni.<\/p>\n<p><b>Madh\u00ebsia e paket\u00ebs<\/b> (batch size) \u2014 n\u00ebse \u00ebsht\u00eb e nevojshme q\u00eb madh\u00ebsia e paket\u00ebs t\u00eb jet\u00eb mjaft e madhe p\u00ebr t\u00eb marr\u00eb vler\u00ebsime t\u00eb sakta t\u00eb gradienteve t\u00eb gabimeve, por mjaft e vog\u00ebl q\u00eb shkalla e gradientit stokastik (SGD) t\u00eb mund t\u00eb rregulloj\u00eb rrjetin tuaj. Madh\u00ebsit\u00eb e vogla t\u00eb paketave do t\u00eb \u00e7ojn\u00eb n\u00eb konvergjenc\u00eb t\u00eb shpejt\u00eb p\u00ebr shkak t\u00eb zhurm\u00ebs n\u00eb procesin e trajnimit dhe m\u00eb von\u00eb \u2014 n\u00eb v\u00ebshtir\u00ebsi n\u00eb optimizim. M\u00eb shum\u00eb n\u00eb lidhje me k\u00ebt\u00eb \u00ebsht\u00eb e p\u00ebrshkruar <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1609.04836\">k\u00ebtu<\/a><\/noindex>.<\/p>\n<p><b>Shpejt\u00ebsia e t\u00eb m\u00ebsuarit<\/b> \u2014 shum\u00eb e ul\u00ebt do t\u00eb \u00e7oj\u00eb n\u00eb konvergjenc\u00eb t\u00eb ngadalshme ose rrezikun p\u00ebr t'u mbetur n\u00eb minimumet lokale. N\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb, nj\u00eb shpejt\u00ebsi e lart\u00eb e t\u00eb m\u00ebsuarit do t\u00eb shkaktoj\u00eb shp\u00ebrthim t\u00eb optimizimit, pasi rrezikoni \"t\u00eb hidheni\" p\u00ebrmes nj\u00eb pjese t\u00eb thell\u00eb, por t\u00eb ngusht\u00eb t\u00eb funksionit t\u00eb humbjes. Provoni t\u00eb p\u00ebrdorni planifikimin e shpejt\u00ebsis\u00eb p\u00ebr ta ulur gjat\u00eb procesit t\u00eb trajnimit t\u00eb rrjetit neural. N\u00eb kursin CS231n <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/\">ekziston nj\u00eb seksion i madh q\u00eb merret me k\u00ebt\u00eb problem<\/a><\/noindex>.<\/p>\n<p><b>Prerja e gradient\u00ebve<\/b>\u200a \u2014 prerja e gradient\u00ebve t\u00eb parametrave gjat\u00eb p\u00ebrhapjes mbrapsht n\u00eb vler\u00ebn maksimale ose norm\u00ebn kufitare. E dobishme p\u00ebr t\u00eb zgjidhur problemet me \u00e7do gradiente q\u00eb shp\u00ebrthejn\u00eb, me t\u00eb cilat mund t\u00eb p\u00ebrballeni n\u00eb pik\u00ebn e tret\u00eb.<\/p>\n<p><b>Normalizimi i grupit<\/b> \u2014 p\u00ebrdoret p\u00ebr normalizimin e t\u00eb dh\u00ebnave hyr\u00ebse t\u00eb secil\u00ebs shtres\u00eb, duke ndihmuar n\u00eb zgjidhjen e problemit t\u00eb zhvendosjes s\u00eb brendshme t\u00eb kovariateve. N\u00ebse p\u00ebrdorni Dropout dhe Batch Normalization s\u00eb bashku, <noindex><a rel=\"nofollow\" href=\"https:\/\/towardsdatascience.com\/pitfalls-of-batch-norm-in-tensorflow-and-sanity-checks-for-training-networks-e86c207548c8\">shikoni k\u00ebt\u00eb artikull<\/a><\/noindex>.<\/p>\n<p><b>Shkalla e gradientit stokastik (SGD)<\/b> \u2014 ekzistojn\u00eb disa variante t\u00eb SGD q\u00eb p\u00ebrdorin impuls, shpejt\u00ebsi t\u00eb adapTuar t\u00eb t\u00eb m\u00ebsuarit dhe metod\u00ebn e Nesterovit. Megjithat\u00eb, asnj\u00ebra prej tyre nuk ka nj\u00eb avantazh t\u00eb qart\u00eb as n\u00eb efikasitetin e trajnimit dhe as n\u00eb p\u00ebrgjithshm\u00ebrin\u00eb (<noindex><a rel=\"nofollow\" href=\"http:\/\/ruder.io\/optimizing-gradient-descent\/\">detaje k\u00ebtu<\/a><\/noindex>).<\/p>\n<p><b>Regjistrimi<\/b> \u2014 \u00ebsht\u00eb thelb\u00ebsore p\u00ebr nd\u00ebrtimin e nj\u00eb modeli t\u00eb p\u00ebrgjithsh\u00ebm, pasi shton nj\u00eb nd\u00ebshkim p\u00ebr kompleksitetin e modelit ose vlerat ekstreme t\u00eb parametrave. Ky \u00ebsht\u00eb nj\u00eb m\u00ebnyr\u00eb p\u00ebr t\u00eb ulur varianc\u00ebn e modelit pa rritur ndjesh\u00ebm parametra t\u00eb tij. M\u00eb shum\u00eb <noindex><a rel=\"nofollow\" href=\"http:\/\/cs231n.github.io\/neural-networks-3\/#ratio\">informacione k\u00ebtu<\/a><\/noindex>.<\/p>\n<p>P\u00ebr t\u00eb vler\u00ebsuar vet\u00eb gjith\u00e7ka, \u00ebsht\u00eb e nevojshme t\u00eb \u00e7aktivizoni regularizimin dhe t\u00eb kontrolloni gradientin e humbjes t\u00eb dh\u00ebnave vet\u00eb.<\/p>\n<p><b>Dropout <\/b>\u2014 nj\u00eb tjet\u00ebr metod\u00eb p\u00ebr rregullimin e rrjetit tuaj p\u00ebr t\u00eb parandaluar mbingarkes\u00ebn. Gjat\u00eb trajnimit, dropout kryhet vet\u00ebm duke mbajtur aktiv nj\u00eb neuron me nj\u00eb probabilitet t\u00eb caktuar p (hiperparamet\u00ebr) ose duke e vendosur ato n\u00eb zero n\u00eb rastin e kund\u00ebrt. Si rezultat, rrjeti duhet t\u00eb p\u00ebrdor\u00eb nj\u00eb n\u00ebngrup tjet\u00ebr parametrash p\u00ebr \u00e7do grup m\u00ebsues, duke reduktuar variacionet e parametrave t\u00eb caktuar q\u00eb b\u00ebhen dominues.<\/p>\n<p>\u00cbsht\u00eb e r\u00ebnd\u00ebsishme: n\u00ebse p\u00ebrdorni si dropout ashtu edhe normalizimin e grupit, b\u00ebni kujdes me rendin e k\u00ebtyre operacioneve ose madje me p\u00ebrdorimin e tyre t\u00eb p\u00ebrbashk\u00ebt. T\u00eb gjitha k\u00ebto ende diskutohen dhe plot\u00ebsohen. Ja dy diskutime t\u00eb r\u00ebnd\u00ebsishme n\u00eb lidhje me k\u00ebt\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/stackoverflow.com\/questions\/39691902\/ordering-of-batch-normalization-and-dropout\">n\u00eb Stackoverflow<\/a><\/noindex> dhe <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1801.05134\">Arxiv<\/a><\/noindex>.<\/p>\n<h3>Kontrolli i pun\u00ebs<\/h3>\n<p>\nK\u00ebtu b\u00ebhet fjal\u00eb p\u00ebr dokumentimin e proceseve t\u00eb pun\u00ebs dhe eksperimenteve. N\u00ebse nuk dokumentoni asgj\u00eb, mund t\u00eb harroni, p\u00ebr shembull, cila \u00ebsht\u00eb shpejt\u00ebsia e t\u00eb m\u00ebsuarit ose pesha e klasave. Fal\u00eb kontrollit, mund t\u00eb shikoni dhe riprodhoni eksperimente t\u00eb m\u00ebparshme pa probleme. Kjo ndihmon n\u00eb reduktimin e eksperimenteve t\u00eb p\u00ebrs\u00ebritura.<\/p>\n<p>E v\u00ebrtet\u00eb, dokumentimi manual mund t\u00eb b\u00ebhet nj\u00eb detyr\u00eb e komplikuar n\u00eb rast se ka nj\u00eb volum t\u00eb madh pune. K\u00ebtu ndihmojn\u00eb mjete si Comet.ml, t\u00eb cilat ndihmojn\u00eb n\u00eb regjistrimin automatik t\u00eb grupeve t\u00eb t\u00eb dh\u00ebnave, ndryshimeve n\u00eb kod, historis\u00eb s\u00eb eksperimenteve dhe modeleve prodhuese, duke p\u00ebrfshir\u00eb informacione ky\u00e7e rreth modelit tuaj (hiperparametrat, treguesit e performanc\u00ebs s\u00eb modelit dhe informacionin mbi ambientin).<\/p>\n<p>Rrjeti nervor mund t\u00eb jet\u00eb tep\u00ebr i ndjesh\u00ebm ndaj ndryshimeve t\u00eb vogla, dhe kjo do t\u00eb \u00e7oj\u00eb n\u00eb r\u00ebnie t\u00eb performanc\u00ebs s\u00eb modelit. Ndjekja dhe dokumentimi i pun\u00ebs jan\u00eb hapat e par\u00eb q\u00eb duhen nd\u00ebrmarr\u00eb p\u00ebr t\u00eb standardizuar ambientin dhe modelimin.<\/p>\n<p><img decoding=\"async\" alt=\"Punojm\u00eb me rrjetet nervore: lista kontrolluese p\u00ebr debugimin\" src=\"\/wp-content\/uploads\/2019\/03\/37b3e4ef97ea39a3d28ffca5c1dbf1e5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nShpresoj q\u00eb ky post t\u00eb jet\u00eb nj\u00eb pik\u00ebnisje nga e cila do t\u00eb filloni debugimin e rrjetit tuaj nervor.<\/p>\n<blockquote><p><b>Skillbox rekomandon:<\/b><\/p>\n<ul>\n<li>Kurs praktik dyvje\u00e7ar <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\">\u00abUn\u00eb jam zhvillues web PRO\u00bb<\/a><\/noindex>.<\/li>\n<li>Kurs online <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\">\u00abZhvillues C# nga 0\u00bb<\/a><\/noindex>.<\/li>\n<li>Kurs praktik nj\u00ebvje\u00e7ar <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\">\u00abPHP zhvillues nga 0 n\u00eb PRO\u00bb<\/a><\/noindex>.\n<\/li>\n<\/ul>\n<\/blockquote>\n<p>Burimi: <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.0.1 - 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\/sq\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\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\/sq\/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\udd47Puna me rrjetet nervore: lista kontrolli p\u00ebr debugimin | ProHoster","description":"Kodi i produkteve softuerike p\u00ebr makina.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/rabotaem-s-nejrosetyami-chek-list-dlya-otladki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","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\/sq\/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\/sq\/wp-json\/wp\/v2\/posts\/30028","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=30028"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/30028\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=30028"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=30028"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=30028"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}