I have a random forest being trained with n vectors each with m variables. Each variable has a cost based on how much time it takes to compute it (m1 might take 1 unit while m2 might take 100, making it more "expensive").

As far as I understand, random forests can give you the contribution each variable make to the whole forest.

My variables are not independent, so there is some correlation between some of them.

What is the correct way to determine the variable importance of the variables making consideration of their cost?


If you have correlated variables then you may want to consider using something like the party package for growing your random forests. The original random forest method is biased towards correlated variables, so you may get an incorrect estimate of the importance of some variables.

As for incorporating the cost of calculation into the variable importance, neither the original Fortran nor the R translation of it allow something like that to be done. My only suggestion would be to alter the code yourself to discount the permuted error rate (or the Gini impurity if you use that approach) that is used to determine the variable importance.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.