Резюме GAM Fit

12

Если мы соответствуем GAM, как:

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)

Где мы используем набор данных College, который можно найти внутри пакета ISLR.
Теперь, если мы найдем краткое изложение этого соответствия, то увидим, что:

> 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

Здесь я не понимаю значения части «Anova для параметрических эффектов», а также «Anova для непараметрических эффектов». Хотя я знаю работу теста ANOVA, но я не могу понять часть «параметрические эффекты» и «непараметрические эффекты». Итак, что они означают? Какое их значение?


Этот вопрос возник из-за (d) части этого ответа на вопрос 10, глава 7 « Введение в статистическое обучение» .

Mooncrater
источник

Ответы:

22

Структура такого подхода к подгонке GAM состоит в том, чтобы сгруппировать линейные части сглаживателей с другими параметрическими членами. Уведомление Privateимеет запись в первой таблице, но запись пуста во второй таблице. Это потому, что Privateэто строго параметрический термин; это переменная фактора и, следовательно, связана с оценочным параметром, который представляет эффект Private. Причина, по которой гладкие члены разделяются на два типа эффекта, состоит в том, что этот вывод позволяет вам решить, имеет ли гладкий термин

  1. Нелинейный эффект : посмотрите на непараметрическую таблицу и оцените значимость. Если значимость, оставьте как плавный нелинейный эффект. Если незначительный, рассмотрите линейный эффект (2. ниже)
  2. линейный эффект : посмотрите на параметрическую таблицу и оцените значимость линейного эффекта. Если это важно, вы можете превратить термин в гладкое s(x)-> xв формуле, описывающей модель. Если он незначителен, вы можете полностью исключить этот термин из модели (но будьте осторожны с этим - это означает, что истинный эффект == 0).

Параметрическая таблица

Записи здесь аналогичны тем, которые вы получили бы, если бы вы подогнали эту линейную модель и вычислили таблицу ANOVA, за исключением того, что не показаны оценки для каких-либо связанных коэффициентов модели. Вместо расчетных коэффициентов и стандартных ошибок, а также связанных t- критерий или критерия Вальда, объясненная величина дисперсии (в виде суммы квадратов) показывается вместе с F-критериями. Как и в других регрессионных моделях, снабженных несколькими ковариатами (или функциями ковариат), записи в таблице зависят от других терминов / функций в модели.

Непараметрическая таблица

В непараметрических эффекты связаны с нелинейными частями сглаживателями установлены. Ни один из этих нелинейных эффектов не является значительным, за исключением нелинейного эффекта Expend. Есть некоторые свидетельства нелинейного эффекта Room.Board. Каждый из них связан с некоторым количеством непараметрических степеней свободы ( Npar Df), и они объясняют количество вариаций в ответе, количество которых оценивается с помощью F-теста (по умолчанию см. Аргумент test).

Эти тесты в непараметрическом разделе могут быть интерпретированы как проверка нулевой гипотезы линейного отношения вместо нелинейного отношения .

То, как вы можете интерпретировать это, заключается в том, что только Expendордера обрабатываются как плавный нелинейный эффект. Другие сглаживания могут быть преобразованы в линейные параметрические члены. Возможно, вы захотите проверить, что сглаживание Room.Boardпродолжает иметь незначительный непараметрический эффект после преобразования других сглаживаний в линейные параметрические члены; может случиться так, что эффект Room.Boardслегка нелинейный, но это зависит от наличия других гладких членов в модели.

Однако многое из этого может зависеть от того факта, что многим сглаживаниям было разрешено использовать только 2 степени свободы; почему 2?

Автоматический выбор плавности

Более новые подходы к подгонке GAM будут выбирать степень гладкости для вас с помощью подходов автоматического выбора сглаживания, таких как подход Саймон Вуда с штрафными сплайнами, реализованный в рекомендованном пакете 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')

Краткое изложение модели является более кратким и непосредственно рассматривает гладкую функцию в целом, а не как линейный (параметрический) и нелинейный (непараметрический) вклады:

> 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

Теперь выходные данные собирают гладкие термины и параметрические термины в отдельные таблицы, причем последние получают более знакомый результат, аналогичный линейной модели. Сглаживание всего эффекта показано в нижней таблице. Это не те же тесты, что и для gam::gamмодели, которую вы показываете; это тесты против нулевой гипотезы о том, что эффект сглаживания представляет собой плоскую горизонтальную линию, нулевой эффект или показывает нулевой эффект. Альтернатива в том, что истинный нелинейный эффект отличается от нуля.

Обратите внимание, что все EDF больше 2, за исключением того s(perc.alumni), что gam::gamмодель может быть немного ограничительной.

Приспособленные сглаживания для сравнения даны

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

который производит

введите описание изображения здесь

Автоматический выбор плавности также можно использовать для сокращения сроков модели:

Сделав это, мы видим, что подгонка модели действительно не изменилась

> 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

Кажется, что все сглаживания предлагают слегка нелинейные эффекты даже после того, как мы сократили линейные и нелинейные части сплайнов.

Лично я нахожу вывод из mgcv более легким для интерпретации, и потому что было показано, что методы автоматического выбора сглаживания будут иметь тенденцию соответствовать линейному эффекту, если это подтверждается данными.

Восстановить Монику - Дж. Симпсон
источник
4
+1 Отличное объяснение. (Мне любопытно, что вы подразумеваете под «непараметрическим F-тестом», хотя: чем он будет отличаться от стандартного F-теста, если вообще будет?)
whuber
4
@whuber это просто плохая формулировка; это стандартный F-тест, но из-за разложения сглаживаний на линейные и нелинейные части это тесты того, что на выходе называют «непараметрическим» битом. Я отредактирую это.
Восстановить Монику - Г. Симпсон
3
p-значения не работают таким образом; Для того чтобы тест был даже выполнен, мы предположили, что нулевая гипотеза верна . То, что делает этот тест, говорит: предположим, что взаимосвязь линейна, насколько противоречит этому предположению свидетельство, представленное данными? Если доказательства, представленные данными, соответствуют тому, что мы ожидаем, если нулевое значение будет истинным. Если доказательства не соответствуют нулевой гипотезе, то мы вряд ли увидим данные, которые мы сделали, если бы нулевые были правдой. Значение р является мерой доказательства против нуля.
Восстановить Монику - Г. Симпсон
1
Вы говорите о параметрической таблице: «Записи здесь - это, по сути, то, что вы получили бы, если бы приспособили это как линейную модель и вычислили таблицу ANOVA». Я предполагаю, что это не совсем верно (то есть, что нелинейная часть модели вообще не влияет на оценки значимости для линейной части). Конечно, оценка линейной и нелинейной частей выполняется совместно, и нелинейная часть влияет на коэффициенты для линейной части, а также на их значимость, верно?
Джейкоб Соколар
1
@JacobSocolar Насколько я понимаю, сплайн можно разложить на линейный компонент и некоторые нелинейные компоненты (количество которых зависит от степени свободы, разрешенной для сплайна). Я имел в виду, что это тот тип вывода, который вы получите из линейного соответствия модели, за которым следует ANOVA (то есть F-тест для среднего квадрата). Однако, да, это частичные эффекты в том смысле, что дисперсия, объясняемая одной частью модели, зависит от других терминов (и базисных функций) в модели. И да, я не имел в виду эту цитату буквально; Я перефразирую, что "нравится то, что ты хотел бы ...".
Восстановить Монику - Г. Симпсон