Podsumowanie dopasowania GAM

12

Jeśli pasujemy do GAM, takiego jak:

gam.fit = gam::gam(Outstate ~ Private + s(Room.Board, df = 2) + s(PhD, df = 2) + 
    s(perc.alumni, df = 2) + s(Expend, df = 5) + s(Grad.Rate, df = 2), data = College)

Gdzie używamy zestawu danych College, który można znaleźć w pakiecie ISLR.
Teraz, jeśli znajdziemy podsumowanie tego dopasowania, możemy zobaczyć, że:

> summary(gam.fit)

Call: gam(formula = Outstate ~ Private + s(Room.Board, df = 2) + s(PhD, 
    df = 2) + s(perc.alumni, df = 2) + s(Expend, df = 5) + s(Grad.Rate, 
    df = 2), data = College)
Deviance Residuals:
     Min       1Q   Median       3Q      Max 
-7522.66 -1140.99    55.18  1287.51  7918.22 

(Dispersion Parameter for gaussian family taken to be 3475698)

    Null Deviance: 12559297426 on 776 degrees of freedom
Residual Deviance: 2648482333 on 762.0001 degrees of freedom
AIC: 13924.52 

Number of Local Scoring Iterations: 2 

Anova for Parametric Effects
                        Df     Sum Sq    Mean Sq F value    Pr(>F)    
Private                  1 3377801998 3377801998 971.834 < 2.2e-16 ***
s(Room.Board, df = 2)    1 2484460409 2484460409 714.809 < 2.2e-16 ***
s(PhD, df = 2)           1  839368837  839368837 241.496 < 2.2e-16 ***
s(perc.alumni, df = 2)   1  509679160  509679160 146.641 < 2.2e-16 ***
s(Expend, df = 5)        1 1019968912 1019968912 293.457 < 2.2e-16 ***
s(Grad.Rate, df = 2)     1  148052210  148052210  42.596 1.227e-10 ***
Residuals              762 2648482333    3475698                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Anova for Nonparametric Effects
                       Npar Df Npar F   Pr(F)    
(Intercept)                                      
Private                                          
s(Room.Board, df = 2)        1  3.480 0.06252 .  
s(PhD, df = 2)               1  1.916 0.16668    
s(perc.alumni, df = 2)       1  1.471 0.22552    
s(Expend, df = 5)            4 34.350 < 2e-16 ***
s(Grad.Rate, df = 2)         1  1.981 0.15971    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Nie rozumiem tutaj znaczenia części „Anova dla efektów parametrycznych”, a także „Anova dla efektów nieparametrycznych”. Chociaż znam działanie testu ANOVA, ale nie jestem w stanie zrozumieć części „efektów parametrycznych” i „efektów nieparametrycznych” podsumowania. Więc co one oznaczają? Jakie jest ich znaczenie?


To pytanie powstało w związku z (d) częścią tej odpowiedzi w odniesieniu do pytania 10, rozdział 7 wprowadzenia statystycznego uczenia się .

Mooncrater
źródło

Odpowiedzi:

22

Struktura tego podejścia do dopasowywania GAM polega na grupowaniu liniowych części wygładzaczy z innymi terminami parametrycznymi. Ogłoszenie Privatema pozycję w pierwszej tabeli, ale jej pozycja jest pusta w drugiej. Jest tak, ponieważ Privatejest to ściśle parametryczny termin; jest zmienny czynnik a więc jest związane z przybliżony parametru, który stanowi efekt Private. Powodem, dla którego gładkie terminy są podzielone na dwa rodzaje efektu, jest to, że dane wyjściowe pozwalają zdecydować, czy ma to miejsce

  1. efekt nieliniowy : spójrz na tabelę nieparametryczną i oceń znaczenie. Jeśli znaczenie, pozostaw jako gładki efekt nieliniowy. Jeśli nieistotne, rozważ efekt liniowy (2. poniżej)
  2. efekt liniowy : spójrz na tabelę parametryczną i oceń znaczenie efektu liniowego. Jeśli jest znaczący, możesz przekształcić ten termin w gładki s(x)-> xwe wzorze opisującym model. Jeśli nieistotne, możesz rozważyć całkowite usunięcie terminu z modelu (ale bądź ostrożny z tym --- oznacza to mocne stwierdzenie, że prawdziwym efektem jest == 0).

Tabela parametryczna

