Обобщенная аддитивная модель

редактировать

В статистике обобщенная аддитивная модель (GAM) - это обобщенная линейная модель, в которой линейный предсказатель линейно зависит от неизвестных гладких функций некоторых переменных-предикторов, и интерес фокусируется на выводе об этих гладких функциях. Изначально GAM были разработаны Тревором Хасти и Робертом Тибширани для объединения свойств обобщенных линейных моделей с аддитивными моделями.

Модель связывает одномерный отклик переменной Y в некоторые переменные-предикторы, x i. Для Y указано экспоненциальное семейство распределение (например, нормальное, биномиальное или распределение Пуассона ) вместе с функцией связи g (например, функция идентичности или журнала), связывающая ожидаемое значение Y с переменными-предикторами через такую ​​структуру, как

g (E ⁡ (Y)) = β 0 + f 1 (x 1) + f 2 (x 2) + ⋯ + fm (xm). {\ displaystyle g (\ operatorname {E} (Y)) = \ beta _ {0} + f_ {1} (x_ {1}) + f_ {2} (x_ {2}) + \ cdots + f_ {m } (x_ {m}). \, \!}g(\operatorname {E}(Y))=\beta _{0}+f_{1}(x_{1})+f_{2}(x_{2})+\cdots +f_{m}(x_{m}).\,\!

Функции f i могут быть функциями с заданной параметрической формой (например, полиномом или сплайном регрессии без штрафных санкций переменной) или может быть задан непараметрически или полупараметрически, просто как «гладкие функции», для оценки с помощью непараметрических средств. Таким образом, типичный GAM может использовать функцию сглаживания диаграммы рассеяния, такую ​​как локально взвешенное среднее значение, для f 1(x1), а затем использовать факторную модель для f 2(x2). Эта гибкость, позволяющая непараметрические подгонки с ослабленными предположениями о фактических отношениях между ответом и предиктором, обеспечивает возможность лучшего подбора данных, чем чисто параметрические модели, но, возможно, с некоторой потерей интерпретируемости.

Содержание
  • 1 Теоретические основы
  • 2 Общность
  • 3 Методы подбора GAM
  • 4 Структура с пониженным рангом
    • 4.1 Приориты байесовского сглаживания
    • 4.2 Оценка параметров сглаживания
  • 5 Программное обеспечение
  • 6 Проверка модели
  • 7 Выбор модели
  • 8 Предостережения
  • 9 См. Также
  • 10 Ссылки
  • 11 Внешние ссылки
Теоретические основы

Это было известно с 1950-х годов (с помощью теоремы о представлении Колмогорова – Арнольда ), что любая функция многих переменных может быть представлена ​​в виде сумм и композиций функций одной переменной.

е (Икс →) знак равно ∑ Q знак равно 0 2 N Φ Q (∑ p = 1 N ϕ q, p (xp)) {\ displaystyle f ({\ vec {x}}) = \ sum _ {q = 0} ^ {2n} \ Phi _ {q} \ left (\ sum _ {p = 1} ^ {n} \ phi _ {q, p} (x_ {p}) \ right)}{\displaystyle f({\vec {x}})=\sum _{q=0}^{2n}\Phi _{q}\left(\sum _{p=1}^{n}\phi _{q,p}(x_{p})\right)}

К сожалению, хотя теорема о представлении Колмогорова – Арнольда утверждает существование функции такого вида, она не дает механизма, посредством которого она могла бы быть построена. Существуют определенные конструктивные доказательства, но они, как правило, требуют очень сложных (т.е. фрактальных) функций и поэтому не подходят для подходов к моделированию. Следовательно, обобщенная аддитивная модель отбрасывает внешнюю сумму и вместо этого требует, чтобы функция принадлежала более простому классу.

е (Икс →) знак равно Φ (∑ p = 1 N ϕ p (xp)) {\ displaystyle f ({\ vec {x}}) = \ Phi \ left (\ sum _ {p = 1} ^ {n} \ phi _ {p} (x_ {p}) \ right)}{\displaystyle f({\vec {x}})=\Phi \left(\sum _{p=1}^{n}\phi _{p}(x_{p})\right)}

где Φ {\ displaystyle \ Phi}\Phi - гладкая монотонная функция. Если записать g {\ displaystyle g}gвместо Φ {\ displaystyle \ Phi}\Phi , это традиционно записывается как

g (f (x →)) = ∑ ifi (xi) {\ displaystyle g (f ({\ vec {x}})) = \ sum _ {i} f_ {i} (x_ {i})}{\displaystyle g(f({\vec {x}}))=\sum _{i}f_{i}(x_{i})}.

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

