La celo de la artikolo estas provizi subtenon al komencaj datumsciencistoj. EN
Kial havas sencon atenti plian atenton al la formulo ?
Estas kun la matrica ekvacio ke en la plej multaj kazoj oni komencas konatiĝi kun lineara regreso. En la sama tempo, detalaj kalkuloj de kiel la formulo estis derivita estas maloftaj.
Ekzemple, en maŝinlernado-kursoj de Yandex, kiam studentoj estas enkondukitaj al reguligo, oni proponas al ili uzi funkciojn de la biblioteko. sklearn, dum neniu vorto estas menciita pri la matrica reprezentado de la algoritmo. Ĝuste ĉi-momente iuj aŭskultantoj eble volas kompreni ĉi tiun aferon pli detale - skribi kodon sen uzi pretajn funkciojn. Kaj por fari tion, vi unue devas prezenti la ekvacion per reguligilo en matrica formo. Ĉi tiu artikolo permesos al tiuj, kiuj volas regi tiajn kapablojn. Ni komencu.
Komencaj kondiĉoj
Celaj indikiloj
Ni havas gamon da celvaloroj. Ekzemple, la cela indikilo povus esti la prezo de iu ajn valoraĵo: petrolo, oro, tritiko, dolaro, ktp. Samtempe, per kelkaj celindikaj valoroj ni signifas la nombron da observoj. Tiaj observoj povus esti, ekzemple, monataj naftoprezoj por la jaro, tio estas, ni havos 12 celvalorojn. Ni komencu enkonduki la notacion. Ni indiku ĉiun valoron de la celindikilo kiel . Entute ni havas observoj, kio signifas, ke ni povas reprezenti niajn observojn kiel .
Regresoj
Ni supozos, ke ekzistas faktoroj, kiuj certagrade klarigas la valorojn de la cela indikilo. Ekzemple, la kurzo de dolaro/rublo estas forte influita de la prezo de petrolo, la kurzo de la Federacia Rezervo, ktp. Tiaj faktoroj estas nomitaj regresiloj. Samtempe, ĉiu celindika valoro devas respondi al regresa valoro, tio estas, se ni havas 12 celajn indikilojn por ĉiu monato en 2018, tiam ni ankaŭ havu 12 regresajn valorojn por la sama periodo. Ni indiku la valorojn de ĉiu regresilo per . Estu en nia kazo regresiloj (t.e. faktoroj kiuj influas la celindikvalorojn). Ĉi tio signifas, ke niaj regresiloj povas esti prezentitaj jene: por la unua regresilo (ekzemple, la prezo de petrolo): , por la dua regresilo (ekzemple, la Fed-kurzo): , Por "-th" regresilo:
Dependeco de celindikiloj de regresiloj
Ni supozu, ke la dependeco de la cela indikilo de regresintoj "th" observado povas esti esprimita per lineara regresekvacio de la formo:
kie - "-th" regresa valoro de 1 ĝis ,
— nombro da regresiloj de 1 ĝis
— angulaj koeficientoj, kiuj reprezentas la kvanton laŭ kiu la kalkulita celindikilo averaĝe ŝanĝiĝos kiam la regresilo ŝanĝiĝos.
Alivorte, ni estas por ĉiuj (krom ) de la regresilo ni determinas "nian" koeficienton , tiam multipliku la koeficientojn per la valoroj de la regresiloj "th" observo, kiel rezulto ni ricevas certan proksimumadon "-th" celindikilo.
Tial ni devas elekti tiajn koeficientojn , ĉe kiu la valoroj de nia proksimuma funkcio lokiĝos kiel eble plej proksime al la celindikaj valoroj.
Taksante la kvaliton de la proksimuma funkcio
Ni determinos la kvalitan takson de la proksimuma funkcio uzante la metodon de malplej kvadrataj. La kvalito-taksa funkcio en ĉi tiu kazo prenos la sekvan formon:
Ni devas elekti tiajn valorojn de la koeficientoj $w$ por kiuj la valoro estos la plej malgranda.
Konverti la ekvacion en matrican formon
Vektora reprezento
Komence, por faciligi vian vivon, vi devas atenti la linearan regresan ekvacion kaj rimarki, ke la unua koeficiento ne estas multobligita per iu regresilo. Samtempe, kiam ni konvertas la datumojn en matrican formon, la supre menciita cirkonstanco serioze malfaciligos la kalkulojn. Ĉi-rilate, oni proponas enkonduki alian regresilon por la unua koeficiento kaj egaligu ĝin al unu. Aŭ pli ĝuste, ĉiu"egaligu la valoron de ĉi tiu regresilo al unu - finfine, multiplikite per unu, nenio ŝanĝiĝos el la vidpunkto de la rezulto de la kalkuloj, sed el la vidpunkto de la reguloj por la produkto de matricoj, nia turmento. estos signife reduktita.
Nun, por la momento, por simpligi la materialon, ni supozu, ke ni havas nur unu "-th" observo. Tiam imagu la valorojn de la regresiloj "-th" observoj kiel vektoro . Vektoro havas dimension tio estas vicoj kaj 1 kolumno:
Ni reprezentu la postulatajn koeficientojn kiel vektoro , havanta dimension :
Lineara regresa ekvacio por "-th" observado havos la formon:
La funkcio por taksi la kvaliton de linia modelo prenos la formon:
Bonvolu noti, ke laŭ la reguloj de matrica multipliko, ni bezonis transmeti la vektoron .
Matrica reprezentado
Kiel rezulto de multiplikado de vektoroj, ni ricevas la nombron: , kio estas atendata. Ĉi tiu nombro estas la proksimuma "-th" celindikilo. Sed ni bezonas proksimumon de ne nur unu celvaloro, sed ĉiuj el ili. Por fari tion, ni skribu ĉion ""th" regresiloj en matrica formato . La rezulta matrico havas la dimension :
Nun la lineara regresa ekvacio prenos la formon:
Ni indiku la valorojn de celaj indikiloj (ĉiuj ) per vektoro dimensio :
Nun ni povas skribi la ekvacion por taksi la kvaliton de lineara modelo en matrica formato:
Efektive, el ĉi tiu formulo ni plu akiras la formulon konatan al ni
Kiel ĝi estas farita? La krampoj estas malfermitaj, diferencigo estas efektivigita, la rezultaj esprimoj estas transformitaj, ktp., kaj ĝuste tion ni faros nun.
Matricaj transformoj
Ni malfermu la krampojn
Ni preparu ekvacion por diferencigo
Por fari tion, ni faros kelkajn transformojn. En postaj kalkuloj estos pli oportune por ni se la vektoro estos reprezentita komence de ĉiu produkto en la ekvacio.
Konvertiĝo 1
Kiel ĝi okazis? Por respondi ĉi tiun demandon, simple rigardu la grandecojn de la matricoj multobligitaj kaj vidu, ke ĉe la eligo ni ricevas nombron aŭ alie. .
Ni skribu la grandecojn de matricaj esprimoj.
Konvertiĝo 2
Ni skribu ĝin simile al transformo 1
Ĉe la eligo ni ricevas ekvacion, kiun ni devas diferencigi:
Ni diferencigas la modelon-kvalitan taksan funkcion
Ni diferencigu rilate al la vektoro :
Demandas kial ne estu, sed ni ekzamenos la operaciojn por determini derivaĵojn en la aliaj du esprimoj pli detale.
Diferenco 1
Ni vastigu la diferencigon:
Por determini la derivaĵon de matrico aŭ vektoro, vi devas rigardi kio estas en ili. Ni rigardu:
Ni signu la produkton de matricoj tra la matrico . Matrico kvadrata kaj krome, ĝi estas simetria. Ĉi tiuj propraĵoj estos utilaj al ni poste, ni memoru ilin. Matrico havas dimension :
Nun nia tasko estas ĝuste multobligi la vektorojn per la matrico kaj ne ricevi "dufoje du estas kvin", do ni koncentriĝu kaj estu ege singardaj.
Tamen ni atingis komplikan esprimon! Fakte, ni ricevis nombron - skalaron. Kaj nun, vere, ni transiras al diferencigo. Necesas trovi la derivaĵon de la rezulta esprimo por ĉiu koeficiento kaj ricevi la dimensiovektoron kiel eligo . Por la okazo, mi skribos la procedurojn per ago:
1) diferencigi per , ni ricevas:
2) diferencigi per , ni ricevas:
3) diferencigi per , ni ricevas:
La eligo estas la promesita vektoro de grandeco :
Se vi rigardas la vektoron pli atente, vi rimarkos, ke la maldekstraj kaj respondaj dekstraj elementoj de la vektoro povas esti grupigitaj tiel, ke, kiel rezulto, vektoro povas esti izolita de la prezentita vektoro. grandeco . Ekzemple (maldekstra elemento de la supra linio de la vektoro) (la dekstra elemento de la supra linio de la vektoro) povas esti reprezentita kiel kaj - kiel ktp. sur ĉiu linio. Ni grupiĝu:
Ni elprenu la vektoron kaj ĉe la eligo ni ricevas:
Nun, ni rigardu pli proksime al la rezulta matrico. La matrico estas la sumo de du matricoj :
Ni rememoru, ke iom pli frue ni notis unu gravan econ de la matrico - ĝi estas simetria. Surbaze de ĉi tiu posedaĵo, ni povas memfide diri ke la esprimo egalaj . Ĉi tio povas esti facile kontrolita vastigante la produkton de matricoj elemento post elemento . Ni ne faros ĉi tion ĉi tie; tiuj interesatoj povas kontroli ĝin mem.
Ni revenu al nia esprimo. Post niaj transformoj, ĝi rezultis kiel ni volis vidi ĝin:
Do, ni kompletigis la unuan diferencigon. Ni transiru al la dua esprimo.
Diferenco 2
Ni sekvu la batitan vojon. Ĝi estos multe pli mallonga ol la antaŭa, do ne iru tro malproksimen de la ekrano.
Ni vastigu la vektorojn kaj matrican elementon per elemento:
Ni forigu la du el la kalkuloj dum kelka tempo — ĝi ne ludas grandan rolon, poste ni remetos ĝin en sian lokon. Ni multipliku la vektorojn per la matrico. Antaŭ ĉio, ni multipliku la matricon al vektora , ni ne havas limigojn ĉi tie. Ni ricevas la grandvektoron :
Ni faru la sekvan agon - multobligu la vektoron al la rezulta vektoro. Ĉe la elirejo la numero atendos nin:
Tiam ni diferencigos ĝin. Ĉe la eligo ni ricevas vektoron de dimensio :
Ĉu io memorigas min? Tio ĝustas! Ĉi tio estas la produkto de la matrico al vektora .
Tiel, la dua diferencigo estas sukcese kompletigita.
Anstataŭ konkludo
Nun ni scias, kiel okazis la egaleco .
Fine, ni priskribos rapidan manieron transformi bazajn formulojn.
Ni taksu la kvaliton de la modelo laŭ la metodo de malplej kvadrataj:
Ni diferencigu la rezultan esprimon:
Literaturo
Interretaj fontoj:
1)
2)
3)
4)
Lernolibroj, kolektoj de problemoj:
1) Prelegaj notoj pri supera matematiko: plena kurso / D.T. Skribita – 4-a red. – M.: Iris-gazetaro, 2006
2) Aplikata regresa analizo / N. Draper, G. Smith - 2-a eld. – M.: Financo kaj Statistiko, 1986 (traduko el la angla)
3) Problemoj por solvado de matricaj ekvacioj:
fonto: www.habr.com