Wpisy tutaj są podobne do tego, co byś otrzymał, gdybyś dopasował ten model liniowy i obliczył tabelę ANOVA, z tym wyjątkiem, że nie pokazano żadnych szacunków dla żadnych powiązanych współczynników modelu. Zamiast szacowanych współczynników i błędów standardowych oraz powiązanych testów t lub Wald, wyjaśniona wariancja (w kategoriach sum kwadratów) jest pokazana obok testów F. Podobnie jak w przypadku innych modeli regresji wyposażonych w wiele zmiennych towarzyszących (lub funkcji zmiennych towarzyszących), wpisy w tabeli są uwarunkowane innymi warunkami / funkcjami w modelu.

Tabela nieparametryczna

W nieparametryczne skutki odnoszą się do nieliniowych częściach Praski wyposażonych. Nieliniowe efekty są znaczące, z wyjątkiem nieliniowego efektu Expend. Istnieją pewne dowody na nieliniowe działanie Room.Board. Każdy z nich jest powiązany z pewną liczbą nieparametrycznych stopni swobody ( Npar Df) i wyjaśniają one pewną zmienność odpowiedzi, której wielkość jest oceniana za pomocą testu F (domyślnie patrz argument test).

Te testy w sekcji nieparametrycznej można interpretować jako test hipotezy zerowej zależności liniowej zamiast relacji nieliniowej .

Możesz to zinterpretować tak, że tylko Expendgwarancje są traktowane jako gładki efekt nieliniowy. Pozostałe wygładzenia można przekonwertować na liniowe terminy parametryczne. Możesz sprawdzić, czy gładkość ma Room.Boardnadal nieistotny nieparametryczny efekt po przekształceniu innych gładzi w liniowe, parametryczne warunki; może być tak, że efekt Room.Boardjest nieco nieliniowy, ale wpływa na to obecność innych gładkich terminów w modelu.

Jednak wiele z tego może zależeć od faktu, że wiele wygładzeń może korzystać tylko z 2 stopni swobody; dlaczego 2?

Automatyczny wybór gładkości

Nowsze podejścia do dopasowywania GAM wybierają dla ciebie stopień gładkości poprzez automatyczne metody wyboru gładkości, takie jak karane podejście Spline Simona Wooda, zaimplementowane w zalecanym pakiecie mgcv :

data(College, package = 'ISLR')
library('mgcv')

set.seed(1)
nr <- nrow(College)
train <- with(College, sample(nr, ceiling(nr/2)))
College.train <- College[train, ]
m <- mgcv::gam(Outstate ~ Private + s(Room.Board) + s(PhD) + s(perc.alumni) + 
               s(Expend) + s(Grad.Rate), data = College.train,
               method = 'REML')

Podsumowanie modelu jest bardziej zwięzłe i bezpośrednio uwzględnia gładką funkcję jako całość, a nie wkład liniowy (parametryczny) i nieliniowy (nieparametryczny):

> summary(m)

Family: gaussian 
Link function: identity 

Formula:
Outstate ~ Private + s(Room.Board) + s(PhD) + s(perc.alumni) + 
    s(Expend) + s(Grad.Rate)

Parametric coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   8544.1      217.2  39.330   <2e-16 ***
PrivateYes    2499.2      274.2   9.115   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Approximate significance of smooth terms:
                 edf Ref.df      F  p-value    
s(Room.Board)  2.190  2.776 20.233 3.91e-11 ***
s(PhD)         2.433  3.116  3.037 0.029249 *  
s(perc.alumni) 1.656  2.072 15.888 1.84e-07 ***
s(Expend)      4.528  5.592 19.614  < 2e-16 ***
s(Grad.Rate)   2.125  2.710  6.553 0.000452 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

R-sq.(adj) =  0.794   Deviance explained = 80.2%
-REML = 3436.4  Scale est. = 3.3143e+06  n = 389

Teraz dane wyjściowe gromadzą terminy gładkie i parametry parametryczne w osobnych tabelach, przy czym te ostatnie uzyskują bardziej znane wyniki podobne do modelu liniowego. Cały efekt gładkich terminów pokazano w dolnej tabeli. To nie są te same testy, co dla gam::gampokazanego modelu; są to testy przeciwko hipotezie zerowej, że efekt gładki jest płaską, poziomą linią, efektem zerowym lub wykazuje efekt zerowy. Alternatywą jest to, że prawdziwy efekt nieliniowy różni się od zera.