g (E ⁡ (Y)) = β 0 + f 1 (x 1) + f 2 (x 2) + ⋯ + fm (xm). {\ displaystyle g (\ operatorname {E} (Y)) = \ beta _ {0} + f_ {1} (x_ {1}) + f_ {2} (x_ {2}) + \ cdots + f_ {m } (x_ {m}). \, \!}g(\operatorname {E}(Y))=\beta _{0}+f_{1}(x_{1})+f_{2}(x_{2})+\cdots +f_{m}(x_{m}).\,\!

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

Общность

Класс модели GAM довольно широк, учитывая, что функция сглаживания является довольно широкой категорией. Например, ковариата xj {\ displaystyle x_ {j}}x_{j}может быть многомерной, а соответствующая fj {\ displaystyle f_ {j}}f_{j}гладкой функцией нескольких переменных, или fj {\ displaystyle f_ {j}}f_{j}может быть функцией, отображающей уровень фактора в значение случайного эффекта. Другой пример - термин с переменным коэффициентом (географическая регрессия), например zjfj (xj) {\ displaystyle z_ {j} f_ {j} (x_ {j})}{\displaystyle z_{j}f_{j}(x_{j})}где zj { \ displaystyle z_ {j}}{\displaystyle z_{j}}и xj {\ displaystyle x_ {j}}x_{j}являются ковариатами. Или, если xj (t) {\ displaystyle x_ {j} (t)}{\displaystyle x_{j}(t)}само по себе является наблюдением функции, мы могли бы включить такой термин, как ∫ fj (t) xj (t) dt {\ displaystyle \ int f_ {j} (t) x_ {j} (t) dt}{\displaystyle \int f_{j}(t)x_{j}(t)dt}(иногда известный как термин регрессии сигнала). f j {\ displaystyle f_ {j}}f_{j}также может быть простой параметрической функцией, которая может использоваться в любой обобщенной линейной модели. Класс модели был обобщен в нескольких направлениях, в частности, за пределами экспоненциального распределения откликов семейства, помимо моделирования только среднего и сверх одномерных данных.

Методы подбора GAM

Исходный метод подбора GAM оценил сглаживание компонентов модели с использованием непараметрических сглаживающих устройств (например, сглаживающих сплайнов или сглаживающих устройств локальной линейной регрессии) с помощью алгоритма подгонки. Подгонка работает путем итеративного сглаживания частичных остатков и обеспечивает очень общий модульный метод оценки, позволяющий использовать широкий спектр методов сглаживания для оценки fj (xj) {\ displaystyle f_ {j} (x_ {j})}{\displaystyle f_{j}(x_{j})}термины. Недостатком подгонки является то, что ее трудно интегрировать с оценкой степени сглаживания членов модели, так что на практике пользователь должен установить их или выбрать между скромным набором заранее определенных уровней сглаживания.

Если fj (xj) {\ displaystyle f_ {j} (x_ {j})}{\displaystyle f_{j}(x_{j})}представлены с помощью сглаживающих сплайнов, то степень сглаживание можно оценить как часть подгонки модели с использованием обобщенной перекрестной проверки или с помощью ограниченного максимального правдоподобия (REML, иногда называемого «GML»), который использует двойственность между сглаживающими сплайнами и гауссовскими случайными эффектами. Этот подход с полным сплайном требует вычислительных затрат O (n 3) {\ displaystyle O (n ^ {3})}O(n^{3}), где n {\ displaystyle n}n- количество наблюдений для переменной ответа, что делает его несколько непрактичным для умеренно больших наборов данных. В более поздних методах эти вычислительные затраты были устранены либо путем предварительного уменьшения размера базиса, используемого для сглаживания (понижение ранга), либо путем поиска разреженных представлений сглаживания с использованием марковских случайных полей, которые поддаются использование методов разреженной матрицы для вычисления. Эти более эффективные в вычислительном отношении методы используют GCV (или AIC или аналогичный) или REML или используют полностью байесовский подход для вывода о степени гладкости компонентов модели. Оценка степени гладкости с помощью REML может рассматриваться как эмпирический метод Байеса.

. Альтернативный подход с особыми преимуществами в параметрах большой размерности - использование повышения, хотя обычно это требует начальной загрузки для количественной оценки неопределенности.. Было обнаружено, что GAM, подходящие с использованием бэггинга и повышения, обычно превосходят GAM, подходящие с использованием методов сплайна.

