Formålet med artiklen er at yde støtte til begyndende dataforskere. I
Hvorfor det giver mening at være ekstra opmærksom på formlen ?
Det er med matrixligningen, at man i de fleste tilfælde begynder at stifte bekendtskab med lineær regression. Samtidig er detaljerede beregninger af, hvordan formlen blev udledt, sjældne.
For eksempel, i maskinlæringskurser fra Yandex, når eleverne introduceres til regularisering, tilbydes de at bruge funktioner fra biblioteket lære, mens der ikke nævnes et ord om matrixrepræsentationen af algoritmen. Det er på dette tidspunkt, at nogle lyttere måske ønsker at forstå dette problem mere detaljeret - skriv kode uden at bruge færdige funktioner. Og for at gøre dette skal du først præsentere ligningen med en regularizer i matrixform. Denne artikel vil give dem, der ønsker at mestre sådanne færdigheder. Lad os komme igang.
Oprindelige forhold
Målindikatorer
Vi har en række målværdier. For eksempel kan målindikatoren være prisen på ethvert aktiv: olie, guld, hvede, dollar osv. Samtidig mener vi med en række målindikatorværdier antallet af observationer. Sådanne observationer kunne for eksempel være månedlige oliepriser for året, det vil sige, at vi vil have 12 målværdier. Lad os begynde at introducere notationen. Lad os betegne hver værdi af målindikatoren som . I alt har vi observationer, hvilket betyder, at vi kan repræsentere vores observationer som .
Regressorer
Vi vil antage, at der er faktorer, der til en vis grad forklarer værdierne af målindikatoren. For eksempel er dollar/rubel-kursen stærkt påvirket af olieprisen, Federal Reserve-kursen osv. Sådanne faktorer kaldes regressorer. Samtidig skal hver målindikatorværdi svare til en regressorværdi, det vil sige, hvis vi har 12 målindikatorer for hver måned i 2018, så skal vi også have 12 regressorværdier for samme periode. Lad os betegne værdierne for hver regressor med . Lad der være i vores tilfælde regressorer (dvs. faktorer, der påvirker målindikatorværdierne). Det betyder, at vores regressorer kan præsenteres som følger: for 1. regressor (f.eks. olieprisen): , for den 2. regressor (f.eks. Fed-renten): , Til "-th" regressor:
Målindikatorers afhængighed af regressorer
Lad os antage, at afhængigheden af målindikatoren fra regressorer"th" observation kan udtrykkes gennem en lineær regressionsligning på formen:
Hvor - "-th" regressorværdi fra 1 til ,
— antal regressorer fra 1 til
— vinkelkoefficienter, som repræsenterer den mængde, hvormed den beregnede målindikator vil ændre sig i gennemsnit, når regressoren ændres.
Med andre ord, vi er for alle (undtagen ) af regressoren bestemmer vi "vores" koefficient , gange derefter koefficienterne med værdierne af regressorerne "th" observation, som et resultat opnår vi en vis tilnærmelse "-th" målindikator.
Derfor skal vi vælge sådanne koefficienter , hvor værdierne af vores tilnærmelsesfunktion vil være placeret så tæt som muligt på målindikatorværdierne.
Vurdering af kvaliteten af den tilnærmede funktion
Vi vil bestemme kvalitetsvurderingen af den approksimerende funktion ved hjælp af mindste kvadraters metode. Kvalitetsvurderingsfunktionen vil i dette tilfælde have følgende form:
Vi skal vælge sådanne værdier af koefficienterne $w$, som værdien for vil være den mindste.
Konvertering af ligningen til matrixform
Vektor repræsentation
Til at begynde med, for at gøre dit liv lettere, bør du være opmærksom på den lineære regressionsligning og bemærke, at den første koefficient multipliceres ikke med nogen regressor. Når vi samtidig konverterer dataene til matrixform, vil ovennævnte forhold alvorligt komplicere beregningerne. I denne forbindelse foreslås det at indføre en anden regressor for den første koefficient og sidestille det med en. Eller rettere, hver"sidestille den th værdi af denne regressor til en - når alt kommer til alt, når det ganges med en, vil intet ændre sig ud fra synspunktet om resultatet af beregningerne, men fra synspunktet om reglerne for produktet af matricer, vores pine vil blive væsentligt reduceret.
Lad os nu for øjeblikket, for at forenkle materialet, antage, at vi kun har én "-th" observation. Forestil dig derefter regressorernes værdier "-th" observationer som en vektor . Vektor har dimension Det vil sige, rækker og 1 kolonne:
Lad os repræsentere de nødvendige koefficienter som en vektor , der har dimension :
Lineær regressionsligning for "-th" observation vil have formen:
Funktionen til at vurdere kvaliteten af en lineær model vil tage formen:
Bemærk venligst, at i overensstemmelse med reglerne for matrixmultiplikation var vi nødt til at transponere vektoren .
Matrix repræsentation
Som et resultat af at gange vektorer får vi tallet: , hvilket må forventes. Dette tal er tilnærmelsen "-th" målindikator. Men vi har brug for en tilnærmelse af ikke kun én målværdi, men dem alle. For at gøre dette, lad os skrive alt ned ""th" regressorer i matrixformat . Den resulterende matrix har dimensionen :
Nu vil den lineære regressionsligning have formen:
Lad os betegne værdierne for målindikatorer (alle ) pr. vektor dimension :
Nu kan vi skrive ligningen for at vurdere kvaliteten af en lineær model i matrixformat:
Faktisk opnår vi fra denne formel yderligere den formel, vi kender
Hvordan gøres det? Klammerne åbnes, differentiering udføres, de resulterende udtryk transformeres osv., og det er præcis, hvad vi vil gøre nu.
Matrix transformationer
Lad os åbne parenteserne
Lad os udarbejde en ligning for differentiering
For at gøre dette vil vi udføre nogle transformationer. I efterfølgende beregninger vil det være mere bekvemt for os, hvis vektoren vil være repræsenteret i begyndelsen af hvert produkt i ligningen.
Konvertering 1
Hvordan skete det? For at besvare dette spørgsmål skal du bare se på størrelserne af de matricer, der ganges og se, at ved outputtet får vi et tal eller andet .
Lad os nedskrive størrelsen af matrixudtryk.
Konvertering 2
Lad os skrive det på samme måde som transformation 1
Ved output får vi en ligning, som vi skal differentiere:
Vi differentierer modellens kvalitetsvurderingsfunktion
Lad os differentiere med hensyn til vektoren :
Spørgsmål hvorfor det burde der ikke være, men vi vil undersøge operationerne til bestemmelse af derivater i de to andre udtryk mere detaljeret.
Differentiering 1
Lad os udvide med differentieringen:
For at bestemme derivatet af en matrix eller vektor skal du se på, hvad der er inde i dem. Lad os se:
Lad os betegne produktet af matricer gennem matrixen . Matrix kvadratisk og desuden er den symmetrisk. Disse egenskaber vil være nyttige for os senere, lad os huske dem. Matrix har dimension :
Nu er vores opgave at gange vektorerne korrekt med matrixen og ikke få "to gange to er fem", så lad os koncentrere os og være ekstremt forsigtige.
Vi har dog opnået et indviklet udtryk! Faktisk fik vi et nummer - en skalar. Og nu går vi for alvor videre til differentiering. Det er nødvendigt at finde derivatet af det resulterende udtryk for hver koefficient og få dimensionsvektoren som output . For en sikkerheds skyld vil jeg nedskrive procedurerne ved handling:
1) differentiere ved , vi får:
2) differentiere ved , vi får:
3) differentiere ved , vi får:
Outputtet er den lovede vektor af størrelse :
Hvis du ser nærmere på vektoren, vil du bemærke, at vektorens venstre og tilsvarende højre elementer kan grupperes på en sådan måde, at en vektor som et resultat kan isoleres fra den præsenterede vektor størrelsen . For eksempel (venstre element i vektorens øverste linje) (det højre element i vektorens øverste linje) kan repræsenteres som Og - som etc. på hver linje. Lad os gruppere:
Lad os tage vektoren ud og ved udgangen får vi:
Lad os nu se nærmere på den resulterende matrix. Matrixen er summen af to matricer :
Lad os huske på, at vi lidt tidligere bemærkede en vigtig egenskab ved matricen - den er symmetrisk. Baseret på denne egenskab, kan vi trygt sige, at udtrykket lig . Dette kan nemt verificeres ved at udvide produktet af matricer element for element . Det gør vi ikke her, interesserede kan selv tjekke det.
Lad os vende tilbage til vores udtryk. Efter vores transformationer blev det, som vi ønskede at se det:
Så vi har afsluttet den første differentiering. Lad os gå videre til det andet udtryk.
Differentiering 2
Lad os følge den slagne vej. Den bliver meget kortere end den forrige, så gå ikke for langt fra skærmen.
Lad os udvide vektorerne og matrixen element for element:
Lad os fjerne de to fra beregningerne for en stund – det spiller ikke den store rolle, så sætter vi det på plads igen. Lad os gange vektorerne med matrixen. Først og fremmest, lad os gange matrixen til vektor , vi har ingen begrænsninger her. Vi får størrelsesvektoren :
Lad os udføre følgende handling - gange vektoren til den resulterende vektor. Ved udgangen venter nummeret på os:
Så vil vi differentiere det. Ved udgangen får vi en vektor af dimension :
Minder mig om noget? Det er rigtigt! Dette er produktet af matrixen til vektor .
Således er den anden differentiering gennemført med succes.
I stedet for en konklusion
Nu ved vi, hvordan ligestillingen opstod .
Til sidst vil vi beskrive en hurtig måde at transformere grundlæggende formler på.
Lad os evaluere kvaliteten af modellen i overensstemmelse med mindste kvadraters metode:
Lad os differentiere det resulterende udtryk:
Litteratur
Internetkilder:
1)
2)
3)
4)
Lærebøger, samlinger af problemer:
1) Forelæsningsnotater om højere matematik: fuldt kursus / D.T. Skrevet – 4. udg. – M.: Iris-press, 2006
2) Anvendt regressionsanalyse / N. Draper, G. Smith - 2. udg. – M.: Finans og statistik, 1986 (oversættelse fra engelsk)
3) Problemer til løsning af matrixligninger:
Kilde: www.habr.com