Regression linear û rêbazên ji bo vegerandina wê

Regression linear û rêbazên ji bo vegerandina wê
Source: xkcd

Regression linear yek ji algorîtmayên bingehîn e ku ji bo gelek deverên ku bi analîzkirina daneyê ve girêdayî ye. Sedema vê diyar e. Ev algorîtmayek pir hêsan û têgihîştî ye, ku bi dehan salan, heke ne bi sedan, beşdarî karanîna wê ya berfireh bûye. Fikir ev e ku em pêwendiyek xêzikî ya guhêrbarek bi komek guhêrbarên din ve dihesibînin, û dûv re hewl didin ku vê girêdayîbûnê vegerînin.

Lê ev gotar ne li ser karanîna paşveçûna xêzik e ku ji bo çareserkirina pirsgirêkên pratîkî bikar bîne. Li vir em ê taybetmendiyên balkêş ên pêkanîna algorîtmayên belavkirî yên ji bo vejandina wê, ya ku me di dema nivîsandina modulek fêrbûna makîneyê de pê re rû bi rû maye bihesibîne. Apache Ignite. Piçek matematîkî ya bingehîn, fêrbûna makîneyê, û hesabkirina belavbûyî dikare ji we re bibe alîkar ku hûn fêr bibin ka meriv çawa paşvekêşana xêzikî pêk tîne tewra gava ku daneyên we li bi hezaran girêk têne belav kirin.

Em behsa çi dikin?

Em bi peywira vegerandina girêdana xêzikî re rû bi rû ne. Wekî daneyên têketinê, komek vektorên guhêrbarên serbixwe yên gumanbar têne dayîn, ku her yek ji wan bi nirxek diyarkirî ya guhêrbara girêdayî ve girêdayî ye. Ev dane dikare di forma du matrican de were temsîl kirin:

Regression linear û rêbazên ji bo vegerandina wê

Naha, ji ber ku girêdayîbûn tê texmîn kirin, û ji bilî vê, xêzek e, em ê texmîna xwe di forma hilberek matrican de binivîsin (ji bo hêsankirina tomarkirinê, li vir û jêr tê texmîn kirin ku terma azad a hevkêşeyê li paş veşartî ye. Regression linear û rêbazên ji bo vegerandina wê, û stûna dawî ya matrixê Regression linear û rêbazên ji bo vegerandina wê yekîneyan pêk tîne):

Regression linear û rêbazên ji bo vegerandina wê

Pir dişibe pergalek hevkêşeyên xêzik, ne wusa? Wusa dixuye, lê bi îhtîmaleke mezin dê ji bo pergalek hevkêşeyên weha çareserî nebin. Sedema vê deng e, ku hema hema di her daneyên rastîn de heye. Sedemek din jî dibe ku nebûna girêdana xêzikî bi vî rengî be, ku dikare bi danasîna guhêrbarên din ên ku nehêlî bi yên orîjînal ve girêdayî ne were şer kirin. Mînaka jêrîn bifikirin:
Regression linear û rêbazên ji bo vegerandina wê
Source: Wîkîpediya de

Ev mînakek hêsan a paşvekêşana xêzkirî ye ku têkiliya yek guhêrbar (li ser eksê) nîşan dide Regression linear û rêbazên ji bo vegerandina wê) ji guherbareke din (li ser eksê Regression linear û rêbazên ji bo vegerandina wê). Ji bo ku pergala hevkêşeyên xêzikî yên li gorî vê nimûneyê çareseriyek hebe, divê hemî xal tam li ser heman xeta rast bin. Lê ev ne rast e. Lê ew bi rastî ji ber deng (an jî ji ber ku texmîna têkiliyek xêzik xelet bû) li ser heman xeta rast derewan nakin. Ji ber vê yekê, ji bo vegerandina têkiliyek xêzikî ji daneyên rastîn, bi gelemperî pêdivî ye ku meriv texmînek din destnîşan bike: Daneyên têketinê deng vedihewîne û ev deng heye. belavkirina normal. Hûn dikarin di derbarê cûreyên din ên belavkirina deng de texmînan bikin, lê di pirraniya bûyeran de ew dabeşkirina normal e ku tête hesibandin, ku dê bêtir were nîqaş kirin.

Rêbaza îhtîmala herî zêde

Ji ber vê yekê, me hebûna dengek normal a normal belavkirî texmîn kir. Di rewşeke weha de çi bikin? Ji bo vê rewşê di matematîkê de heye û pir tê bikaranîn rêbaza îhtîmala herî zêde. Bi kurtasî, cewhera wê di hilbijartinê de ye fonksiyonên îhtîmalê û mezinkirina wê ya paşîn.

