
Source:
Ny fihemorana tsipika dia iray amin'ireo algorithm fototra ho an'ny faritra maro mifandraika amin'ny famakafakana data. Mazava ny anton’izany. Ity dia algorithm tena tsotra sy azo takarina, izay nanampy tamin'ny fampiasana azy miely patrana nandritra ny am-polony, raha tsy an-jatony, taona maro. Ny hevitra dia ny hiheverantsika ny fiankinan-doha amin'ny fari-piainana iray amin'ny fitambaran'ny fari-piainana hafa, ary avy eo miezaka mamerina io fiankinan-doha io.
Fa ity lahatsoratra ity dia tsy momba ny fampiasana ny linear regression hamahana olana azo ampiharina. Eto isika dia handinika ireo endri-javatra mahaliana amin'ny fampiharana ny algorithm fizarana ho an'ny fanarenana azy, izay sendra anay rehefa nanoratra module fianarana milina amin'ny . Ny matematika fototra kely, ny fianarana milina, ary ny informatika zaraina dia afaka manampy anao hamantatra ny fomba hanatanterahana ny fihemorana tsipika na dia zaraina amin'ny node an'arivony aza ny angonao.
Inona no resahina?
Miatrika ny asa famerenana ny fiankinan-doha amin'ny linear isika. Amin'ny maha angon-drakitra fampidirana, dia misy andiana vectors misy fari-pahaizana tsy miankina, izay samy mifandray amin'ny sanda iray amin'ny fari-piainana miankina. Ity data ity dia azo aseho amin'ny endrika matrices roa:

Ankehitriny, satria ny fiankinan-doha dia heverina, ary, ankoatr'izay, linear, dia hanoratra ny fiheverantsika amin'ny endriky ny vokatra matrices isika (mba hanatsorana ny firaketana, eto sy ambany dia heverina fa ny fe-potoana malalaka amin'ny equation dia miafina ao ambadiky ny
, ary ny tsanganana farany amin'ny matrix
misy unit):

Toa toy ny rafitry ny equation linear, sa tsy izany? Toa izany, saingy azo inoana fa tsy hisy vahaolana amin'ny rafitra fampitoviana toy izany. Ny anton'izany dia ny tabataba, izay misy amin'ny angon-drakitra tena izy. Ny antony iray hafa dia ny tsy fisian'ny fiankinan-doha amin'ny tsipika toy izany, izay azo toherina amin'ny fampidirana ireo fari-pahaizana fanampiny izay tsy miankina amin'ny tany am-boalohany. Diniho ity ohatra manaraka ity:

Source:
Ity dia ohatra tsotra amin'ny fihemorana tsipika izay mampiseho ny fifandraisan'ny fari-piainana iray (manaraka ny axis
) avy amin'ny variable hafa (manaraka ny axis
). Mba hahazoana vahaolana ny rafitry ny equation linear mifanitsy amin'ity ohatra ity, ny teboka rehetra dia tsy maintsy mipetraka amin'ny tsipika mahitsy mitovy. Tsy marina anefa izany. Saingy tsy mandainga amin'ny tsipika mahitsy mitovy izy ireo noho ny tabataba (na satria diso ny fiheverana ny fifandraisana an-tariby). Noho izany, mba hamerenana ny fifandraisana linear amin'ny angona tena izy, dia matetika ilaina ny mampiditra eritreritra iray hafa: ny angona fidirana dia misy tabataba ary io tabataba io dia manana tabataba. . Azonao atao ny manao vinavina momba ny karazana fitsinjarana tabataba hafa, fa amin'ny ankamaroan'ny tranga dia ny fizarana ara-dalàna no heverina, izay horesahina bebe kokoa.
Fomba mety indrindra
Noho izany, noheverinay ny fisian'ny tabataba miparitaka ara-dalàna. Inona no tokony hatao amin'ny toe-javatra toy izany? Ho an'ity tranga ity amin'ny matematika dia misy ary ampiasaina betsaka . Raha fintinina dia ao amin'ny safidy ny tena maha izy azy ary ny maximization azy manaraka.
Miverina amin'ny famerenana ny fifandraisana andalana avy amin'ny angona miaraka amin'ny tabataba mahazatra izahay. Mariho fa ny fifandraisana linear noheverina dia ny fanantenana matematika
fizarana ara-dalàna misy. Mandritra izany fotoana izany, ny mety ho
maka sanda iray na hafa, arakaraka ny fisian'ny azo jerena
, toy izao manaraka izao:

Aoka isika hisolo toerana
и
Ny variables ilaintsika dia:

