... sind zwei (von den 20 ausgewählten Variablen) stark korreliert und zwei andere sind vollständig korreliert. Ist das normal? Sollte die Boruta-Methode nicht eine der beiden als unwichtig eingestuft haben?
Ja, das ist normal. Boruta neigt dazu, alle Merkmale zu finden, die für die Antwortvariable relevant sind . Streng genommen gilt eine Prädiktorvariable als relevant für wenn und bei einigen anderen Prädiktorvariablen nicht bedingt unabhängig sind (oder wenn nichts gegeben ist, was einfach bedeuten würde, dass und nicht unabhängig sind).x i y x i y x i yyxichyxichyxichy
Betrachten Sie dieses einfache Beispiel:
set.seed(666)
n <- 100
x1 <- rnorm(n)
x2 <- x1 + rnorm(n,sd=0.5)
x3 <- rnorm(n)
y <- x2 + rnorm(n)
Sie sehen, dass , dann ist für relevant , weil und nicht unabhängig sind. Sie sehen auch, dass und dann nicht unabhängig von . Die einzige Variable, die für nicht relevant ist, ist , weil:x 2 y y x 2 x 2 = x 1 + Rauschen y x 2 y x 3y= x2+ Lärmx2yyx2x2= x1+ Lärmyx2yx3
- x 3y und sind unabhängigx3
- x 3 x 1y und sind bei bedingt unabhängigx3x1
- x 3 ( x 1 , x 2 )y und sind bedingt unabhängig gegebenx3( x1, x2)
Dann findet Boruta das erwartete Ergebnis:
> 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.
Es gibt eine hohe Korrelation zwischen und , aber Boruta macht das nichts aus:x 2x1x2
> cor(x1,x2)
[1] 0.896883
Ja, das ist normal. Der Boruta-Algorithmus gibt Attribute aus, die für den Klassifizierer keinen Wert haben, und lässt die 'allrelevante' Menge von Attributen übrig, die durchaus korrelierte enthalten können. Vergleichen Sie dies mit dem 'minimal-optimalen' Satz (der keine Korrelation enthalten sollte).
Warum sollte man diese Methode dann für die Merkmalsauswahl verwenden? Sie können dieses Zitat aus dem Originalpapier nützlich finden:
Wenn Ihr primäres Ziel darin besteht, die kausalen Zusammenhänge zwischen den Prädiktoren und den Ergebnissen zu verstehen, kann die Berücksichtigung nur des optimalen Satzes von Variablen Sie in die Irre führen und Sie müssen den alles relevanten Satz studieren.
Wenn Sie jedoch ein effizientes Modell suchen, das passt, ist es besser, das minimal-optimale Set zu verwenden.
quelle