Jak interpretować odchylenie zerowe i resztkowe (z przykładami)
Za każdym razem, gdy dopasowujesz ogólny model liniowy (taki jak regresja logistyczna, regresja Poissona itp.), większość oprogramowania statystycznego generuje wartości dla odchylenia zerowego i odchylenia resztkowego modelu.
Odchylenie zerowe mówi nam, jak dobrze zmienną odpowiedzi można przewidzieć za pomocą modelu zawierającego tylko oryginalny składnik.
Odchylenie resztkowe mówi nam, jak dobrze zmienną odpowiedzi można przewidzieć za pomocą modelu z p zmiennymi predykcyjnymi. Im niższa wartość, tym lepiej model jest w stanie przewidzieć wartość zmiennej odpowiedzi.
Aby określić, czy model jest „przydatny”, możemy obliczyć statystykę Chi-kwadrat w następujący sposób:
X 2 = Odchylenie zerowe – Odchylenie resztkowe
z p stopniami swobody.
Następnie możemy znaleźć wartość p powiązaną z tą statystyką chi-kwadrat. Im niższa wartość p, tym lepiej model jest w stanie dopasować zbiór danych w porównaniu z modelem zawierającym tylko oryginalny termin.
Poniższy przykład pokazuje, jak interpretować odchylenie zerowe i rezydualne dla modelu regresji logistycznej w R.
Przykład: Interpretacja odchylenia zerowego i resztkowego
W tym przykładzie użyjemy domyślnego zestawu danych z pakietu ISLR. Możemy użyć następującego kodu, aby załadować i wyświetlić podsumowanie zbioru danych:
#load dataset data <- ISLR::Default #view summary of dataset summary(data) default student balance income No:9667 No:7056 Min. : 0.0 Min. : 772 Yes: 333 Yes:2944 1st Qu.: 481.7 1st Qu.:21340 Median: 823.6 Median: 34553 Mean: 835.4 Mean: 33517 3rd Qu.:1166.3 3rd Qu.:43808 Max. :2654.3 Max. :73554
Ten zbiór danych zawiera następujące informacje na temat 10 000 osób:
- default: wskazuje, czy dana osoba nie wywiązała się ze zobowiązania, czy nie.
- student: wskazuje, czy dana osoba jest studentem, czy nie.
- saldo: Średnie saldo utrzymywane przez osobę.
- dochód: Dochód osoby fizycznej.
Wykorzystamy status studenta, stan konta bankowego i dochody do zbudowania modelu regresji logistycznej , który przewiduje prawdopodobieństwo niewypłacalności danej osoby:
#fit logistic regression model model <- glm(default~balance+student+income, family=" binomial ", data=data) #view model summary summary(model) Call: glm(formula = default ~ balance + student + income, family = "binomial", data = data) Deviance Residuals: Min 1Q Median 3Q Max -2.4691 -0.1418 -0.0557 -0.0203 3.7383 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -1.087e+01 4.923e-01 -22.080 < 2e-16 *** balance 5.737e-03 2.319e-04 24.738 < 2e-16 *** studentYes -6.468e-01 2.363e-01 -2.738 0.00619 ** income 3.033e-06 8.203e-06 0.370 0.71152 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 2920.6 on 9999 degrees of freedom Residual deviance: 1571.5 on 9996 degrees of freedom AIC: 1579.5 Number of Fisher Scoring iterations: 8
Na wyjściu możemy zaobserwować następujące wartości dla odchylenia zerowego i resztkowego:
- Odchylenie zerowe : 2920,6 przy df = 9999
- Odchylenie resztkowe : 1571,5 przy df = 9996
Możemy użyć tych wartości do obliczenia statystyki X 2 modelu:
- X 2 = Odchylenie zerowe – Odchylenie resztkowe
- X2 = 2910,6 – 1579,0
- X2 = 1331,6
Istnieje p = 3 stopnie swobody zmiennych predykcyjnych.
Możemy użyć kalkulatora wartości chi-kwadrat na P, aby stwierdzić, że wartość X 2 wynosząca 1331,6 z 3 stopniami swobody ma wartość p wynoszącą 0,000000.
Ponieważ ta wartość p jest znacznie mniejsza niż 0,05, można dojść do wniosku, że model jest bardzo przydatny w przewidywaniu prawdopodobieństwa niewypłacalności danej osoby.
Dodatkowe zasoby
Poniższe tutoriale wyjaśniają, jak w praktyce przeprowadzić regresję logistyczną w R i Pythonie:
Jak przeprowadzić regresję logistyczną w R
Jak przeprowadzić regresję logistyczną w Pythonie