Чи є проблема з мультиколінеарністю та регресією сплайнів?


12

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

Ось приклад в R:

library(caret)
library(Hmisc)
library(car)
data(GermanCredit)

spl_mat<-rcspline.eval(GermanCredit$Amount,  nk=5, inclx=TRUE) #natural cubic splines with 5 knots

class<-ifelse(GermanCredit$Class=='Bad',1,0) #binary target variable
dat<-data.frame(cbind(spl_mat,class))

cor(spl_mat)

OUTPUT:
              x                              
    x 1.0000000 0.9386463 0.9270723 0.9109491
      0.9386463 1.0000000 0.9994380 0.9969515
      0.9270723 0.9994380 1.0000000 0.9989905
      0.9109491 0.9969515 0.9989905 1.0000000


mod<-glm(class~.,data=dat,family=binomial()) #model

vif(mod) #massively high

OUTPUT:
x         V2         V3         V4 
319.573 204655.833 415308.187  45042.675

ОНОВЛЕННЯ:

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

Крім того, він заявив (і це є на стор. 65 його чудової книги " Регресійне моделювання стратегій" ), що колінеарність між змінними, побудованими алгебраїчно, як обмежені кубічні сплайни, не є проблемою, оскільки мультиколінеарність має значення лише тоді, коли ця колінеарність змінюється від зразка до зразка.


1
Ви завжди можете ортогоналізувати згенеровані сплайни (наприклад, команда rcsgenStata використовує ортогоналізатор Грам-Шмідта)
boscovich

Відповіді:


7

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


Привіт Маартен, коли ви говорите про числові проблеми, чи відноситесь до конвергенції чи подібних? Якщо регресія на тестовому наборі сходилася і здається, що це добре, - ви укладаєте, що ситуація не проблема?
B_Miner

Якщо є чисельні проблеми, то відсутність конвергенції є вірогідним (але не необхідним) наслідком. Нереалістичні оцінки коефіцієнтів та / або нереально високі стандартні помилки - це інші можливі наслідки.
Maarten Buis

1
Такі методи, як QR-розкладання, дуже допомогли. Однак ви все ж можете зламати сучасне програмне забезпечення, це просто стало складніше.
Maarten Buis

1
Це може не бути проблемою. Але якщо є чисельна проблема, scale=TRUEаргумент деяких функцій підгонки в rmsпакеті R стандартизує всі стовпці перед встановленням та нестандартні коефіцієнти після встановлення таким чином, що користувачеві не потрібно враховувати.
Френк Харрелл

2
Не дивіться на індивідуальні коефіцієнти та стандартні помилки так сильно. Подивіться на всю приталену криву.
Френк Харрелл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.