Kursinnhold
Lineær Regresjon med Python
Lineær Regresjon med Python
R-kvadrert
Hva er R-kvadrat
Vi har dekket noen av de mest brukte metrikkene for regresjon i Metrics-kapittelet. Disse er MSE, RMSE og MAE. De er gode for å sammenligne modeller, men når du bygger én modell, forstår du ikke alltid om det er en god score for datasettet ditt, eller om du bør fortsette å prøve andre modeller.
Heldigvis finnes det en metrikk kalt R-kvadrat som måler modellens ytelse på en skala fra 0 til 1. R-kvadrat beregner andelen av variasjonen i målet som forklares av modellen.
Problemet er at vi ikke kan beregne forklart varians direkte. Men vi kan beregne uforklart varians, så vi omformer ligningen ovenfor til:
Total varians
Total varians er bare variansen til målet, og vi kan beregne målets varians ved å bruke formelen for utvalgsvarians fra statistikk (ȳ er gjennomsnittet til målet):
Her er et eksempel med visualisering. Forskjellene mellom den faktiske målverdien og målets gjennomsnitt er farget oransje. Akkurat som ved beregning av SSR, tar vi lengden av hver oransje linje, kvadrerer den og legger den til summen, men nå deler vi også resultatet på m-1. Her fikk vi en total varians på 11,07.
Uforklart varians
Nå må vi beregne variansen som ikke forklares av modellen. Hvis modellen forklarte hele variansen, ville alle punktene ligge på den tilpassede regresjonslinjen. Det er sjelden tilfelle, så vi ønsker å beregne målets varians, men nå med hensyn til regresjonslinjen i stedet for gjennomsnittet. Vi bruker samme formel, men erstatter ȳ med modellens prediksjoner.
Her er et eksempel med visualisering:
Nå vet vi alt vi trenger for å beregne R-kvadrat:
Vi fikk en R-kvadrat-verdi på 0,92, som er nær 1, så vi har en god modell. Vi skal også beregne R-kvadrat for en modell til.
R-kvadrert er lavere siden modellen underfitter dataene noe.
R-kvadrert i Python
sm.OLS
-klassen beregner R-kvadrert for oss. Vi finner det i summary()
-tabellen her.
Oppsummert er R-kvadrert en metrikk for regresjon. Den kan ha verdier fra 0 til 1. I motsetning til andre metrikker som MSE/MAE, er en høyere verdi bedre (med mindre modellen overfitter). Du finner R-kvadrert i summary()
-tabellen til sm.OLS
-klassen.
Takk for tilbakemeldingene dine!