Структура с пониженным рангом

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

fj (xj) = ∑ k = 1 K j β jkbjk (xj) {\ displaystyle f_ {j} (x_ {j}) = \ sum _ {k = 1} ^ {K_ {j}} \ beta _ {jk} b_ {jk} (x_ {j})}{\displaystyle f_{j}(x_{j})=\sum _{k=1}^{K_{j}}\beta _{jk}b_{jk}(x_{j})}

где bjk (xj) {\ displaystyle b_ { jk} (x_ {j})}{\displaystyle b_{jk}(x_{j})}- известные базисные функции, обычно выбираемые из-за хороших теоретических свойств аппроксимации (например, B-шлицы или шлицы тонких пластин пониженного ранга ), а β jk {\ displaystyle \ beta _ {jk}}{\displaystyle \beta _{jk}}- это коэффициенты, которые необходимо оценить как часть подгонки модели. Базовое измерение K j {\ displaystyle K_ {j}}K_{j}выбрано достаточно большим, чтобы мы ожидали, что он будет соответствовать имеющимся данным (таким образом, избегая предвзятости из-за чрезмерного упрощения модели), но достаточно мал, чтобы сохранить вычислительную эффективность. Если p = ∑ j K j {\ displaystyle p = \ sum _ {j} K_ {j}}{\displaystyle p=\sum _{j}K_{j}}, то вычислительные затраты на оценку модели таким способом будут O (np 2) {\ displaystyle O (np ^ {2})}{\displaystyle O(np^{2})}.

Обратите внимание на то, что fj {\ displaystyle f_ {j}}f_{j}можно идентифицировать только с точностью до перехвата (мы могли бы добавить любой константа до f 1 {\ displaystyle f_ {1}}f_{1}при вычитании ее из f 2 {\ displaystyle f_ {2}}f_{2}без изменения прогнозов модели при all), поэтому для устранения этой неоднозначности на гладкие термины должны быть наложены ограничения идентифицируемости. Самый точный вывод о fj {\ displaystyle f_ {j}}f_{j}обычно получается с использованием ограничений суммы до нуля

∑ ifj (xji) = 0 {\ displaystyle \ sum _ {i} f_ {j} (x_ {ji}) = 0}{\d isplaystyle \sum _{i}f_{j}(x_{ji})=0}

т.е. настаивая на том, что сумма каждого f j {\ displaystyle f_ {j}}f_{j}, оцененного при наблюдаемых значениях ковариаты, должна быть равна нулю. Такие линейные ограничения проще всего наложить повторной параметризацией на этапе настройки базиса, поэтому ниже предполагается, что это было сделано.

Заменив все fj {\ displaystyle f_ {j}}{\displaystyle f_{j}}в модели такими базисными расширениями, мы превратили GAM в Обобщенную линейную модель (GLM) с матрицей модели, которая просто содержит базисные функции, оцененные при наблюдаемых значениях xj {\ displaystyle x_ {j}}x_{j}. Однако, поскольку базовые размеры, K j {\ displaystyle K_ {j}}K_{j}, были выбраны несколько большими, чем это считается необходимым для данных, модель чрезмерно параметризован и будет соответствовать данным, если оценивается как обычный GLM. Решение этой проблемы состоит в том, чтобы наказывать отклонение от гладкости в процессе подбора модели, контролируя вес, придаваемый штрафам за сглаживание, с помощью параметров сглаживания. Например, рассмотрим ситуацию, в которой все сглаживания являются одномерными функциями. Записывая все параметры в один вектор, β {\ displaystyle \ beta}\beta , предположим, что D (β) {\ displaystyle D (\ beta)}{\displaystyle D(\beta)}является отклонение (двойная разница между насыщенным логарифмическим правдоподобием и логарифмическим правдоподобием модели) для модели. Минимизация отклонения с помощью обычного метода наименьших квадратов с повторным итеративным взвешиванием приведет к переобучению, поэтому мы стремимся β {\ displaystyle \ beta}\beta минимизировать

D (β) + ∑ j λ j ∫ fj ′ ′ (x) 2 dx {\ displaystyle D (\ beta) + \ sum _ {j} \ lambda _ {j} \ int f_ {j} ^ {\ prime \ prime} (x) ^ {2} dx}{\displaystyle D(\beta)+\sum _{j}\lambda _{j}\int f_{j}^{\prime \prime }(x)^{2}dx}

