Адаптивна GAM згладжує в мгц


9

Книга Саймона Вуда про GAM та пов'язаний з ним пакет Rc mgcv є дуже детальними та інформативними, коли мова йде про теорію GAM та пристосування моделі до реальних та імітованих даних.

Що стосується 1D гладких, насправді не варто турбуватися, окрім того, як вирішити, чи реалізовувати циклічні та адаптивні основні функції, які можуть давати дуже різні результати прогнозування порівняно з кубічними, тонкопластинними та P-сплайнованими гладкими, тому що в у адаптивному випадку, кілька GAM встановлюються в різні регіони вздовж сплайну. Наскільки я можу сказати, циклічні основи є загальними при моделюванні часових рядів, тоді як адаптивне згладжування слід враховувати, коли дані сильно різняться стосовно змінної відповіді; однак адаптивну гладку слід застосовувати "скупо і обережно".

Я вже деякий час досліджую ігри, і, враховуючи моє дослідницьке запитання, я вважаю, що сильно змінюю свою думку, коли справа доходить до того, який гладкий втілити. mgcv включає 17 різних гладких на вибір (на мій перелік). Я розглядав як кубічні, так і P-сплайнові гладкі.

Моє питання зараз : коли слід розглядати адаптивну гладку над неадаптованими аналогами, якщо кінцева мета полягає у використанні пристосованих GAM для цілей прогнозування? Для своїх цілей я дотримуюся критерію гладкості GCV за замовчуванням, навіть якщо він має тенденцію до недостатнього згладжування.

Література зростає в застосованих екологічних ГАМ, але я ще не стикався з дослідженням, яке реалізує адаптивну програму.

Будь-яка порада цінується.

Відповіді:


20

Більшість додаткових згладжувань у наборі інструментів mgcv дійсно є для спеціалізованих програм - їх можна значною мірою проігнорувати для загальних GAM, особливо однозначних гладких (вам не потрібен сплайн випадкового ефекту, сплайн на сферу, випадкове поле Маркова, або мильнішою плівкою більш гладкою, якщо у вас є однозначні дані, наприклад.)

Якщо ви можете нести вартість установки, використовуйте тонкопластинні регресійні сплайси (TPRS).

Ці сплайни є оптимальними в сенсі асимптотичного MSE, але потребують однієї базової функції на спостереження. Те, що Саймон робить у mgcv, - це генерувати низькорозрядну версію стандартного TPRS, беручи повну основу TPRS і піддаючи її ейгендекомпозиції. Це створює нову основу, коли перша kфункція бази в новому просторі зберігає більшу частину сигналу в початковій основі, але в набагато меншій кількості базових функцій. Ось як mgcv вдається отримати TPRS, який використовує лише певну кількість базових функцій, а не одну за спостереження. Цей ейгендекомпозиція зберігає більшу частину оптимальності класичної бази TPRS, але при значних обчислювальних зусиллях для великих наборів даних.

Якщо ви не можете нести вартість установки TPRS, використовуйте кубічні регресійні сплайси (CRS)

Це швидка основа для генерування, а отже, підходить для проблем з великою кількістю даних. Однак на основі вузлів, тому певній мірі користувачеві зараз потрібно вибрати, куди ці вузли слід розмістити. Для більшості проблем мало що можна отримати, вийшовши за межі місця розташування вузлів за замовчуванням (на межі даних і рівномірно розподілених між ними), але якщо ви маєте особливо нерівномірний вибірку за діапазоном коваріату, ви можете вибрати розміщення вузлів наприклад, рівномірно розміщені квантові зразки коваріату, наприклад.

Кожна інша гладка в mgcv є спеціальною, вона використовується там, де потрібно ізотропних гладких або двох або більше коваріатів, або для просторового згладжування, або для здійснення усадки, або випадкових ефектів і випадкових сплайнів, або там, де коваріати циклічні, або вигідність змінюється ареал коваріату. Ви тільки повинні ризикувати далеко в гладку панель інструментів , якщо у вас є проблема , яка вимагає спеціальної обробки.

Усадка

Існують версії усадки як для TPRS, так і для CRS в мгкв . Вони реалізують сплайн, де ідеально гладка частина основи також підлягає штрафу гладкості. Це дозволяє процесу вибору гладкості зменшити плавну спинку за межами навіть лінійної функції по суті до нуля. Це дозволяє штрафу гладкості також виконувати вибір функції.

Сплайни Дюхона, P сплайни та B сплайни

