เมื่อใช้ลูกบาศก์ธรรมชาติ (เช่นถูก จำกัด ) Splines ฟังก์ชันพื้นฐานที่สร้างขึ้นนั้นมี collinear สูงและเมื่อใช้ในการถดถอยดูเหมือนจะสร้างสถิติ 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
UPDATE:
ฉันไปถึงดร. Harrell ผู้เขียนแพ็คเกจ Hmisc ใน R (และอื่น ๆ ) และเขาตอบว่าตราบใดที่อัลกอริทึมมาบรรจบกัน (เช่นการถดถอยโลจิสติก) และข้อผิดพลาดมาตรฐานยังไม่ระเบิด (ดังที่มาร์เทนกล่าวไว้ด้านล่าง) - และ รูปแบบเหมาะสมดีแสดงที่ดีที่สุดในชุดทดสอบแล้วไม่มีปัญหากับ collinearity นี้
นอกจากนี้เขากล่าวว่า (และนี่คือปัจจุบันในหน้า 65 ของหนังสือกลยุทธ์การสร้างแบบจำลองการถดถอยที่ยอดเยี่ยมของเขา) ที่ collinearity ระหว่างตัวแปรที่สร้างขึ้นในแฟชั่นเกี่ยวกับพีชคณิตเช่น splines ลูกบาศก์ที่ จำกัด ไม่ได้เป็นปัญหาที่เกิดขึ้น
rcsgen
คำสั่ง Stata ใช้ Gram-Schmidt orthogonalizaton)