, где штрафы за интегрированную квадратную вторую производную служат для компенсации волнистости (отсутствия гладкости) fj {\ displaystyle f_ {j}}f_{j}во время подгонки, а параметры сглаживания λ j {\ displaystyle \ lambda _ {j}}\lambda _{j}контролирует компромисс между качеством соответствия модели и гладкостью модели. В примере λ j → ∞ {\ displaystyle \ lambda _ {j} \ to \ infty}{\displaystyle \lambda _{j}\to \infty }гарантирует, что оценка fj (xj) {\ displaystyle f_ {j} (x_ {j})}{\displaystyle f_{j}(x_{j})}будет прямой линией в xj {\ displaystyle x_ {j}}x_{j}.

с учетом базисного расширения для каждого fj {\ displaystyle f_ {j }}f_{j}штрафы за волнистость могут быть выражены как квадратичные формы в коэффициентах модели. То есть мы можем написать

∫ fj ′ ′ (x) 2 dx = β j TS ¯ j β j = β TS j β {\ displaystyle \ int f_ {j} ^ {\ prime \ prime} (x) ^ {2} dx = \ beta _ {j} ^ {T} {\ bar {S}} _ {j} \ beta _ {j} = \ beta ^ {T} S_ {j} \ beta}{\displaystyle \int f_{j}^{\prime \prime }(x)^{2}dx=\beta _{j}^{T}{\bar {S}}_{j}\beta _{j}=\beta ^{T}S_{j}\beta },

где S ¯ j {\ displaystyle {\ bar {S}} _ {j}}{\displaystyle {\bar {S}}_{j}}- матрица известных коэффициентов, вычисляемых по штрафу и базису, β j {\ displaystyle \ beta _ {j}}\beta _{j}- вектор коэффициентов для fj {\ displaystyle f_ {j}}f_{j}и S j {\ displaystyle S_ {j}}.S_jпросто S ¯ j {\ displaystyle {\ bar {S}} _ {j}}{\displaystyle {\bar {S}}_{j}}, дополненный нулями, чтобы выполнялось второе равенство, и мы могли записать штраф в терминах полного вектора коэффициентов β {\ displaystyle \ beta}\beta . Многие другие штрафы за сглаживание могут быть записаны таким же образом, и с учетом параметров сглаживания задача подбора модели теперь принимает вид

β ^ = argmin β {D (β) + ∑ j λ j β TS j β} {\ displaystyle { \ hat {\ beta}} = {\ text {argmin}} _ {\ beta} \ {D (\ beta) + \ sum _ {j} \ lambda _ {j} \ beta ^ {T} S_ {j} \ beta \}}{\displaystyle {\hat {\beta }}={\text{argmin}}_{\beta }\{D(\beta)+\sum _{j}\lambda _{j}\beta ^{T}S_{j}\beta \}},

, который может быть найден с использованием штрафной версии обычного итеративно пересчитываемого алгоритма наименьших квадратов (IRLS) для GLM: алгоритм не изменился, за исключением того, что сумма квадратичных штрафов добавлена ​​к рабочая цель наименьшего квадрата на каждой итерации алгоритма.

Наказание оказывает несколько эффектов на вывод по сравнению с обычным GLM. Во-первых, оценки подвержены некоторому сглаживающему смещению, которое представляет собой цену, которую необходимо заплатить за ограничение дисперсии оценки с помощью штрафов. Однако, если параметры сглаживания выбраны надлежащим образом, (возведенное в квадрат) смещение сглаживания, вносимое штрафом, должно быть меньше, чем уменьшение дисперсии, которое оно производит, так что чистым эффектом является уменьшение среднеквадратичной ошибки оценки по сравнению с отсутствием штрафных санкций. Связанный с этим эффект штрафов состоит в том, что понятие степеней свободы модели должно быть изменено, чтобы учесть действие штрафов по уменьшению свободы изменения коэффициентов. Например, если W {\ displaystyle W}W- это диагональная матрица весов IRLS при сходимости, а X {\ displaystyle X}X- это матрица модели GAM, то эффективные степени свободы модели задаются выражением trace (F) {\ displaystyle {\ text {trace}} (F)}{\displaystyle {\text{trace}}(F)}, где

F = (XTWX + ∑ j λ j S j) - 1 XTWX {\ displaystyle F = (X ^ {T} WX + \ sum _ {j} \ lambda _ {j} S_ {j}) ^ {- 1} X ^ {T} WX}{\displaystyle F=(X^{T}WX+\sum _{j}\lambda _{j}S_{j})^{-1}X^{T}WX},

