R-kvadrat
Hva er R-kvadrat
Vi har allerede dekket MSE, RMSE og MAE. Disse hjelper med å sammenligne modeller, men en enkelt score er vanskelig å vurdere uten kontekst. Du vet kanskje ikke om verdien er "god nok" for datasettet ditt.
R-kvadrat løser dette ved å måle hvor mye av variansen i målet modellen forklarer. Verdien varierer fra 0 til 1, noe som gjør tolkningen enkel.
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):
I eksempelet blir forskjellene mellom faktiske verdier og målets gjennomsnitt (oransje linjer) kvadrert og summert, deretter delt på m−1, noe som gir en total varians på 11.07.
Uforklart varians
Deretter beregner vi variansen som modellen ikke forklarer. Hvis prediksjonene var perfekte, ville alle punktene ligget nøyaktig på regresjonslinjen. Vi bruker samme variansformel, men erstatter ȳ med predikerte verdier.
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.
R-kvadrert varierer fra 0 til 1, og høyere verdi er bedre (med mindre modellen overtilpasser). summary()-utdataene fra sm.OLS inkluderer R-kvadrert-verdi.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 5.26
R-kvadrat
Sveip for å vise menyen
Hva er R-kvadrat
Vi har allerede dekket MSE, RMSE og MAE. Disse hjelper med å sammenligne modeller, men en enkelt score er vanskelig å vurdere uten kontekst. Du vet kanskje ikke om verdien er "god nok" for datasettet ditt.
R-kvadrat løser dette ved å måle hvor mye av variansen i målet modellen forklarer. Verdien varierer fra 0 til 1, noe som gjør tolkningen enkel.
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):
I eksempelet blir forskjellene mellom faktiske verdier og målets gjennomsnitt (oransje linjer) kvadrert og summert, deretter delt på m−1, noe som gir en total varians på 11.07.
Uforklart varians
Deretter beregner vi variansen som modellen ikke forklarer. Hvis prediksjonene var perfekte, ville alle punktene ligget nøyaktig på regresjonslinjen. Vi bruker samme variansformel, men erstatter ȳ med predikerte verdier.
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.
R-kvadrert varierer fra 0 til 1, og høyere verdi er bedre (med mindre modellen overtilpasser). summary()-utdataene fra sm.OLS inkluderer R-kvadrert-verdi.
Takk for tilbakemeldingene dine!