Linear regression sy ny fomba fanarenana azy

Linear regression sy ny fomba fanarenana azy
Source: xkcd

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 Apache Ignite. 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:

Linear regression sy ny fomba fanarenana azy

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 Linear regression sy ny fomba fanarenana azy, ary ny tsanganana farany amin'ny matrix Linear regression sy ny fomba fanarenana azy misy unit):

Linear regression sy ny fomba fanarenana azy

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:
Linear regression sy ny fomba fanarenana azy
Source: Wikipedia

Ity dia ohatra tsotra amin'ny fihemorana tsipika izay mampiseho ny fifandraisan'ny fari-piainana iray (manaraka ny axis Linear regression sy ny fomba fanarenana azy) avy amin'ny variable hafa (manaraka ny axis Linear regression sy ny fomba fanarenana azy). 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. fizarana ara-dalàna. 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 fomba mety indrindra. Raha fintinina dia ao amin'ny safidy ny tena maha izy azy asa mety 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 Linear regression sy ny fomba fanarenana azy fizarana ara-dalàna misy. Mandritra izany fotoana izany, ny mety ho Linear regression sy ny fomba fanarenana azy maka sanda iray na hafa, arakaraka ny fisian'ny azo jerena Linear regression sy ny fomba fanarenana azy, toy izao manaraka izao:

Linear regression sy ny fomba fanarenana azy

Aoka isika hisolo toerana Linear regression sy ny fomba fanarenana azy и Linear regression sy ny fomba fanarenana azy Ny variables ilaintsika dia:

Linear regression sy ny fomba fanarenana azy

Ny hany sisa tavela dia ny fitadiavana ny vector Linear regression sy ny fomba fanarenana azy, 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):

Linear regression sy ny fomba fanarenana azy

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

Linear regression sy ny fomba fanarenana azy

Raha ny marina, izany dia antsoina hoe fomba efamira kely indrindra. 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:

Linear regression sy ny fomba fanarenana azy

QR decomposition 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:

Linear regression sy ny fomba fanarenana azy

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

Linear regression sy ny fomba fanarenana azy

teraka Linear regression sy ny fomba fanarenana azy dia orthogonal. Izany dia mamela antsika hanaisotra ny asa Linear regression sy ny fomba fanarenana azy:

Linear regression sy ny fomba fanarenana azy

Ary raha soloinao Linear regression sy ny fomba fanarenana azy amin'ny Linear regression sy ny fomba fanarenana azy, dia hahomby izany Linear regression sy ny fomba fanarenana azy. Raha dinihina izany Linear regression sy ny fomba fanarenana azy dia matrix triangular ambony, toa izao:

Linear regression sy ny fomba fanarenana azy

Azo vahana amin'ny alalan'ny fomba fanoloana izany. singa Linear regression sy ny fomba fanarenana azy dia toerana toy ny Linear regression sy ny fomba fanarenana azy, singa teo aloha Linear regression sy ny fomba fanarenana azy dia toerana toy ny Linear regression sy ny fomba fanarenana azy sy ny sisa.

Tsara ny manamarika eto fa ny fahasarotan'ny algorithm vokatry ny fampiasana ny QR decomposition dia mitovy amin'ny Linear regression sy ny fomba fanarenana azy. 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:

Linear regression sy ny fomba fanarenana azy

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 Linear regression sy ny fomba fanarenana azy hatramin'ny voalohany ka hatramin'ny Linear regression sy ny fomba fanarenana azy, mifanaraka amin'izany, kajy ny gradient ho an'ny indices amin'ny Linear regression sy ny fomba fanarenana azy до Linear regression sy ny fomba fanarenana azy. 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 Linear regression sy ny fomba fanarenana azy. 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:

Linear regression sy ny fomba fanarenana azy

Amin'ny fomba fijery fampiharana, mifanaraka amin'ny paradigma izany MapReduce. 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

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 SciPy, ary ao MatLab. Ny famaritana ity fomba ity dia tsy homena eto (azo jerena ao amin'ny lahatsoratra LSQR: Algorithm ho an'ny fampitoviana tsipika kely sy efamira kely indrindra). Ho solon'izay, haseho ny fomba fampifanarahana ny LSQR amin'ny famonoana amin'ny tontolo zaraina.

Ny fomba LSQR dia mifototra amin'ny dingana bidiagonalization. Ity dia fomba fiasa iterative, isaky ny mandeha dia ahitana ireto dingana manaraka ireto:
Linear regression sy ny fomba fanarenana azy

Fa raha mihevitra isika fa ny matrix Linear regression sy ny fomba fanarenana azy 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):

Linear regression sy ny fomba fanarenana azy

Io fomba io no ampiasaina amin'ny fampiharana ny regression linear amin'ny Apache Ignite ML.

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

Mividiana fampiantranoana azo antoka ho an'ny tranokala misy fiarovana DDoS, mpizara VPS VDS 🔥 Mividiana fampiantranoana tranonkala azo antoka miaraka amin'ny fiarovana DDoS, mpizara VPS VDS | ProHoster