- матрица эффективных степеней свободы. Фактически, суммирование только диагональных элементов F {\ displaystyle F}F, соответствующих коэффициентам fj {\ displaystyle f_ {j}}f_{j}, дает эффективные градусы свободы для оценки fj {\ displaystyle f_ {j}}f_{j}.

априорных значений байесовского сглаживания

Смещение сглаживания усложняет интервальную оценку для этих моделей, и оказывается, что самый простой подход включает байесовский подход. Понимание этого байесовского взгляда на сглаживание также помогает понять REML и полный байесовский подход к оценке параметров сглаживания. На некотором уровне налагаются штрафы за сглаживание, потому что мы считаем, что гладкие функции более вероятны, чем волнообразные, и если это так, то мы могли бы также формализовать это понятие, поместив априорность в волнообразность модели. Очень простой априор может быть таким:

π (β) ∝ exp ⁡ {- β T ∑ j λ j S j β / (2 ϕ)} {\ displaystyle \ pi (\ beta) \ propto \ exp \ {- \ бета ^ {T} \ sum _ {j} \ lambda _ {j} S_ {j} \ beta / (2 \ phi) \}}{\displaystyle \pi (\beta)\propto \exp\{-\beta ^{T}\sum _{j}\lambda _{j}S_{j}\beta /(2\phi)\}}

(где ϕ {\ displaystyle \ phi}\phi - параметр масштаба GLM, введенный только для дальнейшего удобства), но мы можем сразу распознать это как многомерное нормальное предшествующее со средним 0 {\ displaystyle 0}{\displaystyle 0}и матрица точности S λ = ∑ j λ j S j / ϕ {\ displaystyle S _ {\ lambda} = \ sum _ {j} \ lambda _ {j} S_ {j} / \ phi}{\displaystyle S_{\lambda }=\sum _{j}\lambda _{j}S_{j}/\phi }. Поскольку штраф допускает выполнение некоторых функций без штрафных санкций (прямые линии, учитывая пример штрафов), S λ {\ displaystyle S _ {\ lambda}}{\displaystyle S_{\lambda }}является недостаточным по рангу, а предыдущий фактически неправильный, с ковариационная матрица, заданная псевдообратной матрицей Мура-Пенроуза для S λ {\ displaystyle S _ {\ lambda}}{\displaystyle S_{\lambda }}(некорректность соответствует приписыванию бесконечной дисперсии непенализованным компонентам сглаженная).

Теперь, если этот априор объединить с вероятностью GLM, мы обнаружим, что апостериорный режим для β {\ displaystyle \ beta}\beta в точности соответствует β ^ {\ displaystyle {\ hat {\ beta}}}{\hat {\beta }}найдено выше по оштрафованным IRLS. Кроме того, у нас есть результат большой выборки, что

β | y ∼ N (β ^, (X T W X + S λ) - 1 ϕ). {\ displaystyle \ beta | y \ sim N ({\ hat {\ beta}}, (X ^ {T} WX + S _ {\ lambda}) ^ {- 1} \ phi).}{\displaystyle \beta |y\sim N({\hat {\beta }},(X^{T}WX+S_{\lambda })^{-1}\phi).}

который может быть используется для получения достоверных / достоверных интервалов для сглаженных компонентов, fj {\ displaystyle f_ {j}}f_{j}. Априорные значения гауссовой гладкости также являются основой для полностью байесовского вывода с GAM, а также для методов оценки GAM как смешанных моделей, которые по сути являются эмпирическими методами Байеса.

Оценка параметров сглаживания

До сих пор мы рассматривали оценка и логический вывод с учетом параметров сглаживания, λ {\ displaystyle \ lambda}\lambda , но их также необходимо оценить. Один из подходов состоит в том, чтобы использовать полностью байесовский подход, определяя априорные значения для (логарифмических) параметров сглаживания и используя методы стохастического моделирования или аппроксимации высокого порядка для получения информации о апостериорных значениях коэффициентов модели. Альтернативой является выбор параметров сглаживания для оптимизации критерия ошибки прогнозирования, такого как Обобщенная перекрестная проверка (GCV) или информационный критерий Акаике (AIC). Наконец, мы можем максимизировать маргинальное правдоподобие (REML), полученное путем интегрирования коэффициентов модели, β {\ displaystyle \ beta}\beta из совместной плотности β, y {\ displaystyle \ бета, y}{\displaystyle \beta,y},

