Successfully reported this slideshow.
Upcoming SlideShare
×

A General Framework for Accurate and Fast Regression by Data Summarization in Random Decision Trees

736 views

Published on

Published in: Technology
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

A General Framework for Accurate and Fast Regression by Data Summarization in Random Decision Trees

1. 1. A General Framework for Fast and Accurate Regression by Data Summarization in Random Decision Trees Wei Fan, IBM T.J.Watson Joe McCloskey, US Department of Defense Philip Yu, IBM T.J.Watson
2. 2. Three DM Problems <ul><li>Classification: </li></ul><ul><ul><li>Label: given set of labels in training data. </li></ul></ul><ul><li>Probability Estimation: </li></ul><ul><ul><li>Similar to the above setting: estimate the probability that x is an example of class y. </li></ul></ul><ul><ul><li>Difference: no truth is given, i.e., no true probability </li></ul></ul><ul><li>Regression: </li></ul><ul><ul><li>Target value: continuous values. </li></ul></ul>
3. 3. Model Approximation <ul><li>True model or correct model. </li></ul><ul><ul><li>Generates y for each x with probability P(y|x). </li></ul></ul><ul><ul><li>Normally never known in reality. </li></ul></ul><ul><li>Perfect model: never makes mistakes or has the same prediction as the true model. </li></ul><ul><li>Not always possible due to: </li></ul><ul><ul><li>Stochastic nature of the problem </li></ul></ul><ul><ul><li>Noise in training data </li></ul></ul><ul><ul><li>Data is insufficient </li></ul></ul>
4. 4. Optimal Model <ul><li>Loss function L(t,y) to evaluate performance. </li></ul><ul><ul><li>Optimal decision decision y* is the label that minimizes expected loss when x is sampled repeatedly: </li></ul></ul><ul><li>Examples </li></ul><ul><ul><li>0-1 loss: y* is the label that appears the most often, i.e., if P(fraud|x) > 0.5, predict fraud </li></ul></ul><ul><ul><li>cost-sensitive loss: the label that minimizes the “empirical risk”. </li></ul></ul><ul><ul><ul><li>If P(fraud|x) * \$1000 > \$90 or p(fraud|x) > 0.09, predict fraud </li></ul></ul></ul><ul><ul><li>MSE or mean square error: predict average </li></ul></ul>
5. 5. How we look for optimal models? <ul><li>Don’t impose “exact forms”: </li></ul><ul><ul><li>Decision Trees, Classification based on Association rules, Production rules </li></ul></ul><ul><ul><li>Learner estimate structure as well as parameters </li></ul></ul><ul><ul><li>NP-hard for most “model representation” </li></ul></ul><ul><li>Impose “exact forms”: </li></ul><ul><ul><li>logistic regression functions, linear regression model, etc </li></ul></ul><ul><ul><li>Learners estimate parameter ONLY. Structure is pre-fixed </li></ul></ul><ul><li>Inductive Bias. </li></ul><ul><ul><li>Decision tree is rather flexible, efficient yet powerful representation. </li></ul></ul>
6. 6. Consider Decision Tree <ul><li>Compromise between accuracy and model complexity </li></ul><ul><ul><li>We think that simplest -structured hypothesis that fits the data is the best. </li></ul></ul><ul><li>We employ all kinds of heuristics to look for it. </li></ul><ul><ul><li>info gain, gini index, Kearns-Mansour, etc </li></ul></ul><ul><ul><li>pruning: MDL pruning, reduced error-pruning, cost-based pruning. </li></ul></ul><ul><li>Reality: tractable, but still pretty expensive </li></ul><ul><li>Truth: none of purity check functions guarantee accuracy over testing data. </li></ul>
7. 7. Random Decision Tree - classification, regression, probability estimation <ul><li>Key characteristics: </li></ul><ul><ul><li>Structure is randomly picked. </li></ul></ul><ul><ul><li>Statistics are summarized from training data. </li></ul></ul><ul><li>At each node, an un-used feature is chosen randomly </li></ul><ul><ul><li>A discrete feature is un-used if it has never been chosen previously on a given decision path starting from the root to the current node. </li></ul></ul><ul><ul><li>A continuous feature can be chosen multiple times on the same decision path, but each time a different threshold value is chosen </li></ul></ul>
8. 8. Continued <ul><li>We stop when one of the following happens: </li></ul><ul><ul><li>A node becomes too small. </li></ul></ul><ul><ul><li>Or the total height of the tree exceeds some limits: </li></ul></ul><ul><ul><ul><li>Such as the total number of features. </li></ul></ul></ul>
9. 9. Node Statistics <ul><li>Classification and Probability Estimation: </li></ul><ul><ul><li>Each node of the tree keeps the number of examples belonging to each class. </li></ul></ul><ul><li>Regression: </li></ul><ul><ul><li>Each node of the tree keeps the mean value of examples sorted into the node </li></ul></ul>
10. 10. Classification/Prob Estimatimation <ul><li>During classification, each tree outputs posterior probability: </li></ul>P(P1|x)=0.3 B1 < 0.5 Y B2 > 0.7 B1 > 0.3 P1: 200 P2: 10 N Y N P1: 30 P2: 70 Y … …
11. 11. Regression <ul><li>During classification, each tree average value of training examples that falls within each node </li></ul>Age >30 Y Capt> 70% Edu=PhD Avg AGI=100K N Y N Avg AGI=150K Y … …
12. 12. Classification <ul><li>The prediction from multiple random trees are averaged as the final output. </li></ul><ul><li>Classification: loss function is needed. </li></ul>
13. 13. A few words about some of its advantage <ul><li>Training can be very efficient. Particularly true for very large datasets. </li></ul><ul><li>Natural multi-class probability. </li></ul><ul><li>Natural multi-label classification and probability estimation. </li></ul><ul><li>Imposes very little about the structures of the model. </li></ul>
14. 14. Number of trees <ul><li>Sampling theory: </li></ul><ul><ul><li>The random decision tree can be thought as sampling from a large (infinite when continuous features exist) population of trees. </li></ul></ul><ul><ul><li>Unless the data is highly skewed, 30 to 50 gives pretty good estimate with reasonably small variance . In most cases, 10 are usually enough. </li></ul></ul><ul><li>Worst scenario </li></ul><ul><ul><li>Only one feature is relevant. All the rest are noise. </li></ul></ul><ul><ul><li>Probability: </li></ul></ul><ul><li>Variance Deduction: </li></ul>
15. 15. Donation Dataset - classification and prob estimation <ul><li>Decide whom to send charity solicitation letter. </li></ul><ul><li>It costs \$0.68 to send a letter. </li></ul><ul><li>Loss function </li></ul>
16. 16. Result
17. 17. Credit Card Fraud -classification and prob estimation <ul><li>Detect if a transaction is a fraud </li></ul><ul><li>There is an overhead to detect a fraud, {\$60, \$70, \$80, \$90} </li></ul><ul><li>Loss Function </li></ul>
18. 18. Result
19. 19. Comparing with Boosting <ul><li>Don’t handle multi-class problems naturally, ECOC </li></ul><ul><li>Do not output probabilities. </li></ul><ul><li>Inefficient. </li></ul><ul><li>Boosting rounds is tricky. Sometimes, more rounds can lead to overfitting. </li></ul><ul><li>Inefficient. </li></ul><ul><li>Implementation needs careful numerical manipulation. </li></ul>
20. 20. Comparing with Bagging <ul><li>Could be very inefficient particularly for very large dataset </li></ul><ul><ul><li>i.e., bootstrap sampling needs linear scan of the data. </li></ul></ul><ul><li>Do not output reliable probabilities. </li></ul>
21. 21. Probability Estimation
22. 22. Probability Estimation
23. 23. Overfitting
24. 24. Non-overfitting of RDT
25. 25. Selectivity
26. 26. Tolerance to data insufficiency
27. 27. GUIDE MLR y = a+a1*x1+a2*x2 + … ak*xk Age >30 Y Capt> 70% Edu=PhD MLR N Y N MLR Y … …
28. 28. Regression: single independent variable
29. 29. RDT
30. 30. Depend on combination of 5 independent variables
31. 31. RDT
32. 32. It grows like …
33. 33. Comparing with GUIDE <ul><li>Need to decide grouping variables and independent variables. A non-trivial task. </li></ul><ul><li>If all variables are categorical, GUIDE becomes a single CART regression tree. </li></ul><ul><li>Strong assumption and greedy-based search. Sometimes, can lead to very unexpected results, like the one given earlier </li></ul>
34. 34. Conclusion <ul><li>Imposing a particular form of model is not a good idea to train highly-accurate models. </li></ul><ul><li>It may not even be efficient for some forms of models. </li></ul><ul><li>RDT has been show to solve all three major problems in data mining, classification, probability estimation and regressions, simply, efficiently and accurately. </li></ul>
35. 35. Selected Bibliography of RDT <ul><li>ICDM’03: “Is random model better? On its accuracy and efficiency” (Fan, Wang, Yu and Ma) </li></ul><ul><li>AAAI’04: “On the Optimality of Posterior Probability Estimation by Random Decision Tree” (Fan) </li></ul><ul><li>ICDM’05: “Effective Estimation of Posterior Probabilities: Explaining the Accuracy of Randomized Decision Tree Approaches” (Fan, Greengrass, McCloskey, Yu, and Drummey) </li></ul><ul><li>ICDM’05: “Learning through Changes: An Empirical Study of Dynamic Behaviors of Probability Estimation Trees” (Zhang, Buckles, Peng, and Xu) </li></ul><ul><li>Master Thesis by Tony Liu, supervised by Kai Ming Ting, “The Utility of Randomness in Decision Tree Construction”, Monash University, 2005 </li></ul><ul><li>KDD’06: “A General Framework for Fast and Accurate Regression by Data Summarization in Random Decision Trees” </li></ul>