Ukusebenza kunye neenethiwekhi ze-neural: uluhlu lokukhangela ukulungisa ingxaki

Ukusebenza kunye neenethiwekhi ze-neural: uluhlu lokukhangela ukulungisa ingxaki

Ikhowudi yeemveliso zesoftware yokufunda ngomatshini ihlala intsonkothile kwaye iyabhidisa. Ukubona kunye nokuphelisa iibugs kuyo ngumsebenzi onzima kakhulu. Nokuba ilula inethiwekhi ye-neural feedforward zifuna indlela enzulu yolwakhiwo lwenethiwekhi, ukuqaliswa kobunzima, kunye nokwandisa inethiwekhi. Impazamo encinci inokukhokelela kwiingxaki ezingathandekiyo.

Eli nqaku limalunga ne-algorithm yokulungisa iinethiwekhi zakho ze-neural.

I-Skillbox iyacebisa: Ikhosi esebenzayo Umphuhlisi wePython ukusuka ekuqaleni.

Siyakhumbuza: kubo bonke abafundi be "Habr" - isaphulelo se-ruble ye-10 xa ubhalisa kuyo nayiphi na ikhosi ye-Skillbox usebenzisa ikhowudi yokuphromotha "Habr".

I-algorithm inezigaba ezintlanu:

  • isiqalo esilula;
  • ukuqinisekiswa kwelahleko;
  • ukujonga iziphumo eziphakathi kunye noqhagamshelwano;
  • iparameter diagnostics;
  • ulawulo lomsebenzi.

Ukuba kukho into ebonakala inomdla ngakumbi kuwe kunabanye, ungatsiba kwangoko kula macandelo.

Ukuqala okulula

Inethiwekhi ye-neural enolwakhiwo oluntsonkothileyo, uhlengahlengiso, kunye nomcwangcisi wezinga lokufunda kunzima kakhulu ukulungisa ingxaki kunesiqhelo. Sikhohlisa kancinci apha, kuba inqaku ngokwalo linxulumene ngokungathanga ngqo nokulungiswa kweempazamo, kodwa oku kuseyingcebiso ebalulekileyo.

Isiqalo esilula kukudala imodeli eyenziwe lula kwaye uyiqeqeshe kwiseti enye (inqaku) ledatha.

Okokuqala sidala imodeli eyenziwe lula

Ukuqala ngokukhawuleza, senza inethiwekhi encinci kunye noluhlu olulodwa olufihliweyo kwaye ukhangele ukuba yonke into isebenza ngokuchanekileyo. Emva koko sidibanisa ngokuthe ngcembe imodeli, sijonga inkalo nganye entsha yesakhiwo sayo (uluhlu olongezelelweyo, ipharamitha, njl.), kwaye uqhubeke.

Siqeqesha imodeli kwisethi enye (inqaku) ledatha

Njengokukhangela ingqondo ekhawulezileyo yeprojekthi yakho, ungasebenzisa inqaku ledatha enye okanye ezimbini zoqeqesho ukuze uqinisekise ukuba inkqubo isebenza ngokuchanekileyo na. Inethiwekhi ye-neural kufuneka ibonise ukuchaneka kwe-100% kuqeqesho novavanyo. Ukuba oku akunjalo, ngoko mhlawumbi imodeli incinci kakhulu okanye sele unayo ibug.

Nokuba konke kulungile, lungiselela imodeli yexesha elinye okanye ngaphezulu ngaphambi kokuba uqhubeke.

Uvavanyo lwelahleko

Uqikelelo lwelahleko yeyona ndlela iphambili yokucokisa ukusebenza kwemodeli. Kufuneka uqinisekise ukuba ilahleko ifanelekile kwingxaki kwaye imisebenzi yelahleko ilinganiswe kwisikali esichanekileyo. Ukuba usebenzisa ngaphezu kodidi olunye lwelahleko, qiniseka ukuba zonke zilandelelana kwaye zilinganiswe ngokuchanekileyo.

Kubalulekile ukunikela ingqalelo kwilahleko yokuqala. Jonga ukuba isiphumo sisondele kangakanani kwisiphumo esilindelekileyo ukuba imodeli iqale ngoqikelelo olungakhethiyo. IN Umsebenzi kaAndrei Karpathy ucebisa oku kulandelayo:: β€œQinisekisa ukuba ufumana iziphumo ozilindeleyo xa uqala ngenani elincinci leeparamitha. Kungcono ukujonga ngokukhawuleza ilahleko yedatha (kunye neqondo lokumisela rhoqo kwi-zero). Ngokomzekelo, kwi-CIFAR-10 nge-classifier ye-Softmax, silindele ukuba ilahleko yokuqala ibe yi-2.302 kuba kulindeleke ukuba ukusabalalisa okulindelweyo ngu-0,1 kwiklasi nganye (ekubeni kukho iiklasi ezili-10) kwaye ilahleko yeSoftmax yinto engenakwenzeka yelogi yeklasi echanekileyo. njenge- βˆ’ ln (0.1) = 2.302.”