Em vedigerin vegerandina têkiliyek xêzik ji daneyan bi dengê normal. Bala xwe bidinê ku têkiliya xêzikî ya tê texmîn kirin bendewariya matematîkî ye Regression linear û rêbazên ji bo vegerandina wê belavkirina normal heyî. Di heman demê de, îhtîmala ku Regression linear û rêbazên ji bo vegerandina wê nirxek an yekî din digire, li gorî hebûna çavdêran Regression linear û rêbazên ji bo vegerandina wê, wiha:

Regression linear û rêbazên ji bo vegerandina wê

Werin em niha li şûna wê bikin Regression linear û rêbazên ji bo vegerandina wê и Regression linear û rêbazên ji bo vegerandina wê Guherbarên ku em hewce ne ev in:

Regression linear û rêbazên ji bo vegerandina wê

Tiştê ku dimîne dîtina vektorê ye Regression linear û rêbazên ji bo vegerandina wê, ku ev îhtimal herî zêde ye. Ji bo zêdekirina fonksiyonek wusa, hêsan e ku meriv pêşî logarîtmayek jê bigire (logarîtmaya fonksiyonê dê di heman nuqteya fonksiyonê de bigihîje herî zêde):

Regression linear û rêbazên ji bo vegerandina wê

Ku, di encamê de, kêmkirina fonksiyona jêrîn tê:

Regression linear û rêbazên ji bo vegerandina wê

Bi awayê, ji vê yekê re rêbazek tê gotin çarçikên herî kêm. Gelek caran, hemî ramanên jorîn têne derxistin û ev rêbaz bi hêsanî tê bikaranîn.

hilweşîna QR

Bi dîtina xala ku gradienta vê fonksiyonê sifir e, hindiktirîn fonksiyona jorîn dikare were dîtin. Û gradient dê wiha were nivîsandin:

Regression linear û rêbazên ji bo vegerandina wê

hilweşîna QR rêbazek matrixê ye ku ji bo çareserkirina pirsgirêka kêmkirinê di rêbaza çarçikên herî kêm de tê bikar anîn. Di vî warî de, em hevkêşeyê di forma matrixê de ji nû ve dinivîsin:

Regression linear û rêbazên ji bo vegerandina wê

Ji ber vê yekê em matrixê hilweşînin Regression linear û rêbazên ji bo vegerandina wê ji bo matrican Regression linear û rêbazên ji bo vegerandina wê и Regression linear û rêbazên ji bo vegerandina wê û rêzek veguherînan pêk bînin (algorîtmaya hilweşandina QR bixwe dê li vir neyê hesibandin, tenê karanîna wê bi peywira di dest de ye):

Regression linear û rêbazên ji bo vegerandina wê

Matrix Regression linear û rêbazên ji bo vegerandina wê ortogonal e. Ev rê dide me ku em ji kar xilas bibin Regression linear û rêbazên ji bo vegerandina wê:

Regression linear û rêbazên ji bo vegerandina wê

Û heger hûn veguherînin Regression linear û rêbazên ji bo vegerandina wê li ser Regression linear û rêbazên ji bo vegerandina wê, paşê ew ê kar bike Regression linear û rêbazên ji bo vegerandina wê. Li ber çavan Regression linear û rêbazên ji bo vegerandina wê matrixek sêgoşeya jorîn e, bi vî rengî xuya dike:

Regression linear û rêbazên ji bo vegerandina wê

Ev dikare bi bikaranîna rêbaza cîgir çareser bibe. Pêve Regression linear û rêbazên ji bo vegerandina wê wekî cih tê Regression linear û rêbazên ji bo vegerandina wê, hêmana berê Regression linear û rêbazên ji bo vegerandina wê wekî cih tê Regression linear û rêbazên ji bo vegerandina wê û da ser.

Li vir hêjayî gotinê ye ku tevliheviya algorîtmaya encam a ji ber karanîna hilweşîna QR-yê wekhev e. Regression linear û rêbazên ji bo vegerandina wê. Digel vê yekê, tevî vê yekê ku operasyona pirkirina matrixê baş paralel e, ne gengaz e ku meriv guhertoyek belavkirî ya vê algorîtmê binivîsîne.

Gradient Descent

Dema ku behsa kêmkirina fonksiyonek tê kirin, her gav hêja ye ku meriv rêbaza daketina gradient (stochastic) bi bîr bîne. Ev rêbazek kêmkirina hêsan û bandorker e ku li ser bingeha dubarekirina gradientê ya fonksiyonê li xalek û paşê veguheztina wê berbi berevajî gradientê ve girêdayî ye. Her pêngavek wiha çareseriyê nêzî herî kêm dike. Gradient hîn jî heman xuya dike:

