Ukuhlehla komugqa nezindlela zokuthola kabusha

Ukuhlehla komugqa nezindlela zokuthola kabusha
Source: kkcdd

Ukuhlehla komugqa kungenye ye-algorithms eyisisekelo yezindawo eziningi ezihlobene nokuhlaziywa kwedatha. Isizathu salokhu sisobala. Lena i-algorithm elula kakhulu futhi eqondakalayo, eye yaba nomthelela ekusetshenzisweni kwayo kabanzi amashumi amaningi, uma kungengamakhulu eminyaka. Umqondo uwukuthi sithatha ukuncika komugqa kokuhlukile okukodwa kusethi yokunye okuguquguqukayo, bese sizama ukubuyisela lokhu kuncika.

Kodwa lesi sihloko asikona ukusebenzisa ukuhlehla komugqa ukuxazulula izinkinga ezingokoqobo. Lapha sizocubungula izici ezithakazelisayo zokusetshenziswa kwama-algorithms asabalalisiwe ukuze ilulame, esihlangabezane nayo lapho sibhala imojula yokufunda yomshini I-Apache Ignite. Izibalo ezincane eziyisisekelo, ukufunda komshini, kanye nekhompuyutha esabalalisiwe kungakusiza ukuthi uthole ukuthi ungenza kanjani ukuhlehla komugqa nanoma idatha yakho isatshalaliswa ezinkulungwaneni zamanodi.

Sikhuluma ngani?

Sibhekene nomsebenzi wokubuyisela ukuncika komugqa. Njengedatha yokufaka, isethi yamavektha ezinto eziguquguqukayo okuthiwa zizimele zinikezwa, ngayinye yazo ehlotshaniswa nenani elithile lokuhluka okuncikile. Le datha ingamelwa ngendlela yamatrices amabili:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Manje, njengoba ukuncika kucatshangwa, futhi, ngaphezu kwalokho, okuqondile, sizobhala ukucabanga kwethu ngendlela yomkhiqizo wamatrices (ukwenza kube lula ukurekhoda, lapha nangaphansi kucatshangwa ukuthi isikhathi samahhala se-equation sifihliwe ngemuva. Ukuhlehla komugqa nezindlela zokuthola kabusha, kanye nekholomu yokugcina ye-matrix Ukuhlehla komugqa nezindlela zokuthola kabusha iqukethe amayunithi):

Ukuhlehla komugqa nezindlela zokuthola kabusha

Kuzwakala kufana nesistimu yezibalo zomugqa, akunjalo? Kubonakala sengathi, kodwa cishe ngeke kube nezixazululo ohlelweni olunjalo lwezibalo. Isizathu salokhu umsindo, okhona cishe kunoma iyiphi idatha yangempela. Esinye isizathu kungase kube ukuntuleka kokuncika komugqa kanjalo, okunganqandwa ngokwethula okuguquguqukayo okwengeziwe okuncike ngokungaqondile kokwangempela. Cabangela isibonelo esilandelayo:
Ukuhlehla komugqa nezindlela zokuthola kabusha
Source: Wikipedia

Lesi isibonelo esilula sokuhlehla komugqa esibonisa ubudlelwano bokuguquguquka okukodwa (kuhambisana ne-eksisi Ukuhlehla komugqa nezindlela zokuthola kabusha) kokunye okuguquguqukayo (kuhambisana ne-eksisi Ukuhlehla komugqa nezindlela zokuthola kabusha). Ukuze uhlelo lwezibalo zomugqa oluhambisana nalesi sibonelo lube nesixazululo, wonke amaphuzu kufanele alale ncamashi emugqeni ofanayo oqondile. Kodwa lokho akulona iqiniso. Kodwa awaqambi amanga emugqeni ofanayo oqondile ngenxa yomsindo (noma ngenxa yokuthi ukuqagela kobudlelwano bomugqa bekunephutha). Ngakho-ke, ukuze ubuyisele ubudlelwano bomugqa kusuka kudatha yangempela, ngokuvamile kuyadingeka ukwethula omunye umcabango: idatha yokufaka iqukethe umsindo futhi lo msindo ukusatshalaliswa okuvamile. Ungenza ukucabangela mayelana nezinye izinhlobo zokusabalalisa umsindo, kodwa ezimweni eziningi ukusabalalisa okuvamile okucatshangelwayo, okuzoxoxwa ngakho.

Indlela enkulu yokuba nokwenzeka

Ngakho-ke, sicabangele ukuba khona komsindo osakazwa ngokungahleliwe. Yini okufanele uyenze esimweni esinjalo? Kulokhu kwizibalo kukhona futhi isetshenziswa kabanzi indlela enkulu yamathuba. Kafushane, ingqikithi yayo ilele ekukhetheni imisebenzi okungenzeka kanye nokukhulisa kwayo okwalandela.