Ny hany sisa tavela dia ny fitadiavana ny vector
, izay mety ho ambony indrindra. Mba hanamafisana ny asa toy izany, dia tsara ny maka logarithma azy aloha (ny logaritma amin'ny asa dia hahatratra ny fara-tampony amin'ny teboka mitovy amin'ny asa):

Izay, ho setrin'izany, dia midina amin'ny fampihenana ny asa manaraka:

Raha ny marina, izany dia antsoina hoe fomba . Matetika ireo hevitra rehetra voalaza etsy ambony ireo dia nesorina ary io fomba io dia ampiasaina tsotra izao.
QR decomposition
Ny kely indrindra amin'ny asa etsy ambony dia azo jerena amin'ny fitadiavana ny teboka misy ny gradient amin'ity asa ity dia aotra. Ary ny gradient dia hosoratana toy izao manaraka izao:

dia fomba matrix hamahana ny olana fampihenana ampiasaina amin'ny fomba efamira kely indrindra. Amin'io lafiny io, avereno soratana ny equation amin'ny endrika matrix:

Noho izany dia simba ny matrix
amin'ny matrices
и
ary manatanteraka andiam-panovàna (ny algorithm decomposition QR dia tsy hojerena eto, fa ny fampiasana azy amin'ny asa atao ihany):

teraka
dia orthogonal. Izany dia mamela antsika hanaisotra ny asa
:

Ary raha soloinao
amin'ny
, dia hahomby izany
. Raha dinihina izany
dia matrix triangular ambony, toa izao:

Azo vahana amin'ny alalan'ny fomba fanoloana izany. singa
dia toerana toy ny
, singa teo aloha
dia toerana toy ny
sy ny sisa.
Tsara ny manamarika eto fa ny fahasarotan'ny algorithm vokatry ny fampiasana ny QR decomposition dia mitovy amin'ny
. Ankoatra izany, na dia eo aza ny zava-misy fa ny asa fampitomboana matrix dia mifanitsy tsara, dia tsy azo atao ny manoratra dikan-teny mizara mahomby amin'ity algorithm ity.
Gradient Descent
Rehefa miresaka momba ny fampihenana ny asa iray, dia ilaina ny mitadidy foana ny fomba fiantsonan'ny gradient (stochastic). Ity dia fomba fanalefahana tsotra sy mahomby mifototra amin'ny kajy miverimberina ny gradient amin'ny asa iray amin'ny teboka iray ary avy eo mamindra azy amin'ny lalana mifanohitra amin'ny gradient. Ny dingana tsirairay toy izany dia mitondra ny vahaolana manakaiky ny kely indrindra. Mbola mitovy ny gradient:

Ity fomba ity koa dia mifanandrify tsara ary mizara noho ny toetran'ny gradient operator. Mariho fa ao amin'ny formula etsy ambony, eo ambanin'ny mari-pamantarana dia misy teny tsy miankina. Raha lazaina amin'ny teny hafa dia afaka manao kajy tsy miankina ny gradient ho an'ny indices rehetra
hatramin'ny voalohany ka hatramin'ny
, mifanaraka amin'izany, kajy ny gradient ho an'ny indices amin'ny
до
. Dia ampio ny gradient vokatra. Ny vokatry ny fanampim-panazavana dia hitovy amin'ny hoe kajy avy hatrany ny gradient ho an'ny indices avy amin'ny voalohany ka hatramin'ny
. Noho izany, raha zaraina amin'ny ampahany maromaro ny angon-drakitra, dia azo atao kajy tsy miankina amin'ny ampahany tsirairay ny gradient, ary azo fintinina ny valin'ireo kajy ireo mba hahazoana ny vokatra farany:

Amin'ny fomba fijery fampiharana, mifanaraka amin'ny paradigma izany . Isaky ny dingana amin'ny fidinana miandalana dia misy asa alefa any amin'ny node data tsirairay mba kajy ny gradient, avy eo dia angonina miaraka ny gradient kajy, ary ny vokatry ny isany dia ampiasaina hanatsarana ny vokatra.
Na dia eo aza ny fanamorana ny fampiharana sy ny fahafahana manatanteraka ao amin'ny paradigma MapReduce, dia manana ny tsy fahampiana ihany koa ny fidinan'ny gradient. Indrindra indrindra, ny isan'ny dingana takiana mba hahazoana ny convergence dia ambony lavitra raha oharina amin'ny fomba hafa manokana.
LSQR
dia fomba iray hafa hamahana ny olana, izay mety na amin'ny famerenana amin'ny laoniny ny fihemorana amin'ny tsipika ary amin'ny famahana ny rafitry ny equation linear. Ny tena mampiavaka azy dia ny fampifangaroana ny tombony amin'ny fomba matrix sy ny fomba fiasa iterative. Ny fampiharana an'io fomba io dia hita ao amin'ny tranomboky roa , ary ao . Ny famaritana ity fomba ity dia tsy homena eto (azo jerena ao amin'ny lahatsoratra ). Ho solon'izay, haseho ny fomba fampifanarahana ny LSQR amin'ny famonoana amin'ny tontolo zaraina.
Ny fomba LSQR dia mifototra amin'ny . Ity dia fomba fiasa iterative, isaky ny mandeha dia ahitana ireto dingana manaraka ireto:

Fa raha mihevitra isika fa ny matrix
dia zaraina mitsivalana, avy eo dia azo aseho ho dingana roa MapReduce ny fanodinana tsirairay. Amin'izany fomba izany, azo atao ny manamaivana ny famindrana angon-drakitra mandritra ny famerenan'ny tsirairay (vectors manana halavany mitovy amin'ny isan'ny tsy fantatra ihany):

Io fomba io no ampiasaina amin'ny fampiharana ny regression linear amin'ny .
famaranana
Betsaka ny algorithm fanarenana ny famerenana amin'ny laoniny, saingy tsy izy rehetra no azo ampiharina amin'ny toe-javatra rehetra. Noho izany ny fanimbana QR dia tena tsara ho an'ny vahaolana marina amin'ny angon-drakitra kely. Tsotra ny fampiharana ny fidinana gradient ary ahafahanao mahita vahaolana eo ho eo haingana. Ary ny LSQR dia manambatra ny toetra tsara indrindra amin'ireo algorithms roa teo aloha, satria azo zaraina izy io, mifamatotra haingana kokoa raha oharina amin'ny fidinana miandalana, ary mamela ny fijanonana aloha ny algorithm, tsy toy ny QR decomposition, mba hahitana vahaolana eo ho eo.
Source: www.habr.com