λ ^ = argmax λ ∫ е (y | β, λ) π (β | λ) d β {\ displaystyle {\ hat {\ lambda}} = {\ text {argmax}} _ {\ lambda} \ int f (y | \ beta, \ lambda) \ pi (\ beta | \ lambda) d \ beta}{\displaystyle {\hat {\lambda }}={\text{argmax}}_{\lambda }\int f(y|\beta,\lambda)\pi (\beta |\lambda)d\beta } .

Поскольку f (y | β, λ) {\ displaystyle f (y | \ beta, \ lambda)}{\displaystyle f(y|\beta,\lambda)}- это просто вероятность β {\ displaystyle \ beta}\beta , мы можем рассматривать это как выбор λ {\ displaystyle \ лямбда}\lambda , чтобы максимизировать среднюю вероятность случайных ничьих из предыдущего. Предыдущий интеграл обычно аналитически не поддается обработке, но может быть аппроксимирован с довольно высокой точностью с помощью метода Лапласа..

Вывод параметров сглаживания является наиболее затратной с вычислительной точки зрения частью оценки / вывода модели. Например, для оптимизации GCV или предельного правдоподобия обычно требуется численная оптимизация с помощью метода Ньютона или Квазиньютона, при этом каждое пробное значение для (логарифмического) вектора параметра сглаживания требует итераций IRLS со штрафом для оценки соответствующего β ^ { \ displaystyle {\ hat {\ beta}}}{\hat {\beta }}вместе с другими составляющими оценки GCV или приблизительного предельного правдоподобия Лапласа (LAML). Кроме того, получение производных от GCV или LAML, необходимых для оптимизации, включает неявное дифференцирование для получения производных от β ^ {\ displaystyle {\ hat {\ beta}}}{\hat {\beta }}w.r.t. параметры логарифмического сглаживания, и это требует некоторой осторожности, поскольку необходимо поддерживать эффективность и числовую стабильность.

Программное обеспечение

Backfit GAMs изначально предоставлялись функцией gamв S, теперь перенесен на язык R как пакет gam. SAS proc GAMтакже поддерживает GAM с заданной конфигурацией. Рекомендуемый пакет в R для GAM: mgcv, что означает вычислительную среду смешанного GAM, основанную на подходе с пониженным рангом с автоматическим выбором параметров сглаживания. SAS proc GAMPLявляется альтернативной реализацией. В Python есть пакет InterpretML, в котором реализован подход упаковки и повышения. Есть много альтернативных пакетов. Примеры включают пакеты R mboost, в которых реализован подход повышения; gss, который предоставляет методы полного сглаживания сплайнов; VGAM, который предоставляет векторные GAM; и gamlss, который предоставляет Обобщенную аддитивную модель для местоположения, масштаба и формы. `BayesX 'и его интерфейс R предоставляют GAM и расширения через MCMC и методы штрафного правдоподобия. Программа ʻINLA 'реализует полностью байесовский подход, основанный на представлениях марковских случайных полей с использованием методов разреженных матриц.

В качестве примера того, как модели могут быть оценены на практике с помощью программного обеспечения, рассмотрим пакет R mgcv. Предположим, что наше рабочее пространство R содержит векторы y, x и z, и мы хотим оценить модель

yi = β 0 + f 1 (xi) + f 2 (zi) + ϵ i, где ϵ i ∼ N (0, σ 2). {\ displaystyle y_ {i} = \ beta _ {0} + f_ {1} (x_ {i}) + f_ {2} (z_ {i}) + \ epsilon _ {i} {\ text {where}} \ epsilon _ {i} \ sim N (0, \ sigma ^ {2}).}{\displaystyle y_{i}=\beta _{0}+f_{1}(x_{i})+f_{2}(z_{i})+\epsilon _{i}{\text{ where }}\epsilon _{i}\sim N(0,\sigma ^{2}).}

В R мы могли бы выполнить команды

library (mgcv) # загрузить пакет b = gam (y ~ s (x) + s (z))

Как и большинство функций моделирования R, gamожидает, что будет предоставлена ​​формула модели, определяющая подходящую структуру модели. Переменная ответа дается слева от ~, в то время как спецификация линейного предиктора дается справа. gamустанавливает основы и штрафы для сглаженных членов, оценивает модель, включая ее параметры сглаживания, и, в стандартном стиле R, возвращает подобранный объект модели, который затем может быть опрошен с помощью различных вспомогательных функций, таких как сводка, график, прогнози AIC.

В этом простом примере использовались несколько настроек по умолчанию, о которых важно знать. Например, предполагалось гауссово распределение и идентификационная связь, а критерием выбора параметра сглаживания было GCV. Также сглаженные члены были представлены с использованием «регрессионных шлицев с тонкими пластинами со штрафными санкциями», и базовое измерение для каждого было установлено равным 10 (что подразумевает максимум 9 степеней свободы после наложения ограничений идентифицируемости). Второй пример показывает, как мы можем контролировать эти вещи. Предположим, что мы хотим оценить модель

y i ∼ Poi (μ i), где log ⁡ μ i = β 0 + β 1 x i + f 1 (t i) + f 2 (v i, w i). {\ displaystyle y_ {i} \ sim {\ text {Poi}} (\ mu _ {i}) {\ text {where}} \ log \ mu _ {i} = \ beta _ {0} + \ beta _ {1} x_ {i} + f_ {1} (t_ {i}) + f_ {2} (v_ {i}, w_ {i}).}{\displaystyle y_{i}\sim {\text{Poi}}(\mu _{i}){\t ext{ where }}\log \mu _{i}=\beta _{0}+\beta _{1}x_{i}+f_{1}(t_{i})+f_{2}(v_{i},w_{i}).}

с использованием выбора параметра сглаживания REML, и мы ожидаем f 1 {\ displaystyle f_ {1}}f_{1}, чтобы быть относительно сложной функцией, которую мы хотели бы смоделировать со штрафным сплайном кубической регрессии. Для f 2 {\ displaystyle f_ {2}}f_{2}мы также должны решить, нужны ли v {\ displaystyle v}vи w {\ displaystyle w }w, естественно, имеют тот же масштаб, поэтому подходит изотропный более гладкий, такой как шлиц тонкой пластины (указывается через `s (v, w) '), или действительно ли они разные масштабы, поэтому нам нужны отдельные штрафы за сглаживание и параметры сглаживания для v {\ displaystyle v}vи w {\ displaystyle w}wв соответствии с тензорным произведением плавнее. Предположим, что в данном случае мы выбрали последнее, тогда следующий код R будет оценивать модель