Sibuyela ekubuyiseleni ubudlelwano bomugqa kusuka kudatha enomsindo ojwayelekile. Qaphela ukuthi ubudlelwano bomugqa ocatshangwayo buwukulindela kwezibalo Ukuhlehla komugqa nezindlela zokuthola kabusha ukusatshalaliswa okujwayelekile okukhona. Ngesikhathi esifanayo, amathuba okuthi Ukuhlehla komugqa nezindlela zokuthola kabusha ithatha inani elilodwa noma elinye, kuncike ekubeni khona kwezinto ezibonakalayo Ukuhlehla komugqa nezindlela zokuthola kabusha, Ngokulandelayo:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Manje ake sishintshe esikhundleni Ukuhlehla komugqa nezindlela zokuthola kabusha ΠΈ Ukuhlehla komugqa nezindlela zokuthola kabusha Okuguquguqukayo esikudingayo yilawa:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Okusele ukuthola i-vector Ukuhlehla komugqa nezindlela zokuthola kabusha, lapho la mathuba aphezulu khona. Ukwandisa umsebenzi onjalo, kulula ukuthatha i-logarithm yayo kuqala (i-logarithm yomsebenzi izofinyelela ubuningi endaweni efanayo nomsebenzi ngokwawo):

Ukuhlehla komugqa nezindlela zokuthola kabusha

Okuyikhona, okufika phansi ekunciphiseni umsebenzi olandelayo:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Ngendlela, lokhu kubizwa ngokuthi indlela okungenani izikwele. Ngokuvamile konke okucatshangelwayo okungenhla kuyashiywa futhi le ndlela imane isetshenziswe.

Ukwahlukaniswa kwe-QR

Ubuncane bomsebenzi ongenhla bungatholwa ngokuthola iphoyinti lapho ukugreda kwalo msebenzi kunguziro. Futhi i-gradient izobhalwa kanje:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Ukwahlukaniswa kwe-QR iyindlela ye-matrix yokuxazulula inkinga yokunciphisa esetshenziswa endleleni yezikwele ezincane. Mayelana nalokhu, sibhala kabusha isibalo ngendlela ye-matrix:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Ngakho sibolisa i-matrix Ukuhlehla komugqa nezindlela zokuthola kabusha kumatikuletsheni Ukuhlehla komugqa nezindlela zokuthola kabusha ΠΈ Ukuhlehla komugqa nezindlela zokuthola kabusha futhi wenze uchungechunge lwezinguquko (i-algorithm yokuwohloka kwe-QR ngokwayo ngeke icatshangelwe lapha, ukusetshenziswa kwayo kuphela maqondana nomsebenzi owenziwayo):

Ukuhlehla komugqa nezindlela zokuthola kabusha

Matrix Ukuhlehla komugqa nezindlela zokuthola kabusha i-orthogonal. Lokhu kusivumela ukuthi sisuse umsebenzi Ukuhlehla komugqa nezindlela zokuthola kabusha:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Futhi uma esikhundleni Ukuhlehla komugqa nezindlela zokuthola kabusha on Ukuhlehla komugqa nezindlela zokuthola kabusha, khona-ke kuzolunga Ukuhlehla komugqa nezindlela zokuthola kabusha. Uma ucabangela lokho Ukuhlehla komugqa nezindlela zokuthola kabusha iyi-matrix engunxantathu ephezulu, ibonakala kanje:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Lokhu kungaxazululwa ngokusebenzisa indlela yokufaka esikhundleni. Isici Ukuhlehla komugqa nezindlela zokuthola kabusha itholakala njenge Ukuhlehla komugqa nezindlela zokuthola kabusha, isici sangaphambilini Ukuhlehla komugqa nezindlela zokuthola kabusha itholakala njenge Ukuhlehla komugqa nezindlela zokuthola kabusha nokunye.

Kuyaphawuleka lapha ukuthi inkimbinkimbi ye-algorithm ewumphumela ngenxa yokusetshenziswa kokubola kwe-QR ilingana Ukuhlehla komugqa nezindlela zokuthola kabusha. Ngaphezu kwalokho, naphezu kweqiniso lokuthi ukusebenza kokuphindaphinda kwe-matrix kuhambisana kahle, akunakwenzeka ukubhala inguqulo ephumelelayo esabalalisiwe yale algorithm.

Ukwehla kweGradient