Ці сплайни доступні для спеціалізованих додатків, де потрібно вказати базовий порядок та штрафний наказ окремо. Дюхонські сплайни узагальнюють TPRS. У мене складається враження, що P сплайни були додані до mgcv, щоб дозволити порівняння з іншими пеніалізованими підходами, заснованими на ймовірності, і тому, що вони є сплайнами, які використовували Eilers & Marx у своєму документі 1996 р., Який спричинив багато подальших робіт у GAM. Р сплайни також корисні як основа для інших сплайнів, як сплайни з обмеженнями форми та адаптивні сплайни.

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

Циклічні сплайни

Якщо діапазон значень для коварианта можна вважати кругом, де кінцеві точки діапазону насправді повинні бути еквівалентними (місяць чи день року, кут руху, аспект, напрямок вітру), це обмеження може бути накладено на основа. Якщо у вас такі коваріати, то має сенс нав'язувати це обмеження.

Адаптивні плавніші

Замість того, щоб розміщувати окрему ГАМ на ділянках коваріату, адаптивні сплайни використовують зважену штрафну матрицю, де ваги дозволяють плавно змінюватись в межах діапазону коваріату. Наприклад, для сплайнів TPRS і CRS вони передбачають однаковий ступінь гладкості в межах діапазону коваріату. Якщо у вас є стосунки, коли це не так, то ви можете в кінцевому підсумку використовувати більше ступеня свободи, ніж очікувалося, щоб дозволити шпонку адаптуватися до неяскравих і неворухливих частин. Класичний приклад у згладжувальній літературі - це

library('ggplot2')
theme_set(theme_bw())
library('mgcv')
data(mcycle, package = 'MASS')
pdata <- with(mcycle,
              data.frame(times = seq(min(times), max(times), length = 500)))

ggplot(mcycle, aes(x = times, y = accel)) + geom_point()

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

Ці дані чітко демонструють періоди різної гладкості - фактично нульова для першої частини серії, партії під час удару, зменшуючи згодом.

якщо ми підходимо до цих даних стандартною GAM,

m1 <- gam(accel ~ s(times, k = 20), data = mcycle, method = 'REML')

ми отримуємо розумну форму, але є кілька додаткових хитрощів на початку та в кінці діапазону timesта використовуваного пристосування ~ 14 градусів свободи

plot(m1, scheme = 1, residuals = TRUE, pch= 16)

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

Для пристосування різної хитрості адаптивний сплайн використовує зважену штрафну матрицю, коли ваги плавно змінюються в залежності від коваріату. Тут я переробляю оригінальну модель з тим же базовим розміром (k = 20), але тепер у нас є 5 параметрів гладкості (за замовчуванням m = 5) замість 1 оригіналу.

m2 <- gam(accel ~ s(times, k = 20, bs = 'ad'), data = mcycle, method = 'REML')

Зауважте, що ця модель використовує набагато менший ступінь свободи (~ 8), а приталений гладкий на кінцях набагато менш хиткий, при цьому все ще в змозі адекватно помістити великі зміни прискорення голови під час удару.

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

Що насправді відбувається тут, це те, що сплайн має основу для гладкої та основу для штрафу (щоб вага не міг плавно змінюватися залежно від коваріату). За замовчуванням обидва ці P шліци, але ви також можете використовувати типи CRS базисні теж ( bsможе бути тільки один з 'ps', 'cr', 'cc', 'cs'.)

Як проілюстровано тут, вибір того, чи слід адаптуватися чи ні, насправді залежить від проблеми; якщо у вас є стосунки, для яких ви вважаєте, що функціональна форма є гладкою, але ступінь гладкості змінюється в межах діапазону коваріату у взаємозв'язку, то адаптивний сплайн може мати сенс. Якщо у вашій серії були періоди швидких змін та періоди низьких або поступових змін, це може свідчити про необхідність адаптації.


1
Дякую, Гевін! Це справді відмінна відповідь, яка, на мою думку, також допоможе іншим з таким же клопотом.
compbiostats

Для своєї проблеми я підходив до монотонної кривої, що збільшується, що з часом плато до горизонтальної асимптоти. На початку моєї кривої дані збільшуються досить швидко, перш ніж врешті-решт сповільнюються до асимптоти. У деяких випадках необхідна екстраполяція (близька / далека) поза діапазоном спостережуваних даних. Мої моделі дуже прості, але я розумію, що прогнози тут у кращому випадку спекулятивні.
compbiostats
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.