Podczas korzystania z naturalnych (tj. Ograniczonych) splajnów sześciennych, tworzone funkcje podstawowe są wysoce współliniowe, a po zastosowaniu w regresji wydają się generować bardzo wysokie statystyki VIF (współczynnik inflacji wariancji), sygnalizując wielokoliniowość. Czy rozważając przypadek modelu do celów prognozowania, jest to problem? Wydaje się, że zawsze tak będzie ze względu na charakter konstrukcji splajnu.
Oto przykład w 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
AKTUALIZACJA:
Dotarłem do doktora Harrella, autora pakietu Hmisc w R (i innych), i odpowiedział, że dopóki algorytm jest zbieżny (np. Regresja logistyczna), a standardowe błędy nie wybuchły (jak Maarten powiedział poniżej) - i model pasuje dobrze, najlepiej pokazany na zestawie testowym, wtedy nie ma problemu z tą kolinearnością.
Ponadto stwierdził (i znajduje się to na stronie 65 jego doskonałej książki Strategie modelowania regresji ), że kolinearność między zmiennymi skonstruowanymi w sposób algebraiczny, jak ograniczone splajny sześcienne, nie jest problemem, ponieważ wielokoliniowość ma znaczenie tylko wtedy, gdy ta kolinearność zmienia się z próbki na próbkę.
rcsgen
polecenie Stata używa ortogonalizatonu Gram-Schmidta)