Details
-
Improvement
-
Status: Resolved
-
Critical
-
Resolution: Incomplete
-
None
-
None
Description
Improvement: communication
Currently, every level of a DecisionTree is trained in a distributed manner. However, at deeper levels in the tree, it is possible that a small set of training data will be matched with any given node. If the node’s training data can fit on one machine’s memory, it may be more efficient to shuffle the data and do local training for the rest of the subtree rooted at that node.
Note: It is possible that local training would become possible at different levels in different branches of the tree. There are multiple options for handling this case:
(1) Train in a distributed fashion until all remaining nodes can be trained locally. This would entail training multiple levels at once (locally).
(2) Train branches locally when possible, and interleave this with distributed training of the other branches.
Attachments
Issue Links
- Is contained by
-
SPARK-14045 DecisionTree improvement umbrella
- Resolved
- is related to
-
SPARK-14043 Remove restriction on maxDepth for decision trees
- Resolved
- links to