Я пытаюсь выяснить, как контролировать параметры сглаживания в модели mgcv: gam.
У меня есть биноминальная переменная, которую я пытаюсь смоделировать, в первую очередь как функция координат x и y на фиксированной сетке, плюс некоторые другие переменные с меньшим влиянием. В прошлом я построил достаточно хорошую модель локальной регрессии, используя пакет locfit и только значения (x, y).
Однако я хочу попытаться включить другие переменные в модель, и похоже, что обобщенные аддитивные модели (GAM) были хорошей возможностью. Посмотрев на пакеты gam и mgcv, оба из которых имеют функцию GAM, я выбрал последнее, поскольку некоторые комментарии в ветках списка рассылки рекомендуют его. Недостатком является то, что он не поддерживает локальную регрессию, более гладкую, как лесс или локфит.
Для начала я просто хотел попытаться приблизительно воспроизвести модель locfit, используя только координаты (x, y). Я пробовал как с обычными, так и с тензорными сглаживаниями:
my.gam.te <- gam(z ~ te(x, y), family=binomial(logit), data=my.data, scale = -1)
my.gam.s <- gam(z ~ s(x, y), family=binomial(logit), data=my.data, scale = -1)
Тем не менее, при построении прогнозов из модели они гораздо более сглажены по сравнению с моделью locfit. Поэтому я пытался настроить модель так, чтобы она не была слишком гладкой. Я пытался настроить параметры sp и k, но мне не ясно, как они влияют на сглаживание. В locfit параметр nn управляет диапазоном используемой окрестности, с меньшими значениями, обеспечивающими меньшее сглаживание и большую «покачиваемость», что помогает захватывать некоторые области в сетке, где вероятность биномиальных результатов быстро изменяется. Как бы я настроил игровую модель, чтобы она работала одинаково?