Uma ukhuluma ngokunciphisa umsebenzi, kufanelekile ukukhumbula indlela yokwehla kwe-gradient (stochastic). Lena indlela elula nesebenzayo yokunciphisa esekelwe ekubaleni ngokuphindaphindiwe ukuthambekela komsebenzi endaweni ethile bese uwususa uqonde endaweni ephambene negradient. Isinyathelo ngasinye esinjalo siletha ikhambi eduze kokuncane. I-gradient isabukeka ifana:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Le ndlela iphinde ifaniswe kahle futhi isatshalaliswe ngenxa yezakhiwo zomugqa zomqhubi we-gradient. Qaphela ukuthi kule fomula engenhla, ngaphansi kophawu lwesamba kukhona imigomo ezimele. Ngamanye amazwi, singakwazi ukubala i-gradient ngokuzimela kuzo zonke izinkomba Ukuhlehla komugqa nezindlela zokuthola kabusha kusukela ekuqaleni kuya Ukuhlehla komugqa nezindlela zokuthola kabusha, ngokuhambisana nalokhu, bala ukuthambekela kwezinkomba nge Ukuhlehla komugqa nezindlela zokuthola kabusha ukuze Ukuhlehla komugqa nezindlela zokuthola kabusha. Bese wengeza ama-gradients avelayo. Umphumela wokwengeza uzofana nokuthi sibale ngokushesha i-gradient yezinkomba ukusuka kweyokuqala ukuya Ukuhlehla komugqa nezindlela zokuthola kabusha. Ngakho, uma idatha isatshalaliswa phakathi kwezingcezu ezimbalwa zedatha, i-gradient ingabalwa ngokuzimela esiqeshini ngasinye, bese imiphumela yalezi zibalo ingafingqwa ukuze kutholwe umphumela wokugcina:

Ukuhlehla komugqa nezindlela zokuthola kabusha

Ngokombono wokusebenzisa, lokhu kuhambisana nepharadigm ImephuNciphisa. Esinyathelweni ngasinye sokwehla kwegradient, umsebenzi uthunyelwa endaweni ngayinye yedatha ukuze kubalwe ukuthambeka, bese amagradient abaliwe aqoqwa ndawonye, ​​bese umphumela wesamba sawo usetshenziselwa ukuthuthukisa umphumela.

Ngaphandle kokusebenziseka kalula kanye nekhono lokuqalisa ku-paradigm ye-MapReduce, ukwehla kwe-gradient nakho kunezihibe zako. Ikakhulukazi, inani lezinyathelo ezidingekayo ukuze kufinyelelwe ekuhlanganeni liphezulu kakhulu uma liqhathaniswa nezinye izindlela ezikhethekile.

I-LSQR

I-LSQR kungenye indlela yokuxazulula inkinga, efanele kokubili ukubuyisela ukuhlehla komugqa kanye nokuxazulula amasistimu wezibalo zomugqa. Isici sayo esiyinhloko ukuthi sihlanganisa izinzuzo zezindlela ze-matrix kanye nendlela yokuphindaphinda. Ukusetshenziswa kwale ndlela kungatholakala kuyo yomibili imitapo yolwazi I-SciPy, futhi MATLAB. Incazelo yale ndlela ngeke inikezwe lapha (itholakala esihlokweni I-LSQR: I-algorithm yezibalo zomugqa omncane nezikwele ezincane ezigqagqene). Esikhundleni salokho, kuzoboniswa indlela yokuvumelanisa i-LSQR ukuze isetshenziswe endaweni esabalalisiwe.

Indlela ye-LSQR isuselwe ku inqubo ye-bidiagonalization. Lena inqubo ephindaphindayo, ukuphindaphinda ngakunye okuhlanganisa izinyathelo ezilandelayo:
Ukuhlehla komugqa nezindlela zokuthola kabusha

Kodwa uma sicabanga ukuthi matrix Ukuhlehla komugqa nezindlela zokuthola kabusha ihlukaniswe ngokuvundlile, bese ukuphindaphinda ngakunye kungamelwa njengezinyathelo ezimbili Zokunciphisa Imephu. Ngale ndlela, kungenzeka ukunciphisa ukudluliswa kwedatha ngesikhathi sokuphindaphinda ngakunye (kuphela ama-vector anobude obulingana nenani lokungaziwa):

Ukuhlehla komugqa nezindlela zokuthola kabusha

Yile ndlela esetshenziswayo uma kusetshenziswa ukuhlehla komugqa ku I-Apache Ignite ML.

isiphetho

Kunama-algorithms amaningi wokubuyisela ukuhlehla komugqa, kodwa akuwona wonke angasetshenziswa kuzo zonke izimo. Ngakho-ke ukubola kwe-QR kuhle kakhulu ngesixazululo esinembile kumasethi amancane wedatha. Ukwehla kwe-Gradient kulula ukuyisebenzisa futhi kukuvumela ukuthi uthole ngokushesha isixazululo esiseduze. Futhi i-LSQR ihlanganisa izakhiwo ezinhle kakhulu zama-algorithms amabili adlule, njengoba ingasatshalaliswa, ihlangana ngokushesha uma iqhathaniswa nokwehla kwe-gradient, futhi ivumela nokumiswa kwangaphambi kwesikhathi kwe-algorithm, ngokungafani nokubola kwe-QR, ukuthola isisombululo esiseduze.

Source: www.habr.com

Engeza amazwana