Należy zauważyć, że wszystkie EFR są większe niż 2 z wyjątkiem s(perc.alumni), co sugeruje, że gam::gammodel może być nieco restrykcyjny.

Dopasowane wygładzenia do porównania podano przez

plot(m, pages = 1, scheme = 1, all.terms = TRUE, seWithMean = TRUE)

który produkuje

wprowadź opis zdjęcia tutaj

Automatyczny wybór gładkości może być również kooptowany do kurczących się elementów z modelu całkowicie:

Po tym widzimy, że dopasowanie modelu tak naprawdę się nie zmieniło

> summary(m2)

Family: gaussian 
Link function: identity 

Formula:
Outstate ~ Private + s(Room.Board) + s(PhD) + s(perc.alumni) + 
    s(Expend) + s(Grad.Rate)

Parametric coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   8539.4      214.8  39.755   <2e-16 ***
PrivateYes    2505.7      270.4   9.266   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Approximate significance of smooth terms:
                 edf Ref.df      F  p-value    
s(Room.Board)  2.260      9  6.338 3.95e-14 ***
s(PhD)         1.809      9  0.913  0.00611 ** 
s(perc.alumni) 1.544      9  3.542 8.21e-09 ***
s(Expend)      4.234      9 13.517  < 2e-16 ***
s(Grad.Rate)   2.114      9  2.209 1.01e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

R-sq.(adj) =  0.794   Deviance explained = 80.1%
-REML = 3475.3  Scale est. = 3.3145e+06  n = 389

Wszystkie wygładzenia wydają się sugerować nieco nieliniowe efekty nawet po zmniejszeniu liniowych i nieliniowych części splajnów.

Osobiście uważam, że dane wyjściowe z mgcv są łatwiejsze do interpretacji, a ponieważ wykazano, że metody automatycznego wyboru gładkości będą miały tendencję do dopasowania efektu liniowego, jeśli jest to obsługiwane przez dane.

Przywróć Monikę - G. Simpson
źródło
4
+1 Świetne wyjaśnienie. (Jestem jednak ciekawy, co rozumiesz przez „nieparametryczny test F”: jak by to się różniło od standardowego testu F, jeśli w ogóle?)
whuber
4
@ whuber to po prostu kiepskie frazowanie; jest to standardowy test F, ale ze względu na rozkład gładzi na części liniowe i nieliniowe są to testy tego, co dane wyjściowe nazywają bitem „nieparametrycznym”. Zmienię to.
Przywróć Monikę - G. Simpson
3
Wartości p nie działają w ten sposób; aby test został nawet wykonany, przyjęliśmy, że hipoteza zerowa jest prawdziwa . Test mówi, że załóżmy, że związek jest liniowy, w jakim stopniu sprzeczne z tym założeniem są dowody przedstawione przez dane? Jeśli dowody przedstawione przez dane są zgodne z tymi, których oczekujemy, jeśli wartość null była prawdziwa. Jeśli dowody są niezgodne z hipotezą zerową, prawdopodobnie nie zaobserwowalibyśmy danych, które zrobiliśmy, gdyby zerowa była prawdziwa. Wartość p jest miarą dowodów przeciwko zeru.
Przywróć Monikę - G. Simpson
1
Mówisz o tabeli parametrycznej: „Wpisy tutaj są zasadniczo tym, co byś otrzymał, gdybyś dopasował to jako model liniowy i obliczył tabelę ANOVA”. Zakładam, że nie jest to dosłownie prawdziwe (tj. Że nieliniowa część modelu w ogóle nie wpływa na oszacowania istotności dla części liniowej). Z pewnością oszacowanie części liniowej i nieliniowej odbywa się łącznie, a część nieliniowa wpływa na współczynniki dla części liniowej, a także na znaczenie, prawda?
Jacob Socolar
1
@JacobSocolar O ile rozumiem, splajn rozkłada się na komponent liniowy i niektóre nieliniowe komponenty (których liczba zależy od stopni swobody dozwolonych dla splajnu). Chodziło mi o to, że jest to rodzaj wyniku uzyskanego z dopasowania modelu liniowego, po którym następuje ANOVA (tj. Test F dla średniego kwadratu). Ale tak, są to efekty cząstkowe w tym sensie, że wariancja wyjaśniona przez jedną część modelu zależy od innych terminów (i funkcji podstawowych) w modelu. I tak, nie miałem na myśli tego cytatu dosłownie; Przeredaguję na „polub to, co byś chciał ...”.
Przywróć Monikę - G. Simpson