Lær hvordan du vælger den bedst udførte lineære regression for univariate modeller

Find ud af, hvilken lineær regressionsmodel der passer bedst til dine data

Inspireret af et spørgsmål efter min forrige artikel vil jeg tackle et problem, der ofte kommer op efter at have prøvet forskellige lineære modeller: Du skal træffe et valg, hvilken model du vil bruge. Mere specifikt spurgte Khalifa Ardi Sidqi:

“Hvordan bestemmer jeg, hvilken model der passer bedst til mine data? Ser jeg bare på R-firkanten, SSE osv.? Da fortolkningen af ​​den model (kvadratisk, rod osv.) Vil være meget anderledes, vil det ikke være et problem? "

Den anden del af spørgsmålet kan besvares let. Find først en model, der passer bedst til dine data, og fortolk derefter dens resultater. Det er godt, hvis du har ideer til, hvordan dine data kan forklares. Du skal dog kun fortolke den bedste model.

Resten af ​​denne artikel vil behandle den første del af hans spørgsmål. Bemærk, at jeg vil delemin tilgangpå hvordanfor at vælge en model. Der er flere måder, og andre kan muligvis gøre det anderledes. Men jeg vil beskrive den måde, der fungerer bedst for mig.

Derudover gælder denne tilgang kun for univariate modeller . Univariate modeller har kun en inputvariabel. Jeg planlægger en yderligere artikel, hvor jeg vil vise dig, hvordan du vurderer multivariate modeller med flere inputvariabler. I dag skal vi dog fokusere på det grundlæggende og univariate modeller.

For at øve og få en fornemmelse af dette skrev jeg en lille ShinyApp. Brug det og leg rundt med forskellige datasæt og modeller. Læg mærke til, hvordan parametre ændres og bliver mere trygge ved vurdering af simple lineære modeller. Endelig kan du også bruge appen som en ramme for dine data. Bare kopier det fra Github.

Brug den justerede R2 til univariate modeller

Hvis du kun bruger en inputvariabel, giver adjusted R2værdien dig en god indikation af, hvor godt din model klarer sig. Det illustrerer, hvor meget variation der forklares af din model.

I modsætning til den enkle R2, det adjusted R2tager antallet af input faktorer i betragtning. Det straffer for mange inputfaktorer og favoriserer parsimonious modeller.

I skærmbilledet ovenfor kan du se to modeller med en værdi på 71,3% og 84,32%. Tilsyneladende er den anden model bedre end den første. Modeller med lave værdier kan dog stadig være nyttige, fordi det adjusted R2er følsomt over for mængden af ​​støj i dine data. Som sådan skal du kun sammenligne denne indikator for modeller for det samme datasæt end sammenligne det på tværs af forskellige datasæt.

Normalt er der ikke meget behov for SSE

Lad os sørge for, at vi taler om den samme SSE, før du læser videre. På Wikipedia henviser SSE til summen af ​​kvadratiske fejl. I nogle statistiske lærebøger kan SSE imidlertid henvise til den forklarede sum af firkanter (det modsatte). Så forestil os nu, at SSE henviser til summen af ​​kvadratiske fejl.

Derfor er det adjusted R2ca. 1- SSE / SST. Med SST henviser til den samlede sum af kvadrater.

Jeg ønsker ikke at dykke dybere ned i matematikken bag dette. Hvad jeg vil vise dig er, at det adjusted R2beregnes med SSE . Så SSE giver dig normalt ikke yderligere oplysninger .

Desuden adjusted R2normaliseres den således, at den altid er mellem nul og en. Så det er lettere for dig og andre at fortolke en ukendt model med en adjusted R2på 75% snarere end en SSE på 394 - selvom begge figurer måske forklarer den samme model.

Se på resterne eller fejlbetingelserne!

Hvad der ofte ignoreres er fejltermer eller såkaldte restprodukter. De fortæller dig ofte mere end hvad du måske tror.

Resterne er forskellen mellem dine forudsagte værdier og de faktiske værdier.

Deres fordel er, at de kan vise dig både størrelsen og retningen af ​​dine fejl. Lad os se på et eksempel :

Her forsøgte jeg at forudsige et polynomielt datasæt med en lineær funktion. Analysering af rester viser, at der er områder, hvor modellen har en opadgående eller nedadgående bias.

For t; 100 er resterne over nul. Så i dette område har de faktiske værdier været højere end de forudsagte værdier - vores model har en bias nedad.50 < x &l

For 100 < x &lt; 150 er resterne imidlertid under nul. Således har de faktiske værdier været lavere end de forudsagte værdier - modellen har en opadgående bias.

Det er altid godt at vide, om din model antyder for høje eller for lave værdier. Men du vil normalt ikke have mønstre som dette.

Resterne skal være nul i gennemsnit (som angivet af middelværdien) og de skal være ligeligt fordelt. Forudsigelse af det samme datasæt med en polynomfunktion 3 degreesantyder en meget bedre pasform:

Derudover kan du se, om variansen af ​​dine fejl øges. I statistikker kaldes dette Heteroscedasticity. Du kan nemt løse dette med robuste standardfejl. Ellers er dine hypotesetest sandsynligvis forkerte.

Histogram af rester

Endelig opsummerer histogrammet størrelsen på dine fejltermer. Det giver oplysninger om båndbredden for fejl og angiver, hvor ofte hvilke fejl der opstod.

Ovenstående skærmbilleder viser to modeller til det samme datasæt. I venstre histogram opstår der fejl inden for en række af -338og 520.

I det rigtige histogram opstår der fejl i -293og 401. Så outliers er meget lavere. Desuden er de fleste fejl i modellen til det rigtige histogram tættere på nul. Så jeg foretrækker den rigtige model.

Resumé

Når du vælger en lineær model, er det faktorer, du skal huske på:

  • Sammenlign kun lineære modeller for det samme datasæt.
  • Find en model med en højjusteret R2
  • Sørg for, at denne model har ligeligt fordelte rester omkring nul
  • Sørg for, at fejlene i denne model er inden for en lille båndbredde

Hvis du har spørgsmål, skriv en kommentar nedenfor eller kontakt mig. Jeg sætter pris på din feedback.