How is predictor importance for classification trees calculated?

2 visualizzazioni (ultimi 30 giorni)
I am using MATLAB's function:
predictorImportance
to evaluate the usefulness of features I am extracting from 360° images.
I don't fully understand how predictor importance estimates are calculated and was hoping for a mathematical explanation for the algorithm used.
I have read the MATLAB documentation on this, however, I am unsure about a few things.
Firstly, what is risk? I have assumed it to be the impurity reduction if using the Gini index as the splitting criterion.
Secondly, what does "his sum is taken over best splits found at each branch node" when surrogate splits aren't used.
Finally, I don't understand why the estimates change when you reorder the columns in the feature matrix.
Thank you in advance to anyone able to shed light on this for me.

Risposte (1)

Gaurav Garg
Gaurav Garg il 27 Gen 2021
Hi Ryan,
Yes, risk means impurity reduction if using the Gini index as the splitting criterion. You can also give 'twoing' or 'deviance' as split criterions by following the doc here.
To know about why the estimates change when you reorder columns, you can go through the doc here to understand the algorithm involved behind selections of nodes and splitting of each branch node.
  1 Commento
Ryan Jones
Ryan Jones il 9 Apr 2021
Hi Gaurav,
Thanks for the reply and I have now seen the documentation explaining predictor importance has been updated. It is a lot clear, thank you.
However, I still don't understand why estimates change when you reorder the columns. I have read the doc here on node splitting rules. To my understanding, the only step in the algorithm that is affected by the order of the columns is step 3 where the columns are ordered in ascending order (in terms of column indices I assume). However, I don't see how the order matters anyway because the purity gain in step 4 is calculated for all features (columns) and the one chosen for the split is the one with the greatest purity gain. So the order shouldn't matter as all columns are considered in step 4 anyway.
I hope my misunderstanding is clear and thank you in advance for your help.

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by