b1 = gam (y ~ x + s (t, bs = "cr", k = 100) + te ( v, w), family = poisson, method = "REML")

, который использует базовый размер 100 для сглаживания t {\ displaystyle t}t. В спецификации функции распределения и связи используются объекты "семейства", которые являются стандартными при подборе GLM в R или S. Обратите внимание, что к линейному предиктору можно добавить гауссовские случайные эффекты.

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

Модель проверка

Как и в случае любой статистической модели, важно проверить допущения модели GAM. Остаточные участки следует исследовать так же, как и для любого GLM. То есть остатки отклонения (или другие стандартизированные остатки) должны быть исследованы на предмет закономерностей, которые могут указывать на существенное нарушение предположений о независимости или средней дисперсии модели. Обычно это включает построение стандартизованных остатков в сравнении с подобранными значениями и ковариатами для поиска проблем средней дисперсии или отсутствующего шаблона, а также может включать изучение коррелограмм (ACF) и / или вариограмм остатки проверить на нарушение независимости. Если модельное отношение среднего отклонения верное, то масштабированные остатки должны иметь примерно постоянную дисперсию. Обратите внимание, что, поскольку GLM и GAM могут быть оценены с использованием квази-правдоподобия, отсюда следует, что детали распределения остатков за пределами отношения среднего отклонения имеют относительно второстепенное значение.

Одна проблема, которая более характерна для GAM, чем для других GLM, - это опасность ошибочного заключения о том, что данные не завышены. Сложность возникает, когда данные содержат много нулей, которые могут быть смоделированы пуассоновским или биномиальным уравнением с очень низким ожидаемым значением: гибкость структуры GAM часто позволяет представить очень низкое среднее значение по некоторой области ковариантного пространства, но распределение стандартизованные остатки не будут иметь ничего общего с приблизительной нормальностью, которой нас учат вводные классы GLM, даже если модель совершенно верна.