Kumzekelo wokubini, ubalo olufanayo lwenziwa ngokulula kwiklasi nganye. Apha, umzekelo, kukho idatha: 20% 0 kunye 80% 1's. Ilahleko yokuqala elindelekileyo iya kuba yi-0,2ln (0,5) -0,8ln (0,5) = 0,693147. Ukuba isiphumo sikhulu kuno-1, sinokubonisa ukuba ubunzima benethiwekhi ye-neural ayilingani ngokufanelekileyo okanye idatha ayiqhelekanga.

Ukujonga iziphumo eziphakathi kunye noqhagamshelo

Ukulungisa inethiwekhi ye-neural, kuyimfuneko ukuqonda amandla eenkqubo ngaphakathi kuthungelwano kunye nendima yomaleko ophakathi komntu ngamnye njengoko eqhagamshelwe. Nazi iimpazamo eziqhelekileyo onokudibana nazo:

  • iintetho ezingachanekanga zohlaziyo lwegradle;
  • uhlaziyo lobunzima alusetyenziswanga;
  • ukugqabhuka kwemithamo.

Ukuba amaxabiso egradient ngu-zero, oku kuthetha ukuba ireyithi yokufunda kwi-optimizer icotha kakhulu, okanye ufumana intetho engalunganga yokuhlaziya i-gradient.

Ukongeza, kuyafuneka ukubeka iliso kumaxabiso emisebenzi yokuvula, iintsimbi kunye nohlaziyo loluhlu ngalunye. Umzekelo, ubukhulu bohlaziyo lweparameter (ubunzima kunye nokuthambekela) kufuneka ibe 1-e3.

Kukho into ebizwa ngokuba yi-"Dying ReLU" okanye "ingxaki yegradient ephelayo", xa i-ReLU neurons iya kukhupha i-zero emva kokufunda ixabiso elikhulu elibi elibi lobunzima bobunzima bayo. Ezi neurons aziphinda zigxothwe kwakhona nakweyiphi na indawo kwidatha.

Unokusebenzisa ukujonga ukuthambeka ukuchonga ezi mpazamo ngokusondeza ukuthambeka usebenzisa indlela yamanani. Ukuba isondele kwiigradients ezibaliweyo, i-backpropagation iphunyezwe ngokuchanekileyo. Ukwenza itshekhi yegradient, jonga ezi zixhobo zibalaseleyo zivela kwi-CS231 apha ΠΈ aphaKwaye nayo isifundo Andrew Nga kwesi sihloko.

UFaizan Sheikh ibonisa iindlela ezintathu eziphambili zokujonga inethiwekhi ye-neural:

  • Izandulela ziindlela ezilula ezisibonisa isakhiwo esiqhelekileyo somzekelo oqeqeshiweyo. Ezi ziquka imveliso yeemilo okanye izihluzi zomaleko ngamnye wothungelwano lwe-neural kunye neeparamitha ngaphakathi kwinqanaba ngalinye.
  • Ukuqaliswa kusekwe. Kuzo, sicacisa ukusebenza kwee-neurons okanye amaqela e-neuron ukuqonda imisebenzi yawo.
  • Ngokusekelwe kwiigradients. Ezi ndlela zikholisa ukukhohlisa i-gradients ezenziwe ukusuka phambili nasemva kokupasa koqeqesho lwemodeli (kubandakanya iimephu ezibukhali kunye neemephu zokuvula iklasi).

Kukho izixhobo ezininzi eziluncedo zokubonisa ukuqaliswa kunye nokudityaniswa kweeleya ezizimeleyo, umz. ConX ΠΈ Tensorboard.

Ukusebenza kunye neenethiwekhi ze-neural: uluhlu lokukhangela ukulungisa ingxaki

Parameter diagnostics

Iinethiwekhi ze-Neural zineeparamitha ezininzi ezisebenzisanayo, nto leyo eyenza kube nzima ukwenza ngcono. Ngokwenyani, eli candelo ngumxholo wophando olusebenzayo ziingcali, ke ezi ngcebiso zingezantsi kufuneka zithathelwe ingqalelo kuphela njengengcebiso, indawo yokuqala yokwakha.

Ubungakanani bepakethi (ubungakanani bebhetshi) - Ukuba ufuna ukuba ubungakanani bebhetshi bube bukhulu ngokwaneleyo ukuze ufumane uqikelelo lwemposiso echanekileyo, kodwa incinci ngokwaneleyo yokwehla kwestochastic gradient (SGD) ukwenza inethiwekhi yakho ilungelelaniswe. Ubungakanani beebhetshi ezincinci buya kukhokelela ekuhlanganeni ngokukhawuleza ngenxa yengxolo ngexesha lenkqubo yoqeqesho kwaye emva koko kubunzima bokuphucula. Oku kuchazwe ngokubanzi apha.

