Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære R-kvadrat | Velge Den Beste Modellen
Lineær Regresjon med Python

bookR-kvadrat

Hva er R-kvadrat

Vi har dekket noen av de mest brukte metrikkene for regresjon i Metrikker-kapitlet. Dette er MSE, RMSE og MAE. De egner seg godt til å 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 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 variansen til målet 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 på 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 ligget på regresjonslinjen. Det er sjelden tilfelle, så vi ønsker å beregne variansen til målet, 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 som trengs 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 én modell til.

R-kvadrert er lavere siden modellen undertilpasser 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 et mål for regresjon. Det kan ha verdier fra 0 til 1. I motsetning til andre mål som MSE/MAE, er en høyere verdi bedre (med mindre modellen overtilpasser). Du finner R-kvadrert i summary()-tabellen til sm.OLS-klassen.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain what a good R-squared value is?

How does R-squared compare to other regression metrics like MSE or MAE?

Can R-squared ever be negative?

Awesome!

Completion rate improved to 5.26

bookR-kvadrat

Sveip for å vise menyen

Hva er R-kvadrat

Vi har dekket noen av de mest brukte metrikkene for regresjon i Metrikker-kapitlet. Dette er MSE, RMSE og MAE. De egner seg godt til å 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 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 variansen til målet 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 på 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 ligget på regresjonslinjen. Det er sjelden tilfelle, så vi ønsker å beregne variansen til målet, 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 som trengs 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 én modell til.

R-kvadrert er lavere siden modellen undertilpasser 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 et mål for regresjon. Det kan ha verdier fra 0 til 1. I motsetning til andre mål som MSE/MAE, er en høyere verdi bedre (med mindre modellen overtilpasser). Du finner R-kvadrert i summary()-tabellen til sm.OLS-klassen.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3
some-alt