What algorithm does Decision Tree used in Rapidminer?

johnny5550822johnny5550822 Member Posts: 12 Contributor II
edited June 2019 in Help
Hi all,

What kind of Decision tree algorithm does Rapidminer used? Does it take care of imbalanced data?

Thanks!
Johnny

Answers

  • frasfras Member Posts: 93 Contributor II
    If you have strongly imbalanced data do not use a decision tree.
    In general, exploring your data with a decision tree is a good idea, applying the model
    on unseen data not always.
    You may preprocess your data by applying the operator "Sample (Bootstrapping)"
    but you should switch off preprocessing in the testing step.
    For further documentation please refer to the documentation of the decision tree operator.
  • johnny5550822johnny5550822 Member Posts: 12 Contributor II
    thanks for your reply. Because I know there are algorithm out there which solved imbalance problem (for decision tree), and I am not sure about the version that decision tree is using in rapidminer. Like C4.5 or something else?
  • MariusHelfMariusHelf RapidMiner Certified Expert, Member Posts: 1,869 Unicorn
    Hi,

    I am not sure which implementation the RapidMiner decision tree is using, I suppose something similar to C4.5. If you want to make sure to use C4.5 you can use W-J48 from the Weka Extension. That operator is a free implementation of C4.5.

    Best regards,
    Marius
  • johnny5550822johnny5550822 Member Posts: 12 Contributor II
    Great, thanks a lot!
  • fmonfmon Member Posts: 7 Contributor II
    I suppose based on the criterion you use in the parameter setting of decision tree operator ,the RM produces a different tree using a different algorithm like c4.5.
    Am I right?
    If anyone has any information please share it here.
    thanks
  • MariusHelfMariusHelf RapidMiner Certified Expert, Member Posts: 1,869 Unicorn
    Hi,

    the algorithm stays the same, no matter which criterion you choose. Only in each node the "best" attribute for splitting is selected using  a different method, depending on the parameter setting.

    Best regards,
    Marius
  • fmonfmon Member Posts: 7 Contributor II
    Hi,
    Thank you for your helpful answer.
    So who knows what is the algorithm used by the operator "Decision Tree" to produce a decision tree?
  • MariusHelfMariusHelf RapidMiner Certified Expert, Member Posts: 1,869 Unicorn
    Well, as I said, it's similar to C4.5. In each node the split attribute is chosen by iterating all attributes, finding the best split for each attribute with respect to the splitting criterion, and then using the attribute that maximizes the chosen criterion.

    For nominal attributes always one branch for each value is created. For numerical/date attributes always a binary split is performed. To find the best split value all possible values in the training data are tried.

    The procedure is repeated until you have pure leaves or one of the pre-pruning conditions is met. Then optionally some post-pruning is applied.

    Best regards,
    Marius
  • fmonfmon Member Posts: 7 Contributor II
    Thanks,
    I wanted to make myself sure!
Sign In or Register to comment.