Izinga lokufunda - ephantsi kakhulu iya kukhokelela ekuhlanganeni okucothayo okanye umngcipheko wokuxinga kwiminima yendawo. Kwangaxeshanye, izinga lokufunda eliphezulu liya kubangela ukwahluka kokuphucula kuba ubeka umngcipheko wokutsiba kwindawo enzulu kodwa emxinwa yomsebenzi welahleko. Zama ukusebenzisa isantya sokuyinciphisa ngelixa uqeqesha inethiwekhi ye-neural. Ihlaziyiwe nge-CS231n kukho icandelo elikhulu elinikezelwe kule ngxaki.

Ukunqunyulwa kwegradientβ€Š - ukunciphisa iparameter gradients ngexesha lokusasazwa kwe-backpropagation ngexabiso eliphezulu okanye isiqhelo somda. Iluncedo ekulungiseni iingxaki nakuphi na ukugqabhuka kwemitha yemitha onokuthi udibane nayo kwinqaku lesithathu.

Ibhetshi yesiqhelo - esetyenziselwa ukulungelelanisa idatha yegalelo lomaleko ngamnye, osivumela ukuba sisombulule ingxaki ye-covariate shift yangaphakathi. Ukuba usebenzisa iDropout kunye neBatch Norma kunye, jonga eli nqaku.

Ukwehla kwe-Stochastic gradient (SGD) - kukho iindidi ezininzi ze-SGD ezisebenzisa amandla, amazinga okufunda okuguquguqukayo kunye nendlela ye-Nesterov. Nangona kunjalo, akukho namnye kubo onenzuzo ecacileyo malunga nokusebenza ngokufanelekileyo kunye nokusebenza ngokubanzi (iinkcukacha apha).

Uhlengahlengiso - ibalulekile ekwakheni imodeli enokufezekiswa ngokubanzi, kuba yongeza isohlwayo kumzekelo wokuntsokotha okanye amaxabiso eparameter agqithisileyo. Le yindlela yokunciphisa ukuhluka kwemodeli ngaphandle kokwandisa kakhulu ukuthambekela kwayo. Kaninzi ulwazi oluneenkcukacha - apha.

Ukuzivavanya yonke into ngokwakho, kufuneka ukhubaze uhlengahlengiso kwaye ujonge ilahleko yedatha ngokwakho.

Ukuyeka yenye indlela yokulungelelanisa umsebenzi womnatha wakho ukunqanda ukuxinana. Ngethuba loqeqesho, ukuyeka kuqhutyelwa kuphela ngokugcina umsebenzi we-neuron kunye ne-probability ethile ye-p (hyperparameter) okanye ukuyibeka kwi-zero kwimeko echaseneyo. Ngenxa yoko, uthungelwano kufuneka lusebenzise i-subset ehlukeneyo yeeparitha kwibhetshi nganye yoqeqesho, enciphisa utshintsho kwiiparameters ezithile eziba negunya.

Kubalulekile: Ukuba usebenzisa zombini ukuyeka isikolo kunye nebhetshi yesiqhelo, lumka malunga nolandelelwano lwale misebenzi okanye uyisebenzise kunye. Konke oku kusaxoxwa kwaye kongezwa. Nazi iingxoxo ezimbini ezibalulekileyo ngalo mbandela kwiStackoverflow ΠΈ uvimba.

Ulawulo lomsebenzi

Imalunga nokubhala ukuqhutywa komsebenzi kunye nemifuniselo. Ukuba awubhali nantoni na, unokulibala, umzekelo, ukuba yeyiphi ireyithi yokufunda okanye iintsimbi zeklasi ezisetyenziswayo. Ngombulelo kulawulo, unokujonga ngokulula kwaye uvelise kwakhona imifuniselo yangaphambili. Oku kukuvumela ukuba unciphise inani lemifuniselo ephindwe kabini.

Nangona kunjalo, amaxwebhu abhalwe ngesandla anokuba ngumsebenzi onzima kwimeko yomthamo omkhulu womsebenzi. Yilapho izixhobo ezifana neComet.ml zingena khona ukukunceda ukuba ungene ngokuzenzekelayo iiseti zedatha, utshintsho lwekhowudi, imbali yovavanyo, kunye neemodeli zokuvelisa, kubandakanywa nolwazi oluphambili malunga nemodeli yakho (i-hyperparameters, i-model performance metrics, kunye nolwazi lokusingqongileyo).

Inethiwekhi ye-neural inokukhathazeka kakhulu kwiinguqu ezincinci, kwaye oku kuya kukhokelela ekwehleni komsebenzi wemodeli. Ukulandela umkhondo kunye nokubhala umsebenzi wakho linyathelo lokuqala onokuthi ulithathe ukulungelelanisa okusingqongileyo kunye nokwenza imodeli.

Ukusebenza kunye neenethiwekhi ze-neural: uluhlu lokukhangela ukulungisa ingxaki

Ndiyathemba ukuba esi sithuba sinokuba sisiqalo sokuba uqalise ukulungisa i-neural network yakho.

I-Skillbox iyacebisa:

umthombo: www.habr.com

Yongeza izimvo