Regression linear û rêbazên ji bo vegerandina wê

Ev rêbaz di heman demê de ji ber taybetmendiyên xêzikî yên operatorê gradientê jî baş tê paralel û belav kirin. Bala xwe bidinê ku di formula jorîn de, di binê nîşana berhevokê de şertên serbixwe hene. Bi gotineke din, em dikarin gradientê ji bo hemî nîşanan serbixwe bihesibînin Regression linear û rêbazên ji bo vegerandina wê ji yekem heta Regression linear û rêbazên ji bo vegerandina wê, paralel bi vê, gradient ji bo nîşanekan bi Regression linear û rêbazên ji bo vegerandina wê ber Regression linear û rêbazên ji bo vegerandina wê. Dûv re hûrgelên encam zêde bikin. Encama lêzêdekirinê dê heman be mîna ku me tavilê gradient ji bo îndeksan ji ya yekem heya hesab bike Regression linear û rêbazên ji bo vegerandina wê. Bi vî rengî, heke dane di nav çend perçeyên daneyê de were belav kirin, gradient dikare li ser her perçeyek serbixwe were hesibandin, û dûv re encamên van hesaban dikare were berhev kirin da ku encama dawî were bidestxistin:

Regression linear û rêbazên ji bo vegerandina wê

Ji aliyê pêkanînê ve, ev li gorî paradîgmayê ye MapReduce. Di her gavê daketina gradientê de, peywirek ji her girêka daneyê re tê şandin da ku pileyê hesab bike, dûv re gradientên hesabkirî bi hev re têne berhev kirin, û encama berhevoka wan ji bo baştirkirina encamê tê bikar anîn.

Tevî hêsaniya pêkanînê û şiyana darvekirinê di paradîgmaya MapReduce de, daketina gradient kêmasiyên xwe jî hene. Bi taybetî, hejmara gavên ku ji bo gihîştina hevgirtinê hewce ne li gorî rêbazên din ên pisportir pir zêde ye.

LSQR

LSQR Rêbazek din a çareserkirina pirsgirêkê ye, ku hem ji bo vegerandina paşvekêşana xêz û hem jî ji bo çareserkirina pergalên hevkêşeyên xêzkirî guncan e. Taybetmendiya wê ya sereke ev e ku ew avantajên rêbazên matrixê û nêzîkatiyek dubare dike. Pêkanîna vê rêbazê di her du pirtûkxaneyan de têne dîtin SciPyû di Matlab. Danasîna vê rêbazê dê li vir neyê dayîn (ew dikare di gotarê de were dîtin LSQR: Algorîtmayek ji bo hevkêşeyên xêzikî yên kêm û çarçikên herî kêm). Di şûna wê de, dê nêzîkatiyek were destnîşan kirin ku LSQR bi darvekirinê di hawîrdorek belavkirî de adapte bike.

Rêbaza LSQR li ser bingehê ye prosedureke bidiagonalization. Ev pêvajoyek dubare ye, her dubarekirin ji gavên jêrîn pêk tê:
Regression linear û rêbazên ji bo vegerandina wê

Lê eger em bihesibînin ku matrix Regression linear û rêbazên ji bo vegerandina wê bi horizontî ve tê dabeş kirin, wê hingê her dubarekirin dikare wekî du gavên MapReduce were destnîşan kirin. Bi vî rengî, gengaz e ku di her dubarekirinê de veguheztinên daneyê kêm bikin (tenê vektorên ku dirêjahiya wan bi hejmara nenasan re ye):

Regression linear û rêbazên ji bo vegerandina wê

Ev nêzîkatî ye ku di dema pêkanîna vegerandina xêzikî de tê bikar anîn Apache Ignite ML.

encamê

Gelek algorîtmayên vegerandina regresyonê yên xêzkirî hene, lê ne hemî wan di her şert û mercan de têne sepandin. Ji ber vê yekê veqetandina QR ji bo çareseriya rast a li ser komên daneya piçûk pir xweş e. Daxistina gradient hêsan e ku meriv bicîh bike û dihêle hûn zû çareseriyek nêzîk bibînin. Û LSQR taybetmendiyên çêtirîn ên her du algorîtmayên berê berhev dike, ji ber ku ew dikare were belav kirin, li gorî daketina gradientê zûtir li hev dicive, û di heman demê de rê dide sekinandina zû ya algorîtmê, berevajî hilweşandina QR, da ku çareseriyek nêzîk bibîne.

Source: www.habr.com

Add a comment