Decision tree/regression tree, how does the algorithm chose a value for the root node?
4 views (last 30 days)
Show older comments
Decision tree/regression tree, how does the algorithm chose a value for the root node? I'm getting a seemingly random value that starts the split. It isn't the median in the dataset. How is Matlab choosing the beginning value? For example in the data, my Max value is 25, my min value is 3, the median is 8, but the tree is choosing a root node split of 11.5 when that value isn't even in the dataset. How is this number chosen?
0 Comments
Answers (1)
Raunak Gupta
on 7 Aug 2020
Hi,
In the documentation of fitctree (which is essentially a decision tree), the Node Splitting Rules are mentioned which clearly and in-detail talks about how a split is decided for a node. So basically, a weighted impurity is calculated for the current node and that decide where to put the split at. This impurity can be set from different options present in SplitCriterion Name-Value pair. You may look into the rules for through understanding about the splitting in decision trees.
Hope it clarifies.
2 Comments
Risyad Zaidan
on 15 Jul 2023
Sorry, have you find a way to know how fitctree chose the value for the decision tree node? Can it be done with manual calculation?
See Also
Categories
Find more on Classification Trees in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!