Термин GAM охватывает широкий набор моделей и подходов для решения проблемы выбора гладкости.
mgcv использует штрафованные сплайн-базы регрессии со штрафом за волнистость для выбора сложности установлены гладкие (ые). Таким образом, он не выбирает количество узлов как часть выбора гладкости.
По сути, вы, как пользователь, выбираете, какой размер использовать для каждой гладкой функции (устанавливая аргумент k
в функции s()
, te()
, et c, используемые в формуле модели). Значения для k
устанавливают верхний предел на волнистость функции (-ий) сглаживания. Штраф измеряет волнистость функции (обычно это квадрат второй производной от сглаживания, суммируемого в диапазоне ковариации). Затем модель оценивает значения коэффициентов для базисных функций, представляющих каждое сглаживание, и выбирает параметр (ы) сглаживания путем максимизации наказанного критерия логарифмического правдоподобия. Штрафная логарифмическая вероятность - это логарифмическая вероятность плюс некоторая сумма штрафа за волнистость для каждого сглаживания.
По сути, вы устанавливаете верхний предел ожидаемой сложности (шаткость) для каждого сглаживания, а при подборе модели - штраф (и) сжимают коэффициенты за каждым сглаживанием, чтобы лишняя волнистость удалялась из подгонки.
Таким образом, параметры сглаживания контролируют, насколько происходит усадка и, следовательно, насколько сложна (волниста) каждая подобранная сглаженность.
Этот подход позволяет избежать проблем с выбором места размещения узлов.
Это не означает, что базы, используемые для представления сглаживания, не имеют узлов. В упомянутом вами базисе сплайна регрессии cubi c значение, которое вы задаете для k
, задает размерность базиса, что подразумевает определенное количество узлов. Эти узлы размещаются на границах ковариаты, участвующей в сглаживании, а затем равномерно по всему диапазону ковариаты, если пользователь не предоставит другой набор местоположений узлов. Однако, как только количество узлов и их расположение установлены, таким образом, формируя основу, они фиксируются, причем волнистость сглаживания контролируется штрафом за волнистость, а не путем изменения количества узлов.
You должны быть очень осторожными также с R, так как есть два пакета, обеспечивающие функцию gam()
. Оригинальный пакет gam предоставляет R версию программного обеспечения и подход, описанный в оригинальной книге GAM Хаста ie и Тибширани. Этот пакет не подходит для GAM, использующих штрафные сплайны регрессии, как я описал выше.
R поставляется с пакетом mgcv , который подходит для GAM, использующим штрафные сплайны регрессии, как я обрисовал выше. Вы управляете размером (размерностью) основы для каждого сглаживания, используя аргумент k
. Там нет аргументов df
.
Как я уже сказал, ГАМы - это широкая церковь, и есть много способов соответствовать им. Важно знать, какое программное обеспечение вы используете и какие методы использует это программное обеспечение для оценки GAM. Как только у вас будет эта информация, вы сможете найти материал c для этого конкретного подхода к оценке GAM. В этом случае вам следует взглянуть на книгу Саймона Вуда GAM: введение в R , поскольку оно описывает пакет mgcv и написано автором mgcv пакет.