Еще одна дополнительная проверка, которую вводят GAM, - это необходимость проверки того, что степени свобода выбора уместна. Это особенно актуально при использовании методов, которые не позволяют автоматически оценивать гладкость компонентов модели. При использовании методов с автоматическим выбором параметров сглаживания все же необходимо проверить, что выбор размерности базиса не был строго малым, хотя, если эффективные степени свободы оценки члена комфортно ниже его размерности базиса, то это маловероятно. В любом случае проверка fj (xj) {\ displaystyle f_ {j} (x_ {j})}{\displaystyle f_{j}(x_{j})}основана на изучении шаблона в остатках по отношению к xj {\ displaystyle x_ {j}}x_{j}. Это можно сделать с помощью частичных остатков, наложенных на график f ^ j (xj) {\ displaystyle {\ hat {f}} _ {j} (x_ {j})}{\displaystyle {\hat {f}}_{j}(x_{j})}, или использование перестановки остатков для построения тестов для остаточного паттерна (как в функции `gam.check 'в пакете R` mgcv').

Выбор модели

Когда параметры сглаживания оцениваются как часть подгонки модели, тогда большая часть того, что традиционно считалось бы выбором модели, было поглощено в процессе подбора: оценка параметров сглаживания уже была выбрана между богатое семейство моделей разной функциональной сложности. Однако оценка параметра сглаживания обычно не удаляет сглаживающий член из модели в целом, потому что большинство штрафов оставляют некоторые функции без штрафных санкций (например, прямые линии не наказываются штрафом за производную сплайна, приведенным выше). Таким образом, остается вопрос, должен ли термин вообще присутствовать в модели. Один из простых подходов к этой проблеме - добавить дополнительный штраф к каждому члену сглаживания в GAM, который штрафует компоненты сглаживания, которые в противном случае не были бы наказаны (и только те). У каждого дополнительного штрафа есть свой параметр сглаживания, и затем оценка продолжается, как и раньше, но теперь с возможностью, что члены будут полностью обнулены. В условиях большой размерности может иметь смысл попытаться выполнить эту задачу с помощью Лассо (статистика) или Упругая чистая регуляризация. Повышение также выполняет автоматический выбор терминов как часть подгонки.

Альтернативой является использование традиционных методов ступенчатой ​​регрессии для выбора модели. Это также метод по умолчанию, когда параметры сглаживания не оцениваются как часть подгонки, и в этом случае каждый член сглаживания обычно может принимать один из небольшого набора предопределенных уровней сглаживания в модели, и они выбираются между пошаговая мода. Пошаговые методы работают путем итеративного сравнения моделей с конкретными модельными терминами или без них (или, возможно, с разными уровнями сложности терминов) и требуют мер соответствия модели или значимости терминов, чтобы решить, какую модель выбрать на каждом этапе. Например, мы можем использовать p-значения для проверки каждого члена на равенство нулю, чтобы принять решение о возможных условиях для удаления из модели, и мы можем сравнить информационный критерий Акаике (AIC) значения для альтернативных моделей.

Вычисление P-значения для сглаживания непросто из-за эффектов штрафов, но приближения доступны. AIC можно рассчитать двумя способами для GAM. Предельный AIC основан на предельном правдоподобии (см. Выше) с интегрированными коэффициентами модели. В этом случае штраф AIC основан на количестве параметров сглаживания (и любых параметров дисперсии) в модели. Однако из-за хорошо известного факта, что REML несопоставим между моделями с различными структурами фиксированных эффектов, мы обычно не можем использовать такой AIC для сравнения моделей с разными гладкими членами (поскольку их компоненты без штрафных санкций действуют как фиксированные эффекты). Возможно основание AIC на предельной вероятности, в которой интегрируются только штрафные эффекты (количество не штрафованных коэффициентов теперь добавляется к количеству параметров для штрафа AIC), но эта версия предельной вероятности страдает от тенденции к чрезмерная гладкость, которая послужила исходной мотивацией для разработки REML. Учитывая эти проблемы, GAM часто сравнивают с использованием условного AIC, в котором правдоподобие модели (не предельное правдоподобие) используется в AIC, а количество параметров принимается в качестве эффективных степеней свободы модели.

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

Предостережения

Переобучение может быть проблемой для GAM, особенно если имеется немоделированная остаточная автокорреляция или немоделированная избыточная дисперсия. Перекрестная проверка может использоваться для обнаружения и / или уменьшения проблем переобучения с помощью GAM (или других статистических методов), а программное обеспечение часто позволяет повысить уровень штрафов, чтобы добиться более плавного соответствия. Оценка очень большого количества параметров сглаживания также, вероятно, будет статистически сложной, и есть известные тенденции для критериев ошибки прогнозирования (GCV, AIC и т. Д.), Которые иногда существенно недосглаживаются, особенно при умеренных размерах выборки, при этом REML несколько менее проблематичен в этом случае.

В соответствующих случаях более простые модели, такие как GLM, могут быть предпочтительнее GAM, если только GAM существенно не улучшают прогностическую способность (в наборах проверки) для рассматриваемого приложения.

See also
References
External links
Последняя правка сделана 2021-05-21 14:48:44
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте