Straipsnio tikslas – padėti pradedantiesiems duomenų mokslininkams. IN
Kodėl prasminga daugiau dėmesio skirti formulei ?
Būtent su matricine lygtimi dažniausiai pradedama susipažinti su tiesine regresija. Tuo pačiu metu detalūs skaičiavimai, kaip buvo gauta formulė, yra reti.
Pavyzdžiui, „Yandex“ mašininio mokymosi kursuose, kai studentai supažindinami su reguliavimu, jiems siūloma naudotis bibliotekos funkcijomis. sklearn, o apie matricinį algoritmo atvaizdavimą nė žodžio neužsimenama. Būtent šiuo metu kai kurie klausytojai gali norėti suprasti šią problemą išsamiau - parašyti kodą nenaudodami paruoštų funkcijų. Norėdami tai padaryti, pirmiausia turite pateikti lygtį su reguliatoriumi matricos forma. Šis straipsnis leis tiems, kurie nori įvaldyti tokius įgūdžius. Pradėkime.
Pradinės sąlygos
Tiksliniai rodikliai
Turime įvairių tikslinių verčių. Pavyzdžiui, tikslinis rodiklis gali būti bet kurio turto kaina: naftos, aukso, kviečių, dolerio ir kt. Tuo pačiu metu daugybe tikslinių rodiklių verčių turime omenyje stebėjimų skaičių. Tokie stebėjimai galėtų būti, pavyzdžiui, mėnesinės naftos kainos metams, tai yra, turėsime 12 tikslinių verčių. Pradėkime supažindinti su užrašu. Kiekvieną tikslinio rodiklio reikšmę pažymėkime kaip . Iš viso turime stebėjimai, o tai reiškia, kad galime vaizduoti savo stebėjimus kaip .
Regresoriai
Darysime prielaidą, kad yra veiksnių, kurie tam tikru mastu paaiškina tikslinio rodiklio reikšmes. Pavyzdžiui, dolerio/rublio kursą stipriai veikia naftos kaina, Federalinio rezervo kursas ir kt. Tokie veiksniai vadinami regresoriais. Tuo pačiu metu kiekviena tikslinio rodiklio reikšmė turi atitikti regresoriaus reikšmę, tai yra, jei 12 m. turime 2018 tikslinių rodiklių kiekvienam mėnesiui, tai taip pat turėtume turėti 12 regresoriaus verčių tam pačiam laikotarpiui. Pažymime kiekvieno regresoriaus reikšmes . Tegul mūsų atveju taip yra regresoriai (t. y. veiksnius, turinčius įtakos tikslinių rodiklių reikšmėms). Tai reiškia, kad mūsų regresorius galima pateikti taip: 1-ajam regresoriui (pavyzdžiui, naftos kainai): , 2-ajam regresoriui (pavyzdžiui, Fed norma): , Dėl "-th" regresorius:
Tikslinių rodiklių priklausomybė nuo regresorių
Tarkime, kad tikslinio rodiklio priklausomybė nuo regresorių"th" stebėjimas gali būti išreikštas tiesinės regresijos lygtimi, kurios forma:
Kur - "-th" regresoriaus reikšmė nuo 1 iki ,
— regresorių skaičius nuo 1 iki
— kampiniai koeficientai, kurie parodo, kiek vidutiniškai pasikeis apskaičiuotas tikslinis rodiklis, pasikeitus regresoriui.
Kitaip tariant, mes esame už visus (išskyrus ) regresoriaus nustatome „mūsų“ koeficientą , tada padauginkite koeficientus iš regresorių verčių "th" stebėjimas, kaip rezultatas, mes gauname tam tikrą aproksimaciją "-tasis“ tikslinis rodiklis.
Todėl turime pasirinkti tokius koeficientus , kurioje mūsų apytikslės funkcijos reikšmės bus išdėstyti kuo arčiau tikslinių rodiklių verčių.
Aproksimacinės funkcijos kokybės įvertinimas
Aproksimacinės funkcijos kokybės vertinimą nustatysime mažiausių kvadratų metodu. Kokybės vertinimo funkcija šiuo atveju bus tokia:
Turime pasirinkti tokias koeficientų $w reikšmes, kurių vertė yra bus mažiausias.
Lygties pavertimas matricine forma
Vektorinis vaizdavimas
Pirmiausia, norėdami palengvinti savo gyvenimą, turėtumėte atkreipti dėmesį į tiesinės regresijos lygtį ir pastebėti, kad pirmasis koeficientas nėra dauginamas iš jokio regresoriaus. Tuo pačiu metu, kai duomenis konvertuosime į matricinę formą, aukščiau paminėta aplinkybė labai apsunkins skaičiavimus. Šiuo atžvilgiu siūloma įvesti dar vieną regresorių pirmajam koeficientui ir prilygink vienam. Arba tiksliau, kiekvienas "šio regresoriaus reikšmę prilygink vienetui - juk padauginus iš vieneto, skaičiavimų rezultato požiūriu niekas nepasikeis, bet matricų sandaugos taisyklių požiūriu mūsų kankinimas bus gerokai sumažintas.
Šiuo metu, norėdami supaprastinti medžiagą, tarkime, kad turime tik vieną "-tas“ pastebėjimas. Tada įsivaizduokite regresorių vertes "-th“ stebėjimai kaip vektorius . Vektorius turi dimensiją Tai reiškia, kad eilutės ir 1 stulpelis:
Reikalingus koeficientus pavaizduokime kaip vektorių , turintis matmenis :
Tiesinės regresijos lygtis, skirta "-th“ stebėjimas bus toks:
Linijinio modelio kokybės įvertinimo funkcija bus tokia:
Atkreipkite dėmesį, kad pagal matricos daugybos taisykles mums reikėjo perkelti vektorių .
Matricinis vaizdavimas
Padauginę vektorius gauname skaičių: , ko ir reikia tikėtis. Šis skaičius yra apytikslis "-tasis“ tikslinis rodiklis. Tačiau mums reikia apytikslės ne vienos tikslinės vertės, bet visų jų. Norėdami tai padaryti, užsirašykite viską "-th" regresorius matricos formatu . Gauta matrica turi matmenis :
Dabar tiesinės regresijos lygtis bus tokia:
Pažymime tikslinių rodiklių reikšmes (visi ) vienam vektoriui matmuo :
Dabar galime parašyti lygtį, skirtą tiesinio modelio kokybei įvertinti matricos formatu:
Tiesą sakant, iš šios formulės toliau gauname mums žinomą formulę
Kaip tai daroma? Atverčiami skliaustai, atliekama diferenciacija, transformuojamos gautos išraiškos ir t.t., kaip tik tai ir padarysime dabar.
Matricos transformacijos
Atidarykime skliaustus
Paruoškime diferencijavimo lygtį
Norėdami tai padaryti, atliksime keletą transformacijų. Vėlesniuose skaičiavimuose mums bus patogiau, jei vektorius bus pavaizduoti kiekvieno lygties produkto pradžioje.
Konversija 1
Kaip tai nutiko? Norėdami atsakyti į šį klausimą, tiesiog pažiūrėkite į dauginamų matricų dydžius ir pamatysite, kad išvestyje gauname skaičių arba kitaip .
Užsirašykime matricinių išraiškų dydžius.
Konversija 2
Parašykime tai panašiai kaip 1 transformaciją
Išvestyje gauname lygtį, kurią turime atskirti:
Atskiriame modelio kokybės vertinimo funkciją
Atskirkime vektoriaus atžvilgiu :
Klausimai kodėl neturėtų būti, bet plačiau panagrinėsime išvestinių nustatymo operacijas kitose dviejose išraiškose.
1 diferenciacija
Išplėskime skirtumą:
Norint nustatyti matricos ar vektoriaus išvestinę, reikia pažvelgti į tai, kas yra jų viduje. Pažiūrėkime:
Pažymime matricų sandaugą per matricą . Matrica kvadratas, be to, jis yra simetriškas. Šios savybės mums pravers vėliau, prisiminkime jas. Matrica turi dimensiją :
Dabar mūsų užduotis yra teisingai padauginti vektorius iš matricos ir negauti „du kartus du yra penki“, todėl susikaupkime ir būkime ypač atsargūs.
Tačiau mes pasiekėme sudėtingą išraišką! Tiesą sakant, mes gavome skaičių – skaliarą. Ir dabar iš tikrųjų pereiname prie diferenciacijos. Kiekvienam koeficientui reikia rasti gautos išraiškos išvestinę ir gauti dimensijos vektorių kaip išvestį . Tik tuo atveju, surašysiu procedūras pagal veiksmą:
1) atskirti pagal , mes gauname:
2) atskirti pagal , mes gauname:
3) atskirti pagal , mes gauname:
Išvestis yra pažadėtas dydžio vektorius :
Jei pažvelgsite į vektorių atidžiau, pastebėsite, kad kairysis ir atitinkamas dešinysis vektoriaus elementai gali būti sugrupuoti taip, kad dėl to vektorius gali būti izoliuotas nuo pateikto vektoriaus dydžio . Pavyzdžiui, (viršutinės vektoriaus eilutės kairysis elementas) (dešinysis viršutinės vektoriaus eilutės elementas) gali būti pavaizduotas kaip Ir - kaip ir tt kiekvienoje eilutėje. Sugrupuokime:
Išimkime vektorių o išvestyje gauname:
Dabar atidžiau pažvelkime į gautą matricą. Matrica yra dviejų matricų suma :
Prisiminkime, kad šiek tiek anksčiau pastebėjome vieną svarbią matricos savybę - jis yra simetriškas. Remdamiesi šia savybe, galime drąsiai teigti, kad išraiška lygus . Tai galima nesunkiai patikrinti išplečiant matricų sandaugą po elemento . Čia to nedarysime, norintieji gali tai patikrinti patys.
Grįžkime prie savo išraiškos. Po mūsų transformacijų pasirodė taip, kaip norėjome matyti:
Taigi, mes baigėme pirmąjį diferencijavimą. Pereikime prie antrosios išraiškos.
2 diferenciacija
Eikime numintu keliu. Jis bus daug trumpesnis nei ankstesnis, todėl nenueikite per toli nuo ekrano.
Išplėskime vektorius ir matricos elementus po elementą:
Išimkime du iš skaičiavimų kuriam laikui – tai nevaidina didelio vaidmens, tada grąžinsime į savo vietą. Padauginkime vektorius iš matricos. Visų pirma, padauginkime matricą į vektorių , čia neturime jokių apribojimų. Gauname dydžio vektorių :
Atlikime tokį veiksmą – padauginkite vektorių į gautą vektorių. Prie išėjimo mūsų lauks numeris:
Tada mes jį atskirsime. Išvestyje gauname dimensijos vektorių :
Kažką primena? Teisingai! Tai yra matricos produktas į vektorių .
Taigi antroji diferenciacija sėkmingai baigta.
Vietoj išvados
Dabar žinome, kaip atsirado lygybė .
Galiausiai apibūdinsime greitą pagrindinių formulių transformavimo būdą.
Įvertinkime modelio kokybę mažiausių kvadratų metodu:
Išskirkime gautą išraišką:
Literatūra
Interneto šaltiniai:
1)
2)
3)
4)
Vadovėliai, uždavinių rinkiniai:
1) Aukštosios matematikos paskaitų konspektas: visas kursas / D.T. Parašyta – 4-asis leidimas. – M.: Iris-press, 2006 m
2) Taikomoji regresinė analizė / N. Draper, G. Smith - 2nd ed. – M.: Finansai ir statistika, 1986 (vertimas iš anglų kalbos)
3) Matricinių lygčių sprendimo uždaviniai:
Šaltinis: www.habr.com