..., dua (dari 20 variabel yang dipilih) sangat berkorelasi, dan dua lainnya sepenuhnya berkorelasi. Apakah ini normal? Bukankah seharusnya metode Boruta mengklasifikasikan salah satu dari keduanya sebagai tidak penting?
Ya itu normal. Boruta cenderung menemukan semua fitur yang relevan dengan variabel respons . Secara ketat, variabel prediktor dikatakan relevan dengan jika dan tidak independen secara kondisional diberikan beberapa variabel prediktor lain (atau tidak diberi apa-apa, yang hanya berarti bahwa dan tidak independen).yxsayayxsayayxsayay
Pertimbangkan contoh sederhana ini:
set.seed(666)
n <- 100
x1 <- rnorm(n)
x2 <- x1 + rnorm(n,sd=0.5)
x3 <- rnorm(n)
y <- x2 + rnorm(n)
Anda melihat bahwa , maka relevan dengan , karena dan tidak independen. Anda juga melihat bahwa dan kemudian tidak terlepas dari . Satu-satunya variabel yang tidak relevan dengan adalah , karena:y=x2+ kebisinganx2yyx2x2=x1+ kebisinganyx2yx3
- y dan bersifat independenx3
- y dan independen tergantung kondisi yang diberikanx3x1
- y dan adalah kondisi yang diberikan independenx3(x1,x2)
Kemudian Boruta menemukan hasil yang diharapkan:
> library(Boruta)
> Boruta(data.frame(x1,x2,x3), y)
Boruta performed 30 iterations in 2.395286 secs.
2 attributes confirmed important: x1, x2.
1 attributes confirmed unimportant: x3.
Ada korelasi tinggi antara dan , tetapi Boruta tidak keberatan tentang itu:x1x2
> cor(x1,x2)
[1] 0.896883